Schaalbaarheids- en prestatiedoelen voor Blob Storage

In deze naslaginformatie worden schaalbaarheids- en prestatiedoelen voor Azure Storage vermeld. De hier vermelde schaalbaarheids- en prestatiedoelen zijn high-enddoelen, maar ze zijn haalbaar. In alle gevallen zijn de aanvraagsnelheid en bandbreedte die uw opslagaccount bereikt, afhankelijk van de grootte van objecten die zijn opgeslagen, de gebruikte toegangspatronen en het type workload dat uw toepassing uitvoert.

Test uw service om te bepalen of de prestaties voldoen aan uw vereisten. Vermijd indien mogelijk plotselinge pieken in de verkeerssnelheid en zorg ervoor dat verkeer goed over partities wordt verdeeld.

Wanneer uw toepassing de limiet bereikt van wat een partitie voor uw workload kan verwerken, begint Azure Storage foutcode 503 (Server Bezet) of foutcode 500 (Time-out van bewerking) te retourneren. Als er 503-fouten optreden, kunt u overwegen uw toepassing te wijzigen om een exponentieel uitstelbeleid te gebruiken voor nieuwe pogingen. De exponentiële uitstel vermindert de belasting van de partitie en vereenvoudigt pieken in het verkeer naar die partitie.

Voor de service-level agreement (SLA) voor Azure Storage-accounts, zie SLA voor Storage Accounts.

Schaaldoelen voor Blob Storage

Hulpbron Doel
Maximale grootte van één blob-container Hetzelfde als de maximale capaciteit van het opslagaccount
Maximale aantal blokken in een blok-blob of toevoeg-blob 50.000 blokken
Maximale grootte van een blok in een blok-blob 4.000 MiB
Maximale grootte van een blok-blob 50.000 x 4.000 MiB (ongeveer 190,7 TiB)
Maximale grootte van een blok in een toevoeg-blob 4 MiB
Maximale grootte van een append-blob 50.000 x 4 MiB (ongeveer 195 GiB)
Maximale grootte van een pagina-blob 8 TiB2
Maximale aantal opgeslagen toegangsbeleidsregels per blob-container 5
Doelaanvraagsnelheid voor één blokblob Maximaal 3000 aanvragen per seconde
Doelverzoeksnelheid voor één pagina-blob Maximaal 500 aanvragen per seconde
Doeldoorvoer voor één pagina-blob Maximaal 60 MiB per seconde2
Doel doorvoersnelheid voor één blokblob Limieten voor het binnenkomende en uitgaande verkeer van het opslagaccount1

1 Doorvoer voor één blob is afhankelijk van verschillende factoren. Deze factoren omvatten, maar zijn niet beperkt tot gelijktijdigheid, aanvraaggrootte, prestatielaag, snelheid van bron voor uploads en bestemming voor downloads. Upload grotere blobs of blokken om te profiteren van de prestatieverbeteringen van Blok-blobs met een hoge doorvoer. Specifiek, roep de Put Blob of Put Block operatie aan met een blob- of blokgrootte die groter is dan 256 KiB.

2 Pagina-blobs worden nog niet ondersteund in accounts waarvoor een hiërarchische naamruimte is ingeschakeld.

In de volgende tabel staan de maximale blok- en blobgroottes die per serviceversie zijn toegestaan.

Serviceversie Maximale blokgrootte (via Put Block) Maximale blobgrootte (via Put Block List) Maximale blobgrootte via enkele schrijfbewerking (via Put Blob)
Versie 2019-12-12 en hoger 4.000 MiB Ongeveer 190,7 TiB (4.000 MiB x 50.000 blokken) 5.000 MiB
Versie 2016-05-31 t/m versie 2019-07-07 100 MiB Ongeveer 4,75 TiB (100 MiB x 50.000 blokken) 256 MiB
Versies vóór 2016-05-31 4 MiB Ongeveer 195 GiB (4 MiB x 50.000 blokken) 64 MiB

Hot partitions: detectie, monitoring en mitigatie

Azure Blob Storage verdeelt data en verzoeken over partities om workloads te helpen opschalen. Een opslagaccount kan over beschikbare capaciteit en doorvoer beschikken, terwijl werkbelastingen die het verkeer concentreren op een smal bereik van partitiesleutels doorvoerbeperkingen op partitieniveau ondervinden.

Wanneer een enkele partitie aanzienlijk meer verkeer ontvangt dan andere partities, wordt deze een hot partitie. De partitiesleutel voor een blob combineert de opslagaccountnaam, containernaam en blobnaam, zodat sequentiële of alleen toegevoegde naamgevingsschema's het verkeer op één partitie kunnen concentreren.

Wanneer een partitie heet wordt, kan uw applicatie een verhoogde latentie ervaren en HTTP 503 (Server Busy) of HTTP 500 (Operation Timeout) antwoorden ontvangen voordat het opslagaccount zijn gedocumenteerde schaalbaarheidslimieten bereikt.

Om hot partitions te beperken:

  • Vermijd sequentiële of alleen toegevoegde blob-naamschema's die het verkeer concentreren op één partitie.

  • Gebruik een exponentiële backoff-herkansingsstrategie wanneer er throttlingfouten optreden.

  • Verhoog de aanvraagpercentages geleidelijk wanneer je nieuwe workloads introduceert.

Om throttling te detecteren en de bron van overmatige vraag te identificeren, gebruik Azure Monitor-metrics en resourcelogs.

Voor meer informatie, zie Mitigate hot partitions in Azure Blob Storage.

Zie ook