Azure Blob Storage vs File Storage

Microsoft oferă mai multe opțiuni de stocare a datelor în cloud. Fiecare opțiune are un scop unic pentru a servi diferite nevoi de afaceri. Una dintre capacitățile semnificative pe care le oferă Microsoft Azure este agilitatea de a migra la diferite opțiuni de stocare, dacă este necesar.

Există diverse opțiuni disponibile în contul de stocare Azure pentru stocarea datelor utilizatorului.

  • Blob Storage
  • File Storage
  • Table Storage
  • Queue Storage
  • Disk

Acest blog încearcă să facă diferența între Azure Blob Storage și File Storage care este disponibil în Azure Storage Account.

Introducere

Blob Storage

Azure Blob Storage este o soluție de stocare a obiectelor pentru cloud. Blob Storage vă permite să stocați o cantitate masivă de date nestructurate. Datele nestructurate nu trebuie neapărat să aibă un model de date specific.

File Storage

Azure Files oferă partajări de fișiere complet gestionate în cloud, care sunt accesibile prin intermediul standardului industrial SMB. Azure File shares pot fi montate concomitent de către implementări cloud sau on-premise de Windows, Linux și macOS. Pot fi stocate în memoria cache pe serverele Windows cu Azure File Sync pentru un acces mai rapid.

Când se utilizează

Blob Storage

Azure Blob Storage a fost conceput pentru a servi unor nevoi specifice. Dacă cazul de utilizare al afacerii dvs. trebuie să stocați date nestructurate, cum ar fi date audio, video, imagini etc., atunci probabil că ar trebui să optați pentru această opțiune. Obiectele care sunt stocate în Blob nu au neapărat o extensie.

Cele de mai jos descriu scenariile cazurilor de utilizare:

  • Servirea imaginilor sau a documentelor direct către un browser
  • Stocarea Fișierelor pentru acces distribuit
  • Transmiterea video și audio
  • Scrierea în Fișiere de jurnal
  • Stocarea datelor pentru backup, restaurare, recuperare în caz de dezastru și arhivare
  • Stocarea datelor pentru analiză de către un serviciu local sau găzduit de Azure

Stocarea fișierelor

Stocarea fișierelor poate fi utilizată dacă cazul de utilizare al afacerii dvs. trebuie să se ocupe în principal de extensii standard de fișiere precum *.docx, *.png și *.bak, atunci probabil că ar trebui să optați pentru această opțiune de stocare.

Cele de mai jos descriu scenariile de utilizare:

  • Înlocuiți sau completați serverele de fișiere locale
  • Aplicații „Lift and shift”
  • Simplificați dezvoltarea în cloud

Descărcați gratuit acest blog ca document PDF pentru citire offline.

Scenariu în timp real

Considerați un scenariu, într-un mediu de dezvoltare în care fiecare dezvoltator are nevoie de acces la IDE și instrumente fără a folosi internetul pentru a le descărca. În această situație, Azure Blob Storage ar satisface nevoia și cu ajutorul căruia puteți doar să stocați instrumentele de dezvoltare, apoi să oferiți un link echipei pentru a accesa locația Blob.

Pentru implementarea unui server de fișiere în organizația dumneavoastră, ar trebui să alegeți opțiunea Azure Files. Un server de fișiere este utilizat pentru a partaja fișiere între departamentele din organizația dvs. Când vine vorba de partajarea Fișierelor, utilizatorului final nu ar trebui să i se permită să acceseze copiile Fișierelor de la URI-ul său și trebuie să fie mapate local în calculatoare. Acesta este momentul în care Azure File Storage se potrivește nevoilor dumneavoastră.

Încărcarea de fișiere mari

Abordarea obișnuită utilizată pentru a încărca un Fișier mare este de a-l împărți în bucăți. Împărțirea nu este doar funcția de încărcare a fișierelor, dar bucățile trebuie să fie unite într-un Fișier odată ce încărcarea este finalizată.

Pentru sarcina de mai sus, ce opțiune ar fi potrivită? Azure Blob sau File Storage?

Răspunsul este Azure Blob Storage. Deși acest scenariu se referă la Fișiere, Azure Blob Storage se potrivește bine datorită capacităților sale gata de utilizare.

Azure Blob Storage conține trei tipuri de blobs: Block, Page și Append. Un bloc este o singură unitate într-un Blob. Un Blob poate conține mai multe blocuri, dar nu mai mult de 50.000 de blocuri pe Blob. Acest lucru înseamnă că puteți împărți un Blob în 50.000 de blocuri pentru a le încărca în Azure Blobs Storage. Dimensiunea minimă a unui bloc este de 64 KB, iar cea maximă este de 100 MB. Dacă vă uitați la (de exemplu, biblioteca .NET), unul dintre obiecte este BlockBlob, care face parte din clasa CloudBlockBlob. Această clasă vă oferă o mulțime de lucruri pentru a lucra cu un Block Blob.

De exemplu, proprietatea StreamWriteSizeInBytes vă permite să setați o dimensiune a blocului Blob care poate fi bună pentru a gestiona viteza instabilă a rețelei. Fiecare Block Blob are, de asemenea, metadate care vă permit să controlați individual. De exemplu, dacă vreți să vă asigurați că toate blocurile Blob sunt confirmate cu succes într-un Blob dat, puteți utiliza Content-MD5.

Azure File Storage nu are această capacitate gata de utilizare. Dacă aveți nevoie să divizați File, trebuie să găsiți o metodă indirectă, cum ar fi clasa FileStream, sau să folosiți furnizori terți.

Opțiuni de monitorizare disponibile pentru Blob Storage și File storage

Azure Portal

După ce ați configurat contul de stocare dorit la opțiunea Diagnostics din secțiunea Monitoring, veți putea defini tipul de date de măsurători pe care doriți să le monitorizați și politica de păstrare a datelor.

Un set implicit de măsurători este afișat în diagrame pe lama Storage Account (Cont de stocare), precum și pe lamele de servicii individuale (Blobs și Files). După ce ați activat măsurătorile pentru un serviciu, poate dura până la o oră pentru ca datele să apară în diagramele acestuia. Puteți selecta Edit (Editare) pe orice diagramă de măsurători pentru a configura ce măsurători să fie afișate în diagramă.

Opțiune de monitorizare a stocării pe portalul Azur

Serverless360 (Off the Shelf Product)

Este posibil să monitorizați atât Storage Blobs (Blocuri de stocare), cât și Storage Files (Fișiere de stocare) într-un monitor Status (Stare) sau Threshold (Prag). Monitorul de stare generează un raport la anumite momente ale unei zile, reprezentând starea entităților în raport cu valorile dorite. Threshold Monitor generează un raport atunci când anumite proprietăți încalcă valorile dorite pentru o perioadă specificată. În mod predominant, Serverless360 monitorizează Blobs și Files pe baza proprietăților sale, mai degrabă decât pe baza metricilor sale, spre deosebire de Azure Portal.

Entity Type Proprietăți care pot fi monitorizate
Storage Blob Lease State, Blob Count, Blob Size (Bytes), Block Blob Count, Block Blob Size (Bytes), Page Blob Count, Page Blob Size (Bytes), Append Blob Count, Append Blob Size (Bytes)
Storage File Usage (Bytes)

Imaginea de mai jos descrie configurația Blob în Status Monitor al aplicației Serverless360.

Sl360 blob status monitor

Mai jos este detaliul de eroare generat în cazul în care eroarea persistă pentru perioada dorită.

Detalii de eroare blob din Sl360

Scalabilitate

Este semnificativ să cunoașteți cota și limitele Azure Storage pentru a alege opțiunea corectă. Cel mai înalt nivel de reprezentare a capacității în Azure Blob Storage este Containers, în timp ce pentru Files este Shares.

.

Azure Blobs Resource Target
Dimensiunea maximă a unui singur container Blob 500 TB
Numărul maxim de blocuri într-un Block Blob sau Apend Blob 50,000 de blocuri
Dimensiunea maximă a unui bloc într-un bloc Blob 100 MB
Dimensiunea maximă a unui bloc Blob 50,000 X 100 MB (aprox. 4,75 TB)
Dimensiunea maximă a unui bloc într-o anexă Blob 4 MB
Dimensiunea maximă a unei anexe Blob 50.000 x 4 MB (aprox. 195 GB)
Dimensiunea maximă a unei pagini Blob 8 TB
Numărul maxim de politici de acces stocate per container Blob 5

.

Azure Files Resource Target
Dimensiunea maximă a unui File share 5 TB
Max dimensiunea unui fișier într-un partaj de fișiere 1 TB
Numărul maxim de fișiere într-un partaj de fișiere Nici o limită
Cel mai mare IOPS pe partaj 1000 IOPS
Număr maxim de politici de acces stocate pe File share 5
Rata maximă de solicitare pe cont de stocare 20,000 de cereri pe secundă pentru Fișiere de orice dimensiune validă
Trasmitere țintă pentru o singură Partajare de fișiere Până la 60 MB pe secundă
Major număr de mânere deschise pentru fiecare Fișier 2000 de mânere deschise .
Număr maxim de instantanee de partajare 200 de instantanee de partajare

Securitate

Criptarea serviciului de stocare Azure Storage Blob și Files Storage Service, deoarece acestea se află la nivelul contului Azure Storage. Atunci când aplicația scrie/citește un nou Blob/File, acestea sunt criptate cu ajutorul algoritmului AES (Advanced Encryption Standard) pe 256 de biți. Dacă se apelează prin REST API, atât Azure Blobs, cât și Azure Files sunt acceptate prin activarea Secure Required Transfer.

Atât Azure Blobs cât și Azure Files au nevoie de Shared Access Signature (SAS) pentru a obține acces delegat la Blobs și Files. În plus față de autorizare, ambele sunt acceptate cu Azure AD și shared access token.

Azure Blobs permit realizarea criptării prin clasa BlobEncryptionPolicy cu Azure Key Vault. Azure Files utilizează criptarea încorporată în protocolul SMB 3.0. De asemenea, atât Azure Blobs, cât și Azure Files acceptă regula CORS (Cross-Origin Resource Sharing). CORS vă permite să descrieți lista albă pentru solicitarea antetului HTTP.

În ceea ce privește securitatea rețelei, aveți mai mult control asupra traficului de rețea care intră atât în Azure Blobs, cât și în Azure Files. Acesta permite doar accesul la un interval IP specificat și la rețele virtuale.

Recuperare în caz de dezastru

Salvarea datelor este semnificativă pentru orice întreprindere în care datele sunt considerate ca fiind sângele organizației lor. Din nefericire, Azure recover și back-up nu dispun de automatizare pentru a face backup de date chiar din Blob și File Storage. Pentru a face față, datele pot fi descărcate datele în infrastructura dvs. locală sau puteți crea un nou cont de stocare în altă regiune pentru a stoca datele.

Azure Blobs: Utilizați Copy Blob pentru a copia în mod asincron Blob-ul în contul de stocare de destinație.

Azure Files: Utilizați Copy File (Copiere fișier) pentru a copia în mod asincron partajarea fișierelor în contul de stocare de destinație.

Prețuri

Prețurile descrise aici se bazează pe documentația Microsoft

Prețuri de stocare a datelor

Mai jos sunt prezentate prețurile pentru stocarea datelor în Azure File și Blob Storage

Blob Storage PREMIUM HOT COOL ARCHIVE
Primii 50 terabyte (TB) / lună 0$.18 per GB $0,022 per GB $0,01 per GB $0,00099 per GB
Primele 450 TB / lună $0.18 per GB $0.0212 per GB $0.01 per GB $0.00099 per GB
Peste 500 TB / lună $0.18 per GB $0.0203 per GB $0.01 per GB $0.00099 pe GB
Stocare fișiere STANDARD
GB/lună $0.06 per GB folosit
Snapshots GB/lună $0.06 per GB folosit

Prețuri pentru operații și transfer de date

Acestea sunt prețurile pentru operații și transfer de date în Azure File and Blob Storage

.

Blob Storage PREMIUM HOT COOL ARCHIVE
Operații de scriere (per 10,000)1 $0.021 $0.05 $0.10 $0,11
Operații de listare și creare de containere (la 10.000)2 $0,06 $0,05 $0,05 $0,05 $0,05 $0.05
Operații de citire (la 10.000)3
Arhive High Priority Read (la 10.000)5
$0,0017 $0,004 $0,01 $5.50
30$
Toate celelalte operațiuni (la 10.000), cu excepția Delete, care este gratuită 0,0017$ 0,004$ 0,004$ 0,004$ 0,0017$ 0,004$.004
Recuperare date (per GB)4
Recuperare arhivă cu prioritate ridicată (per GB)5
Free Free Free $0.01 $0,022
$0,06
Scriere de date (per GB)4 Gratuit Gratuit Gratuit $0.0025 Liber
Stocare fișiere STANDARD
Operații de introducere, creare de containere (la 10.000) 0$.015
List Operations (per 10,000) $0.015
Toate celelalte operațiuni, cu excepția Delete, care este gratuită (per 10,000) $0.0015
Transferul de date de geo-replicare (per GiB) N/A

Încheiere

În revoluția transformării digitale, aplicațiile se modernizează și este nevoie de un model la scară largă nu doar în stratul aplicației, ci și în stratul de date, ceea ce nu cred că Azure Files se poate adapta. Azure Files ar fi încă bun dacă aplicația dvs. este servită pentru un public specific.

Poate, există aspecte individuale care trebuie luate în considerare înainte de a concluziona cea mai bună opțiune între Azure Blob Storage și Files. Luând în considerare funcționalitățile comune, aș prefera Azure Blob Storage mai degrabă decât Files.

Autor: Nadeem Ahamed

Nadeem este un Marketer de produse tehnice pentru Serverless360. El este pasionat de bloguri despre tehnologiile de ultimă oră. Crede că blogurile sunt cel mai bun mod de a împărtăși cunoștințe în rândul comunității, iar pasiunea sa pentru scris nu se va sfârși niciodată până în ultima zi de respirație. El crede întotdeauna în fraza „Arată atât de bine pe dinafară, încât te va face să te simți bine înăuntru”.Vezi toate postările lui Nadeem Ahamed

.