Stockage Blob Azure
Il s’agit de la solution de stockage objet de Microsoft pour le cloud. Avant tout, le stockage Blob a pour vocation de stocker une quantité massive de données non structurées, telles que des données textuelles ou binaires.
Utilisations du stockage Blob :
- Il sert des images ou des documents directement à un navigateur.
- Il stocke les fichiers pour un accès distribué.
- On peut diffuser de la vidéo et de l’audio en utilisant le stockage en blob.
- Il facilite l’écriture dans les fichiers journaux.
- Il stocke les données pour la sauvegarde, la restauration, la reprise après sinistre et l’archivage.
- Il stocke les données pour une analyse par un service sur site ou hébergé par Azure.
Le stockage de blobs Azure est fondamental pour l’ensemble de Microsoft Azure, car de nombreux autres services Azure stockeront les données dans un compte de stockage, dans le stockage de blobs, et agiront sur ces données. Et chaque blob doit se trouver dans un conteneur.
Conteneur
Le conteneur s’apparente davantage à un dossier dans lequel sont stockés différents blobs. Au niveau du conteneur, nous pouvons définir des politiques de sécurité et les affecter au conteneur, qui seront répercutées en cascade sur tous les blobs du même conteneur.
Un compte de stockage peut contenir un nombre illimité de conteneurs, et chaque conteneur peut contenir un nombre illimité de blobs jusqu’à la limite maximale de la taille du compte de stockage (jusqu’à 500 To).
Pour référencer ce blob, une fois qu’il est placé dans un conteneur à l’intérieur d’un compte de stockage, nous pouvons utiliser l’URL, qui ressemble à http://mystorageaccount.blob.core.windows.net/mycontainer/myblob.
Le stockage Blob se base sur un schéma de stockage plat. Vous ne pouvez donc pas créer un conteneur dans un conteneur. Par exemple : une fois que nous avons créé un conteneur comme les vidéos et si nous voulons faire la différence entre les vidéos professionnelles et les vidéos personnelles. Nous pouvons alors préfixer les noms de blob avec personnel pour les vidéos personnelles et professionnel pour les vidéos professionnelles. Le nom du blob s’affichera comme personal-video1, personal-video2 pour les vidéos personnelles, et pour les vidéos professionnelles – professional-video1, professional-video2. Comme ceci, nous pouvons créer une hiérarchie virtuelle, mais nous ne pouvons pas créer un conteneur dans un conteneur à l’intérieur du service de stockage de blob Azure.
Types de Blob :
Azure propose trois types de service de blob :
- Block blob : Il stocke des données binaires textuelles jusqu’à environ 4,7 To. Il s’agit d’un bloc de données que nous pouvons gérer individuellement. Nous pouvons utiliser les blocs de données principalement pour améliorer le temps de téléchargement lorsque nous téléchargeons des données en bloc dans Azure. Lorsque nous téléchargeons des fichiers vidéo, des fichiers multimédia ou des documents. Nous pouvons généralement utiliser des block blobs, sauf s’il s’agit de fichiers journaux.
- Append blob : Il contient des blocs comme les block blobs optimisés pour les opérations d’append. Il est idéal pour une application comme la journalisation des données des machines virtuelles. Par exemple, le journal des applications, le journal des événements où vous devez ajouter les données à la fin du fichier. Ainsi, lorsque nous téléchargeons un blob dans un conteneur à l’aide du portail Azure ou du code, nous pouvons spécifier le type de blob à ce moment-là.
- Page blob : Il stocke des fichiers à accès aléatoire jusqu’à 8 To. Les Page Blobs stockent les fichiers VHD qui sauvegardent les VMs.
La plupart du temps, nous fonctionnons avec des blobs de type bloc et append. Les blobs de page sont créés par défaut. Lorsque nous créons une machine virtuelle, le compte de stockage se crée et contient les disques de la machine virtuelle. Mais pour la plupart des solutions de stockage, comme nous le savons, nous développons une application comme YouTube, ou nous développons une application de surveillance, dans ce cas, nous utilisons soit des block blobs, soit des append blobs en fonction des besoins.
Nommage et référencement
Les noms du conteneur et du blob doivent respecter certaines règles. En effet, le nom du conteneur et celui du blob feront partie de l’URL lorsque vous tenterez d’y accéder. Ils doivent respecter certaines règles définies ci-dessous.
Noms des conteneurs
- Le nom des conteneurs doit commencer par une lettre ou un chiffre, et ne peut contenir que des lettres, des chiffres et le caractère tiret (-).
- Toutes les lettres d’un nom de conteneur doivent être en minuscules.
- Les noms de conteneurs doivent comporter de 3 à 63 caractères.
Nom des Blob
- Le nom des blobs peut contenir n’importe quelle combinaison de caractères.
- Le nom des blobs doit comporter au moins un caractère et ne peut pas dépasser 1024 caractères.
- L’émulateur Azure Storage prend en charge les noms de blobs jusqu’à 256 caractères.
- Le nom des blobs est sensible à la casse.
- Les caractères URL réservés doivent être échappés correctement.
Métadonnées et Instantanés
Nous pouvons stocker un certain nombre d’informations sur un conteneur ou un blob en tant que métadonnées. Il s’agit d’une paire nom-valeur associée au conteneur ou au blob. Les noms des métadonnées doivent respecter les règles de dénomination des identificateurs C#. Par exemple, lorsque nous développons une application de streaming vidéo dont le backend est un stockage blob Azure, lorsque l’utilisateur télécharge une vidéo, nous voulons stocker les informations relatives à l’utilisateur en tant que métadonnées pour cette vidéo. C’est très utile dès lors que l’on commence à développer une application basée sur le stockage en mode blob.
Instantanés de Blob
Le snapshot est une version en lecture seule du stockage du blob. En définitive, on peut utiliser les snapshots pour créer une sauvegarde ou un point de contrôle d’un blob. Le nom d’un blob snapshot comprend l’URL du blob de base plus une valeur de date et d’heure qui indique le moment de création du snapshot. Là encore, si nous développons une application de type YouTube et que nous voulons conserver la version précédente de la vidéo, nous pouvons en prendre un instantané et le stocker une fois que l’utilisateur a mis à jour la vidéo. Ainsi, un utilisateur comme SharePoint peut voir la version précédente de la vidéo et la version actuelle de la vidéo.
Pour accéder à l’instantané, nous devons ajouter une chaîne de requête à la fin de l’URL. Et un instantané avec une date et une heure similaires à celles de la création de l’instantané.