Grundlegendes zur Interaktion von Apps mit Blob Storage-Datenressourcen
Wenn Sie Anwendungen für die Arbeit mit Datenressourcen in Azure Blob Storage erstellen, interagiert Ihr Code primär mit drei Ressourcentypen: Speicherkonten, Container und Blobs. In diesem Artikel werden diese Ressourcentypen erläutert und es wird gezeigt, wie sie miteinander in Beziehung stehen. Außerdem wird gezeigt, wie Anwendungscode die Azure Blob Storage-Clientbibliotheken verwendet, um mit diesen verschiedenen Ressourcen zu interagieren.
Blob Storage-Ressourcentypen
Mit den Azure Blob Storage-Clientbibliotheken können Sie mit drei Ressourcentypen im Speicherdienst interagieren:
Das folgende Diagramm zeigt die Beziehung zwischen diesen Ressourcen:
Speicherkonten
Ein Speicherkonto bietet einen eindeutigen Namespace für Ihre Daten in Azure. Jedes Objekt, das Sie in Azure speichern, besitzt eine Adresse, die den eindeutigen Namen Ihres Speicherkontos enthält. Die Kombination aus Kontoname und Blob Storage-Endpunkt bildet die Basisadresse für die Objekte in Ihrem Speicherkonto.
Wenn Ihr Speicherkonto beispielsweise sampleaccount heißt, dann ist der Standardendpunkt für Blob Storage folgender:
https://sampleaccount.blob.core.windows.net
Weitere Informationen zu Typen von Speicherkonten finden Sie in der Übersicht über Azure Storage-Konten.
Container
Ein Container dient zum Organisieren einer Gruppe von Blobs (ähnlich wie ein Verzeichnis in einem Dateisystem). Ein Speicherkonto kann eine unbegrenzte Anzahl von Containern enthalten, und in einem Container kann eine unbegrenzte Anzahl von Blobs gespeichert werden.
Der URI für einen Container ist ähnlich wie:
https://sampleaccount.blob.core.windows.net/sample-container
Weitere Informationen zur Benennung von Containern finden Sie unter Naming and Referencing Containers, Blobs, and Metadata (Benennen und Referenzieren von Containern, Blobs und Metadaten).
BLOBs
Azure Storage unterstützt drei Arten von Blobs:
- In Blockblobs werden Text- und Binärdaten gespeichert. Blockblobs bestehen aus Datenblöcken, die einzeln verwaltet werden können. Blockblobs können bis zu 190,7 TiB speichern.
- Anfügeblobs bestehen wie Blockblobs aus Blöcken, sind aber für Anfügevorgänge optimiert. Anfügeblobs sind beispielsweise ideal für Szenarien, bei denen es um das Protokollieren von Daten virtueller Computer geht.
- In Seitenblobs werden Random-Access-Dateien mit einer Größe von bis zu 8 TiB gespeichert. Weitere Informationen zu Seitenblobs finden Sie in der Übersicht über Azure-Seitenblobs.
Weitere Informationen zu den verschiedenen Blobtypen finden Sie unter Understanding Block Blobs, Append Blobs, and Page Blobs (Grundlegendes zu Block-, Anfüge- und Seitenblobs).
Der URI für ein BLOB ist ähnlich wie:
https://sampleaccount.blob.core.windows.net/sample-container/sample-blob
Weitere Informationen zur Benennung von Containern finden Sie unter Naming and Referencing Containers, Blobs, and Metadata (Benennen und Referenzieren von Containern, Blobs und Metadaten).
Arbeiten mit Datenressourcen mithilfe des Azure-SDK
Das Azure-SDK enthält Bibliotheken, die auf der Azure-REST-API basieren, und ermöglicht Ihnen so die Interaktion mit REST-API-Vorgängen über vertraute Programmiersprache-Paradigmen. Die SDKs wurden entwickelt, um Interaktionen zwischen Ihrer Anwendung und Azure-Ressourcen einfacher zu machen.
In den Azure Blob Storage-Clientbibliotheken wird jeder Ressourcentyp durch eine oder mehrere zugeordnete Klassen dargestellt. Diese Klassen stellen Vorgänge für die Arbeit mit einer Azure Storage-Ressource bereit.
In der folgenden Tabelle werden die grundlegenden Klassen zusammen mit einer kurzen Beschreibung aufgelistet:
Klasse | BESCHREIBUNG |
---|---|
BlobServiceClient | Stellt das Speicherkonto dar, und stellt Vorgänge zum Abrufen und Konfigurieren von Kontoeigenschaften und zum Arbeiten mit Blobcontainern im Speicherkonto bereit. |
BlobContainerClient | Stellt einen bestimmten Blobcontainer dar, und stellt Vorgänge zum Arbeiten mit dem Container und den darin enthaltenen Blobs bereit. |
BlobClient | Stellt ein bestimmtes Blob dar, und stellt allgemeine Vorgänge zum Arbeiten mit dem Blob bereit, einschließlich Vorgängen zum Hochladen, Herunterladen, Löschen und Erstellen von Momentaufnahmen. |
AppendBlobClient | Stellt ein Anfügeblob dar, und stellt spezifische Vorgänge für Anfügeblobs bereit, z. B. das Anfügen von Protokolldaten. |
BlockBlobClient | Stellt ein Blockblob dar, und stellt spezifische Vorgänge für Blockblobs bereit, z. B. Staging und anschließendes Committen von Datenblöcken. |
Die folgenden Pakete enthalten die Klassen, die für die Arbeit mit Blob Storage-Datenressourcen verwendet werden:
- Azure.Storage.Blobs: Enthält die primären Klassen (Clientobjekte), die Sie für den Betrieb mit dem Dienst, Containern und Blobs verwenden können.
- Azure.Storage.Blobs.Specialized: Enthält Klassen, die Sie zum Ausführen spezifischer Vorgänge für einen Blobtyp, z. B. Blockblobs, verwenden können.
- Azure.Storage.Blobs.Models: Alle anderen Hilfsklassen, Strukturen und Enumerationstypen.
Nächste Schritte
Das Arbeiten mit Azure-Ressourcen mithilfe des SDK beginnt mit dem Erstellen einer Clientinstanz. Weitere Informationen zur Erstellung und Verwaltung von Clientobjekten finden Sie unter Erstellen und Verwalten von Clientobjekten, die mit Datenressourcen interagieren.