Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Lorsque vous créez des applications pour travailler avec des ressources de données dans stockage Blob Azure, votre code interagit principalement avec trois types de ressources : comptes de stockage, conteneurs et objets blob. Cet article explique ces types de ressources et montre comment ils se rapportent les uns aux autres. Il montre également comment le code d’application utilise les bibliothèques clientes Stockage Blob Azure pour interagir avec ces différentes ressources.
Types de ressources Stockage Blob
Les bibliothèques clientes Stockage Blob Azure vous permettent d’interagir avec trois types de ressources dans le service de stockage :
Le diagramme suivant montre la relation entre ces ressources :
Comptes de stockage
Un compte de stockage fournit un espace de noms unique dans Azure pour vos données. Chaque objet que vous stockez dans Stockage Azure a une adresse qui inclut le nom de votre compte unique. La combinaison du nom du compte et du point de terminaison stockage Blob forme l’adresse de base des objets de votre compte de stockage.
Par exemple, si votre compte de stockage est nommé sampleaccount, le point de terminaison par défaut du stockage Blob est :
https://sampleaccount.blob.core.windows.net
Pour en savoir plus sur les types de comptes de stockage, consultez la vue d’ensemble du compte de stockage Azure.
Conteneurs
Un conteneur organise un ensemble d’objets blob, similaire à un répertoire dans un système de fichiers. Un compte de stockage peut inclure un nombre illimité de conteneurs, et un conteneur peut stocker un nombre illimité de blobs.
L’URI d’un conteneur est similaire à :
https://sampleaccount.blob.core.windows.net/sample-container
Pour plus d’informations sur l’affectation de noms aux conteneurs, consultez Affectation de noms et référencement de conteneurs, d’objets blob et de métadonnées.
Objets blob
Le stockage Azure prend en charge trois types de fichiers blob :
- Les blobs de blocs stockent des données texte et binaires. Les blobs à blocs sont composés de blocs de données qui peuvent être gérés individuellement. Les objets blob de blocs peuvent stocker jusqu’à environ 190,7 Tio.
- Les objets blob d’ajout se composent de blocs, comme les objets blob de blocs, mais sont optimisés pour les opérations d’ajout. Les blobs d'ajout sont idéaux pour des scénarios tels que la journalisation des données depuis des machines virtuelles.
- Les objets blob de pages stockent des fichiers à accès aléatoire d’une taille maximale de 8 Tio. Pour plus d’informations sur les objets blob de pages, consultez Vue d’ensemble des objets blob de pages Azure
Pour plus d’informations sur les différents types d’objets blob, consultez Présentation des objets blob de blocs, des objets blob d’ajout et des objets blob de pages.
L’URI d’un blob est similaire à :
https://sampleaccount.blob.core.windows.net/sample-container/sample-blob
Pour plus d’informations sur l’affectation de noms d’objets blob, consultez Affectation de noms et référencement de conteneurs, d’objets blob et de métadonnées.
Utiliser des ressources de données à l’aide du Kit de développement logiciel (SDK) Azure
Les Kits de développement logiciel (SDK) Azure contiennent des bibliothèques qui s’appuient sur l’API REST Azure, ce qui vous permet d’interagir avec les opérations d’API REST via des paradigmes de langage de programmation familiers. Les Kits de développement logiciel (SDK) sont conçus pour simplifier les interactions entre votre application et les ressources Azure.
Dans des scénarios rares, les applications qui ont été mises à jour vers la dernière version bêta ou la version généralement disponible du SDK peuvent recevoir un message d'erreur InvalidHeaderValue
. Ce problème peut survenir lors de l'utilisation de l'une des bibliothèques de stockage. Le message d'erreur ressemble à l'exemple suivant :
HTTP/1.1 400 The value for one of the HTTP headers is not in the correct format.
Content-Length: 328
Content-Type: application/xml
Server: Microsoft-HTTPAPI/2.0
x-ms-request-id: <REMOVED>
Date: Fri, 19 May 2023 17:10:33 GMT
<?xml version="1.0" encoding="utf-8"?>
<Error>
<Code>InvalidHeaderValue</Code>
<Message>
The value for one of the HTTP headers is not in the correct format.
RequestId:<REMOVED>
Time:2023-05-19T17:10:34.2972651Z
</Message>
<HeaderName>x-ms-version</HeaderName><HeaderValue>yyyy-mm-dd</HeaderValue>
</Error>
Si vous avez mis à niveau vers la dernière version bêta ou la version généralement disponible du SDK et que vous rencontrez cette erreur, il est recommandé de revenir à la version généralement disponible précédente du SDK pour voir si le problème se résout.
Vous pouvez afficher des détails spécifiques au KIT de développement logiciel (SDK) aux emplacements suivants :
Si le problème persiste, ou si la recommandation n'est pas réalisable, ouvrez un ticket de support pour explorer d'autres options.
Dans les bibliothèques clientes stockage Blob Azure, chaque type de ressource est représenté par une ou plusieurs classes associées. Ces classes fournissent des opérations pour travailler avec une ressource stockage Azure.
Le tableau ci-dessous répertorie les classes de base accompagnées d’une brève description :
Classe | Description |
---|---|
BlobServiceClient | Représente le compte de stockage et fournit des opérations pour récupérer et configurer les propriétés du compte, ainsi que pour utiliser des conteneurs d’objets blob dans le compte de stockage. |
BlobContainerClient | Représente un conteneur d’objets blob spécifique et fournit des opérations pour manipuler le conteneur et les objets blob qu'il contient. |
BlobClient | Représente un objet blob spécifique et fournit des opérations générales pour travailler avec l’objet blob, y compris les opérations de chargement, de téléchargement, de suppression et de création d’instantanés. |
AppendBlobClient | Représente un objet blob d’ajout et fournit des opérations spécifiques, telles que l’ajout de données de journal. |
BlockBlobClient | Représente un blob par blocs et fournit des opérations spécifiques aux blobs par blocs, telles que la préparation et la validation finale des blocs de données. |
Les packages suivants contiennent les classes qui servent à utiliser les ressources de données Stockage Blob :
- Azure.Storage.Blobs : contient les classes primaires (objets clients) que vous pouvez utiliser pour opérer sur le service, les conteneurs et les blobs.
- Azure.Storage.Blobs.Specialized : contient des classes que vous pouvez utiliser pour effectuer des opérations spécifiques sur un type de blob comme des blobs de blocs.
- Azure.Storage.Blobs.Models : ensemble des autres classes utilitaires, structures et types d’énumération.
Étapes suivantes
L’utilisation des ressources Azure à l’aide du Kit de développement logiciel (SDK) commence par la création d’une instance cliente. Pour en savoir plus sur la création et la gestion des objets clients, consultez Créer et gérer des objets clients qui interagissent avec les ressources de données.