WindowsAzure‎ > ‎

Block Blob & Page Blob

Difference between Block Blob and Page Blob

Block Blobs

Page Blobs

Optimized for Streaming

Optimized for Random Read Write Operations

Maximum Size = 4MB per block

Maximum Size = 512 byte per page (this range can be modified)

Maximum Storage of Block Blob = 200 GB and up to 50,000 blocks

Maximum Storage = 1 TB

Remains uncommitted until commit is issued

Committed immediately

In PutBlob you have to specify


x-ms-blob-type: BlockBlob


In PutBlob you have to specify


x-ms-blob-type: PageBlob


Put block creates and uploads Block as a part of Blob but will not commit unit Put blocklist is issued

Put page writes a range of pages to an existing page blob available. It will not create a new blob.

Any unsuccessful calls to Put block  or Put blocklist will be garbage collected and will be removed from the blob service within a week following the last successful Put block operation. Any uncommitted blocks that were not specified in the block list for the blob will be garbage collected and removed from the Blob service

Put page is committed immediately.

Put block does not update the last modified time of an existing blob. Put blocklist operation on an existing blob, blob’s existing properties and metadata are overwritten.

Put Page with the Update option performs an in-place write on the specified page blob. Any content in the specified page is overwritten with the update.

If Put blocklist fails due to a missing block, then the missing block has to be uploaded again.

On conflict can occur when the original request does not return a status code between 100-499, or 503 (Server Busy). If one of these status codes is returned, you can be certain as to whether the request has succeeded or failed. But if the service returns a status code outside this range, there's no way to know the status of the original request.

Client must specify a valid lease ID in order to commit the block list. If invalid lease ID is specified or lease ID not issued while Put blocklist then 412 (Precondition Failed) status code is returned and block list will not be committed.

You can call leaseblob to establish 1 min lock on a blob write operations


The Blob service handles concurrent writes to overlapping pages sequentially: the last page processed by the service determines the blob's content. Therefore, to ensure the integrity of the blob's content, the client should handle writes to overlapping pages