Block blobs are comprised of blocks, each of which is identified by a block ID. Each block can be different in size, up to a maximum of 4 MB per block. The maximum size for a block blob is 200 GB, and a block blob can include up to 50,000 blocks. When a block blob upload is larger then the size of a single block, the file gets broken across multiple blocks.
Block blobs allow you to upload multiple blocks in parallel to decrease upload time. Each block includes a hash to verify the transfer, so you can track upload progress and re-send blocks as needed. You can upload blocks in any order, and determine their sequence in the final block list commitment step. You can also upload a new block to replace an existing uncommitted block of the same block ID.
Page blobs are a collection of pages for read and write operations. Each page is 512 bytes in size and the maximum size for a page blob is 1 TB.
Page blobs allow you to concurrently write to overlapping pages sequentially to keep pace on read/write operations. Unlike blocks, pages have an inherent order and need to be uploaded/written/read to in a sequential order. Pages can also be replaced and overwritten.
Types of Blobs
Container: A container provides a grouping of a set of blobs. All blobs must be in a container. An account can contain an unlimited number of containers. A container can store an unlimited number of blobs.
Blob: A Blob is a collection of pages or blocks that comprise a chunk of memory. The maximum size for a Block Blob is 200GB and can include up to 50,000 blocks. The maximum size for a Page Blob is 1TB for a Page Blob and can include up to 2,000,000,000 pages.
Pages/Blocks: A Page or Block is the smallest unit of storage. Blocks are used for Block Blob Storage while Page Blob Storage uses Pages. Each block can be a different size, up to a maximum of 4 MB. Each page is a 512 byte page .
In this example, each of the drives of the virtual machine is mapped to a virtual hard drive file (VHD). Each VHD is a Block Blob. All of the Block Blobs are stored together in a container and that container is linked to an Azure Storage Account. If this virtual machine ever needed to be migrated, all of the respective drives/blobs would need to be moved and a new virtual machine needs to be setup to point to them. This decentralization of storage allows for quick and easy migration of servers on Azure.