Windows Azure Storage
Eintrag zuletzt aktualisiert am: 19.03.2013
Autor: Manfred Steyer am 19.03.2013 19:12:55:
Windows Azure Storage Services stellt eine hochskalierbare Plattform für das Verwalten nicht-relationaler Daten dar und ist somit im Bereich der
NoSQL-Datenspeicher einzuordnen. Pro Speicherkonto können bis zu 100 TB an Daten gespeichert werden und jeder Benutzer kann beliebig viele Speicherkonten besitzen.
Storage Services werden über eine
REST-Schnittstelle angesprochen. Daneben existieren
SDKs für verschiedene Plattformen, wie
.NET, JAVA oder
PHP, welche sich auf diese
REST-Schnittstelle abstützen. Standardmäßig werden sämtliche gespeicherten Daten in dreifacher Ausführung gespeichert und eine Replikation zu einem Rechenzentrum, welches sich am selben Kontinent, wie das ausgewählte, befindet, durchgeführt (Geo-Replication).
Die
Storage Services gliedern sich in die folgenden Dienste:
Der
BLOB Storage erlaubt das Speichern von unstrukturierten großen binären Daten (binary large objects). Xdrive gibt dem Benutzer die Möglichkeit, Laufwerke innerhalb von
BLOBs zu mounten.
Der Table
Storage nimmt tabellarische Daten auf. Im Gegensatz zu relationalen
Datenbanken weisen hier Tabellen kein fixes Schema auf und Konzepte, wie Fremdschlüssel oder verteilte
Transaktionen, stehen nicht zur Verfügung. Die Indizierung der Tabellen erfolgt anhand zwei vorgegebener Spalten, d. H. die Daten müssen tlw. Redundant in Hinblick auf die zu erwartenden Abfragen abgelegt werden. Diesen Nachteilen steht die Tatsache, dass Table
Storage die verwalteten Tabellen transparent skaliert, gegenüber. Im Gegensatz dazu kann der Entwickler beim Einsatz von
SQL Azure zur Skalierung zwar auf
Sharding unter Verwendung von
SQL Azure Federations zurückgreifen. Hierbei ist jedoch zu beachten, dass dies aus Sicht der Anwendung sowie aus Sicht des Entwicklers nicht transparent ist.
Die von
Storage Services gebotenen Queues bieten eine einfache Implementierung von Nachrichtenwartesc