Azure Blob Storage vs File Storage
Microsoft tilbyder flere muligheder for at gemme data i skyen. Hver mulighed har sit unikke formål til at opfylde forskellige forretningsbehov. En af de vigtige funktioner, som Microsoft Azure tilbyder, er fleksibiliteten til at migrere til forskellige lagringsmuligheder, hvis det er nødvendigt.
Der er forskellige muligheder i Azure Storage Account til lagring af brugerdata.
- Blob Storage
- File Storage
- Table Storage
- Queueue Storage
- Disk
Denne blog forsøger at skelne mellem Azure Blob Storage og File Storage, som er tilgængelig i Azure Storage Account.
- Introduktion
- Blob Storage
- Filopbevaring
- Hvornår skal du bruge
- Blob Storage
- Filopbevaring
- Download denne blog gratis som PDF-dokument til offline-læsning.
- Realtidsscenarie
- Opload af store filer
- Optioner til overvågning, der er tilgængelige for Blob Storage og File storage
- Azure Portal
- Serverless360 (Off the Shelf Product)
- Skalering
- Sikkerhed
- Disaster Recovery
- Priser
- Data Storage Prices
- Operationer og dataoverførselspriser
- Wrap Up
- Forfatter: Nadeem Ahamed
Introduktion
Blob Storage
Azure Blob Storage er en objektlagringsløsning til skyen. Blob Storage giver dig mulighed for at gemme en massiv mængde ustrukturerede data. De ustrukturerede data behøver ikke at være af den specifikke datamodel.
Filopbevaring
Azure Files tilbyder fuldt administrerede filandele i skyen, som er tilgængelige via branchestandarden SMB. Azure File shares kan monteres samtidig af cloud- eller lokale implementeringer af Windows, Linux og macOS i skyen eller på stedet. Det kan cachelagres på Windows-servere med Azure File Sync for hurtigere adgang.
Hvornår skal du bruge
Blob Storage
Azure Blob Storage blev designet til at opfylde specifikke behov. Hvis din virksomheds brugssituation kræver, at ustrukturerede data som lyd, video, billeder osv. skal gemmes, bør du sandsynligvis vælge denne mulighed. De objekter, der gemmes i Blob, har ikke nødvendigvis en udvidelse.
De følgende punkter beskriver scenarierne for brugsscenarierne:
- Servering af billeder eller dokumenter direkte til en browser
- Lagring af filer til distribueret adgang
- Streaming af video og lyd
- Skrivning til logfiler
- Lagring af data til sikkerhedskopiering, gendannelse, disaster recovery og arkivering
- Lagring af data til analyse af en lokal eller Azure-hosted service
Filopbevaring
Filopbevaring kan bruges, hvis dit forretningsbrug har brug for at håndtere mest standardfilendelser som *.docx, *.png og *.bak, så bør du sandsynligvis vælge denne lagringsmulighed.
De følgende punkter beskriver scenarierne for brugsscenarierne:
- Erstat eller supplerer onpremises File servers
- “Lift and shift”-applikationer
- Forenkler cloud-udvikling
Download denne blog gratis som PDF-dokument til offline-læsning.
Realtidsscenarie
Tænk på et scenarie, i et udviklingsmiljø, hvor alle udviklere har brug for adgang til IDE og værktøjer uden at bruge internettet til at downloade det. I denne situation ville Azure Blob Storage opfylde behovet, og ved hjælp heraf kan du kun gemme udviklingsværktøjer og derefter give et link til teamet for at få adgang til Blob-placeringen.
For at implementere en filserver i din organisation skal du vælge Azure Files-muligheden. En File server bruges til at dele filer på tværs af afdelinger i din organisation. Når det drejer sig om Fildeling, bør slutbrugeren ikke have adgang til kopierne af filen fra dens URI og skal kortlægges lokalt på computerne. Det er her, Azure File Storage passer til dit behov.
Opload af store filer
Den almindelige tilgang, der bruges til at uploade en stor fil, er at opdele den i stykker. Opsplitning er ikke kun funktionen til at uploade filer, men chunks skal slås sammen til en fil, når upload er afsluttet.
Til ovenstående opgave, hvilken løsning ville være en god løsning? Azure Blob- eller File Storage?
Svaret er Azure Blob Storage. Selv om dette scenarie omhandler filer, er Azure Blob Storage en god løsning på grund af dens standardfunktioner.
Azure Blob Storage indeholder tre typer af blobs: Block, Page og Append. En blok er en enkelt enhed i en Blob. En Blob kan indeholde mange blokke, men ikke mere end 50.000 blokke pr. Blob. Det betyder, at du kan opdele en Blob i 50.000 blokke for at uploade dem til Azure Blobs storage. Minimumsstørrelsen af en blok er 64 KB og maksimumstørrelsen er 100 MB. Hvis du kigger på (f.eks. .NET-biblioteket), er et af objekterne BlockBlob, som er en del af CloudBlockBlob-klassen. Denne klasse tilbyder dig masser af ting til at arbejde med en Block Blob.
For eksempel giver StreamWriteSizeInBytes-egenskaben dig mulighed for at indstille en Block Blob-størrelse, som kan være god til at håndtere ustabil netværkshastighed. Hver block Blob har også metadata, så du kan styre individuelt. Hvis du f.eks. vil sikre dig, at alle block Blobs er overført til en given Blob, kan du bruge Content-MD5.
Azure File Storage har ikke denne out-of-the-box-funktion. Hvis du har brug for at opdele File, skal du finde en indirekte metode som FileStream-klassen eller bruge tredjepartsleverandører.
Optioner til overvågning, der er tilgængelige for Blob Storage og File storage
Azure Portal
Når du har konfigureret den ønskede Storage-konto til indstillingen Diagnostics under afsnittet Monitoring, kan du definere den type metrikdata, du ønsker at overvåge, og opbevaringspolitikken for dataene.
Et standardsæt af metrikker vises i diagrammer på bladet Storage Account samt på de enkelte tjenesteblade (Blobs og Files). Når du har aktiveret målinger for en tjeneste, kan det tage op til en time, før data vises i diagrammerne for den pågældende tjeneste. Du kan vælge Rediger på et hvilket som helst metrikdiagram for at konfigurere, hvilke metrikker der skal vises i diagrammet.
Serverless360 (Off the Shelf Product)
Det er muligt at overvåge både Storage Blobs og Storage Files i en status- eller tærskelovervågning. Status Monitor genererer en rapport på bestemte tidspunkter i løbet af en dag, der repræsenterer entiteternes tilstand i forhold til de ønskede værdier. Tærskelovervågning genererer en rapport, når visse egenskaber overtræder de ønskede værdier i en bestemt periode. Overvejende overvåger Serverless360 Blobs og filer baseret på deres egenskaber snarere end på deres metrikker, i modsætning til Azure Portal.
Entitetstype | Egenskaber, der kan overvåges |
---|---|
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) |
Understående billede viser Blob-konfigurationen i Status Monitor for Serverless360-applikationen.
Nedenfor vises de fejldetaljer, der genereres, hvis fejlen fortsætter i den ønskede periode.
Skalering
Det er vigtigt at kende kvoten og grænserne for Azure Storage for at vælge den rigtige løsning. Det højeste repræsentationsniveau for kapacitet i Azure Blob Storage er Containers, mens det for filer er Shares.
Azure Blobs Resource | Target |
---|---|
Max størrelse af en enkelt Blob-container | 500 TB |
Max antal blokke i en block Blob eller append Blob | 50,000 blokke |
Max størrelse af en blok i en blok Blob | 100 MB |
Max størrelse af en blok Blob | 50.000 X 100 MB (ca. 4,75 TB) |
Max størrelse af en blok i en append Blob | 4 MB |
Max størrelse af en append Blob | 50.000 x 4 MB (ca. 195 GB) |
Max. størrelse af en side Blob | 8 TB |
Max. antal lagrede adgangspolitikker pr. Blob-container | 5 |
Azure Files Resource | Target | |
---|---|---|
Maksimal størrelse af en filudveksling | 5 TB | |
Maksimal størrelse af en filudveksling | størrelse af en fil i en filudveksling | 1 TB |
Max antal filer i en filudveksling | Ingen begrænsning | |
Max IOPS pr. filudveksling | 1000 IOPS | |
Max antal lagrede adgangspolitikker pr. filandel | 5 | |
Maksimal anmodningshastighed pr. lagringskonto | 20,000 anmodninger pr. sekund for filer af enhver gyldig størrelse | |
Målgennemstrømning for en enkelt Fildeling | Op til 60 MB pr. sekund | |
Maksimale åbne håndtag for pr. fil | 2000 åbne håndtag | |
Maksimalt antal øjebliksbilleder af delinger | 200 øjebliksbilleder af delinger |
Sikkerhed
Azure Storage Blob og Files Storage Service-kryptering, da de hører under Azure Storage Account-niveau. Når programmet skriver/læser en ny Blob/Fil, krypteres de ved hjælp af 256-bit AES-algoritmen (Advanced Encryption Standard). Hvis du kalder via REST API, er både Azure Blobs og Azure Files understøttet ved at aktivere Secure Required Transfer.
Både Azure Blobs og Azure-filer har brug for Shared Access Signature (SAS) for at få delegeret adgang til Blobs og filer. Ud over autorisation understøttes begge med Azure AD og delt adgangstoken.
Azure Blobs giver mulighed for at opnå kryptering ved hjælp af BlobEncryptionPolicy-klassen med Azure Key Vault. Azure-filer bruger indbygget kryptering i SMB 3.0-protokollen. Desuden understøtter både Azure Blobs og Azure Files CORS-reglen (Cross-Origin Resource Sharing). CORS giver dig mulighed for at beskrive whitelisten for HTTP-headerforespørgsel.
Med hensyn til netværkssikkerhed har du mere kontrol over den indgående netværkstrafik til både Azure Blobs og Azure Files. Det tillader kun et angivet IP-område og virtuelle netværk at få adgang til det.
Disaster Recovery
Databackup er vigtig for enhver virksomhed, hvor data betragtes som blodet i deres organisation. Desværre har Azure recover og back-up ikke automatisering til at sikkerhedskopiere data direkte fra Blob- og filopbevaring. For at håndtere, kan data downloades data ned til din on-premises infrastruktur eller oprette en ny Storage Account i et andet område til at gemme dine data.
Azure Blobs: Brug Copy Blob til asynkront at kopiere din Blob til destinationens lagringskonto.
Azure Files: Brug Copy Blob til asynkront at kopiere din Blob til destinationens lagringskonto: Brug Kopier fil til asynkront at kopiere en filudveksling til destinationens lagringskonto.
Priser
Priserne beskrevet her er baseret på Microsofts dokumentation
Data Storage Prices
Nedenfor er priserne for lagring af data i Azure File og Blob Storage
Blob Storage | PREMIUM | HOT | COOL | ARCHIVE |
---|---|---|---|---|
Første 50 terabyte (TB) / måned | 0 USD.18 pr. GB | $0.022 pr. GB | $0.01 pr. GB | $0.00099 pr. GB |
Næste 450 TB / måned | $0.18 pr. GB | 0.0212$ pr. GB | 0.01$ pr. GB | 0.00099$ pr. GB |
Over 500 TB / måned | 0.18 pr. GB | $0.0203 pr. GB | $0.01 pr. GB | $0.00099 pr. GB |
Filopbevaring | STANDARD | |
---|---|---|
GB/måned | 0,00$.06 pr. brugt GB | |
Snapshots GB/måned | 0 USD.06 pr. brugt GB |
Operationer og dataoverførselspriser
Nedenfor er priserne for operationer og dataoverførsel i Azure File and Blob Storage
Blob Storage | PREMIUM | HOT | COOL | ARCHIVE | ||
---|---|---|---|---|---|---|
Skriveoperationer (pr. 10,000)1 | $0.021 | $0.05 | $0.10 | $0.11 | ||
Liste- og oprettelsesoperationer for containere (pr. 10.000)2 | $0.06 | $0.05 | $0.05 | $0.05 | $0.05 | |
Læseoperationer (pr. 10.000)3 Læsning af arkiver med høj prioritet (pr. 10.000)5 |
0.0017 | 0.004 | 0.004 | 0.01 | 5.50 $30 |
|
Alle andre Operationer (pr. 10.000), undtagen Slet, som er gratis | $0.0017 | $0.004 | $0.004 | $0.004 | $0.004 | |
Datahentning (pr. GB)4 Arkivhentning med høj prioritet (pr. GB)5 |
Gratis | Gratis | Gratis | 0$.01 | $0.022 $0.06 |
|
Dataskrivning (pr. GB)4 | Gratis | Gratis | $0.0025 | Gratis |
Filopbevaring | STANDARD |
---|---|
Put, Create Container Operations (per 10.000) | 0$.015 |
Listeoperationer (pr. 10.000) | 0,015$ |
Alle andre operationer undtagen Delete, som er gratis (pr. 10.000) | 0$.0015 |
Geo-Replication Data Transfer (per GiB) | N/A |
Wrap Up
I revolutionen af digital transformation bliver applikationer moderniseret, og det kræver storstilet mønster ikke kun i applikationslaget, men også i datalaget, som jeg ikke tror, Azure Files kan passe. Azure Files ville stadig være godt, hvis din applikation er beregnet til et specifikt publikum.
Måske er der individuelle aspekter, der skal overvejes, før man konkluderer den bedste løsning mellem Azure Blob Storage og Files. Hvis man tager de fælles funktionaliteter i betragtning, ville jeg foretrække Azure Blob Storage frem for Files.
Forfatter: Nadeem Ahamed
Nadeem er en teknisk produktmarkedsfører for Serverless360. Han er passioneret om at blogge om banebrydende teknologier. Han mener, at blogs er den bedste måde at dele viden blandt fællesskabet på, og hans passion for at skrive vil aldrig ende indtil den sidste dag af åndedræt. Han tror altid på sætningen “Looks so Good on the Outside, It’ll Make You Feel Good Inside”.Vis alle indlæg af Nadeem Ahamed