Azure Blob Storage vs File Storage
Microsoft propose plusieurs options pour stocker des données sur le cloud. Chaque option a son objectif unique pour servir différents besoins commerciaux. L’une des capacités importantes que Microsoft Azure fournit est l’agilité de migrer vers différentes options de stockage si nécessaire.
Il existe différentes options disponibles dans le compte de stockage Azure pour stocker les données des utilisateurs.
- Blob Storage
- File Storage
- Table Storage
- Queueue Storage
- Disk
Ce blog essaie de faire la différence entre Azure Blob Storage et File Storage qui est disponible dans Azure Storage Account.
- Introduction
- Blob Storage
- File Storage
- Quand utiliser
- Blob Storage
- Stockage de fichiers
- Télécharger gratuitement ce blog en document PDF pour une lecture hors ligne.
- Scénario en temps réel
- Transfert de gros fichiers
- Options de surveillance disponibles pour le stockage Blob et le stockage File
- Azure Portal
- Serverless360 (Produit sur étagère)
- Scalability
- Sécurité
- Récupération après sinistre
- Tarification
- Prix du stockage de données
- Prix des opérations et du transfert de données
- Wrap Up
- Auteur : Nadeem Ahamed
Introduction
Blob Storage
Azure Blob Storage est une solution de stockage objet pour le cloud. Le Blob Storage vous permet de stocker une quantité massive de données non structurées. Les données non structurées n’ont pas besoin d’être du modèle de données spécifique.
File Storage
Azure Files offre des partages de fichiers entièrement gérés dans le cloud qui sont accessibles via le standard industriel SMB. Les partages de fichiers Azure peuvent être montés simultanément par des déploiements dans le cloud ou sur site de Windows, Linux et macOS. Il peut être mis en cache sur les serveurs Windows avec Azure File Sync pour un accès plus rapide.
Quand utiliser
Blob Storage
Azure Blob Storage a été conçu pour répondre à des besoins spécifiques. Si le cas d’utilisation de votre entreprise nécessite de stocker des données non structurées comme l’audio, la vidéo, les images, etc, alors vous devriez probablement opter pour cette option. Les objets qui sont stockés dans Blob n’ont pas nécessairement une extension.
Les points suivants décrivent les scénarios de cas d’utilisation :
- Servir des images ou des documents directement à un navigateur
- Stocker des fichiers pour un accès distribué
- Streaming vidéo et audio
- Écrire dans des fichiers journaux
- Stocker des données pour la sauvegarde, la restauration, la reprise après sinistre et l’archivage
- Stockage de données pour l’analyse par un service sur site ou hébergé par Azure
Stockage de fichiers
Le stockage de fichiers peut être utilisé si votre cas d’utilisation commerciale doit traiter principalement des extensions de fichiers standard comme *.docx, *.png et *.bak alors vous devriez probablement opter pour cette option de stockage.
Les points suivants décrivent les scénarios de cas d’utilisation :
- Remplacer ou compléter les serveurs de fichiers sur site
- Applications « Lift and shift »
- Simplifier le développement du cloud
Télécharger gratuitement ce blog en document PDF pour une lecture hors ligne.
Scénario en temps réel
Envisagez un scénario, dans un environnement de développement où chaque développeur a besoin d’accéder à l’IDE et aux outils sans utiliser internet pour les télécharger. Dans cette situation, Azure Blob Storage répondrait au besoin et en utilisant lequel vous pouvez seulement stocker les outils de développement puis donner un lien à l’équipe pour accéder à l’emplacement Blob.
Pour mettre en œuvre un serveur de fichiers dans votre organisation, vous devriez choisir l’option Azure Files. Un serveur de fichiers est utilisé pour partager des fichiers entre les départements de votre organisation. Lorsqu’il s’agit de partager des Fichiers, l’utilisateur final ne doit pas être autorisé à accéder aux copies du Fichier à partir de son URI et doit être mappé localement dans les ordinateurs. C’est à ce moment-là qu’Azure File Storage répond à votre besoin.
Transfert de gros fichiers
L’approche commune utilisée pour télécharger un gros fichier est de le diviser en morceaux. Le fractionnement n’est pas seulement la fonction pour télécharger des fichiers, mais les morceaux doivent être fusionnés en un Fichier une fois le téléchargement terminé.
Pour la tâche ci-dessus, quelle option serait la plus appropriée ? Azure Blob ou File Storage ?
La réponse est Azure Blob Storage. Bien que ce scénario traite des fichiers, Azure Blob Storage est une bonne solution en raison de ses capacités prêtes à l’emploi.
Azure Blob Storage contient trois types de blobs : Bloc, Page et Append. Un bloc est une unité unique dans un Blob. Un Blob peut contenir de nombreux blocs mais pas plus de 50 000 blocs par Blob. Cela signifie que vous pouvez diviser un Blob en 50 000 blocs à télécharger sur le stockage Azure Blobs. La taille minimale d’un bloc est de 64 Ko et sa taille maximale est de 100 Mo. Si vous regardez (par exemple la bibliothèque .NET), l’un des objets est BlockBlob qui fait partie de la classe CloudBlockBlob. Cette classe vous offre des choses pour travailler avec un Block Blob.
Par exemple, la propriété StreamWriteSizeInBytes vous permet de définir une taille de Block Blob qui peut être bonne pour gérer une vitesse de réseau instable. Chaque bloc Blob possède également des métadonnées qui vous permettent de le contrôler individuellement. Par exemple, si vous voulez vous assurer que tous les Blobs de bloc sont livrés avec succès à un Blob donné, vous pouvez utiliser Content-MD5.
Azure File Storage n’a pas cette capacité prête à l’emploi. Si vous avez besoin de diviser File, vous devez trouver une méthode indirecte comme la classe FileStream ou utiliser des fournisseurs tiers.
Options de surveillance disponibles pour le stockage Blob et le stockage File
Azure Portal
Une fois que vous avez configuré le compte de stockage souhaité à l’option Diagnostics sous la section Surveillance, vous pourrez définir le type de données de métriques que vous souhaitez surveiller et la politique de rétention des données.
Un ensemble de métriques par défaut est affiché dans des graphiques sur la lame du compte de stockage, ainsi que sur les lames de service individuelles (Blobs et Fichiers). Une fois que vous avez activé les métriques pour un service, il peut falloir jusqu’à une heure pour que les données apparaissent dans ses graphiques. Vous pouvez sélectionner Modifier sur n’importe quel graphique de métrique pour configurer les métriques à afficher dans le graphique.
Serverless360 (Produit sur étagère)
Il est possible de surveiller à la fois les blocs de stockage et les fichiers de stockage dans un moniteur d’état ou de seuil. Status Monitor génère un rapport à des moments spécifiques dans une journée représentant l’état des entités par rapport aux valeurs souhaitées. Threshold Monitor génère un rapport lorsque certaines propriétés violent les valeurs souhaitées pendant une période spécifiée. De manière prédominante, Serverless360 surveille les Blobs et les Fichiers en fonction de ses propriétés plutôt que de ses métriques, contrairement à Azure Portal.
Type d’entité | Propriétés pouvant être surveillées |
---|---|
Storage Blob | État de location, nombre de Blob, taille des Blob (octets), nombre de blocs de Blob, taille des blocs de Blob (octets), nombre de pages de Blob, Page Blob Size (Bytes), Append Blob Count, Append Blob Size (Bytes) |
Storage File | Usage (Bytes) |
L’image ci-dessous représente la configuration Blob dans le Status Monitor de l’application Serverless360.
Ci-après se trouve le détail de l’erreur générée si l’erreur persiste pendant la période souhaitée.
Scalability
Il est important de connaître le quota et les limites d’Azure Storage pour choisir la bonne option. Le plus haut niveau de représentation de la capacité dans Azure Blob Storage est celui des conteneurs, tandis que pour les fichiers, il s’agit des partages.
Ressource Azure Blobs | Cible |
---|---|
Taille maximale d’un conteneur Blob unique | 500 TB |
Nombre maximal de blocs dans un bloc Blob ou un append Blob | 50,000 blocs |
Taille maximale d’un bloc dans un Blob | 100 Mo |
Taille maximale d’un Blob | 50 000 X 100 Mo (env. 4,75 To) |
Taille maximale d’un bloc dans un Blob | 4 Mo |
Taille maximale d’un Blob | 50 000 x 4 Mo (env. 195 Go) |
Taille maximale d’une page Blob | 8 To |
Nombre maximal de politiques d’accès stockées par conteneur Blob | 5 |
Ressource Azure Files | Target | |
---|---|---|
Taille maximale d’un partage de fichiers | 5 TB | |
Taille maximale d’un fichier dans un partage de fichiers | . d’un fichier dans un partage de fichiers | 1 TB |
Nombre maximum de fichiers dans un partage de fichiers | Aucune limite | |
Max IOPS par partage | 1000 IOPS | |
Nombre maximal de politiques d’accès stockées par partage de fichiers | 5 | |
Taux maximal de requêtes par compte de stockage | 20,000 demandes par seconde pour des Fichiers de toute taille valide | |
Débit cible pour un seul Partage de fichiers | Jusqu’à 60 Mo par seconde | |
Maximum de handles ouverts pour par Fichier | 2000 handles ouverts | |
Nombre maximal d’instantanés de partage | 200 instantanés de partage |
Sécurité
Cryptage du service de stockage Azure Storage Blob et Files car ils relèvent du niveau du compte de stockage Azure. Lorsque l’application écrit/lit un nouveau Blob/File, ils sont chiffrés à l’aide de l’algorithme AES (Advanced Encryption Standard) de 256 bits. En cas d’appel via l’API REST, tant les Azure Blobs que les Azure Files sont pris en charge en activant le transfert requis sécurisé.
Les Azure Blobs et les Azure Files ont tous deux besoin d’une signature d’accès partagé (SAS) pour obtenir un accès délégué aux Blobs et aux fichiers. En plus de l’autorisation, les deux sont pris en charge avec Azure AD et le jeton d’accès partagé.
Les Blobs Azure permettent de réaliser un chiffrement par la classe BlobEncryptionPolicy avec Azure Key Vault. Les fichiers Azure utilisent un chiffrement intégré dans le protocole SMB 3.0. En outre, Azure Blobs et Azure Files prennent tous deux en charge la règle CORS (Cross-Origin Resource Sharing). CORS vous permet de décrire la liste blanche pour la demande d’en-tête HTTP.
En ce qui concerne la sécurité du réseau, vous avez plus de contrôle sur le trafic réseau entrant à la fois vers Azure Blobs et Azure Files. Il permet uniquement à une plage d’IP et à des réseaux virtuels spécifiés d’y accéder.
Récupération après sinistre
La sauvegarde des données est importante pour toute entreprise où les données sont considérées comme le sang de leur organisation. Malheureusement, Azure recover et back-up n’ont pas d’automatisation pour sauvegarder les données directement à partir de Blob et File Storage. Pour gérer, les données peuvent être téléchargées les données vers le bas à votre infrastructure sur place ou créer un nouveau compte de stockage dans une autre région pour stocker vos données.
Azure Blobs : Utilisez Copy Blob pour copier de manière asynchrone votre Blob vers le compte de stockage de destination.
Azure Files : Utilisez Copy File pour copier de manière asynchrone le partage de fichiers vers le compte de stockage de destination.
Tarification
La tarification décrite ici est basée sur la documentation Microsoft
Prix du stockage de données
Vous trouverez ci-dessous les prix pour le stockage de données dans Azure File et Blob. Storage
Blob Storage | PREMIUM | HOT | COOL | ARCHIVE |
---|---|---|---|---|
Premiers 50 téraoctets (To) / mois | 0 $.18 par GB | 0,022 $ par GB | 0,01 $ par GB | 0,00099 $ par GB |
Suivant 450 TB / mois | 0.18 par GB | 0,0212$ par GB | 0,01$ par GB | 0,00099$ par GB |
Plus de 500 TB / mois | 0.18 par GB | 0,0203 $ par GB | 0,01 $ par GB | 0.00099 par GB |
Stockage de fichiers | STANDARD |
---|---|
GB/mois | $0.06 par GB utilisé |
Snapshots GB/mois | $0.06 par Go utilisé |
Prix des opérations et du transfert de données
Vous trouverez ci-dessous les prix des opérations et du transfert de données dans Azure File and Blob Storage
.
Blob Storage | PREMIUM | HOT | COOL | ARCHIVE |
---|---|---|---|---|
Opérations d’écriture (par 10,000)1 | $0.021 | $0.05 | $0.10 | 0,11 |
Liste et création de conteneurs (par 10 000)2 | 0,06 | 0,05 | 0,05 | 0.05 |
Opérations de lecture (par 10 000)3 Lecture d’archives haute priorité (par 10 000)5 |
0,0017 | 0,004 | 0,01 | 5$.50 $30 |
Toutes les autres opérations (par 10 000), sauf Supprimer, qui est gratuit | 0,0017 | 0,004 | 0,004 | 0.004 |
Récupération de données (par Go)4 Récupération d’archives à haute priorité (par Go)5 |
Libre | Libre | 0$.01 | 0,022 0,06 |
Ecriture de données (par Go)4 | Libre | Libre | 0.0025 | Libre |
Stockage de fichiers | STANDARD |
---|---|
Mise en place, création de conteneurs (par 10 000) | $0.015 |
Opérations de liste (par 10 000) | 0,015 |
Toutes les autres opérations sauf Supprimer, qui est gratuit (par 10 000) | 0$.0015 |
Transfert de données de géo-réplication (par GiB) | N/A |
Wrap Up
Dans la révolution de la transformation numérique, les applications sont modernisées et cela nécessite un modèle à grande échelle non seulement dans la couche d’application mais aussi dans la couche de données que je ne pense pas que Azure Files puisse s’adapter. Azure Files serait encore bon si votre application est servie pour un public spécifique.
Peut-être, il y a des aspects individuels à considérer avant de conclure la meilleure option entre Azure Blob Storage et Files. En prenant en considération les fonctionnalités communes, je préférerais Azure Blob Storage plutôt que Files.
Auteur : Nadeem Ahamed
Nadeem est un commercialisateur de produits techniques pour Serverless360. Il est passionné par le blogging sur les technologies de pointe. Il croit que les blogs sont le meilleur moyen de partager des connaissances parmi la communauté et sa passion pour l’écriture ne s’arrêtera jamais jusqu’au dernier jour de son souffle. Il croit toujours en la phrase « Il est si beau de l’extérieur qu’il vous fera vous sentir bien à l’intérieur ».View all posts by Nadeem Ahamed