Differences between Azure Block Blob and Page Blob

2019-01-21 13:01发布

As I recently started mingling around with Windows Azure, I've came up to a situation where, which one to go for between the Block Blob & Page Blob. I'm currently in progress of uploading some text, csv or dat files to a blob storage and then do a MapReduce program for it using my C# program. Yes I've gone through some articles such as article1, article2.

But couldn't get a clear idea from them. To cut short, Block Blob vs Page Blob. Any help would be appreciated.

4条回答
Luminary・发光体
2楼-- · 2019-01-21 13:37

Davids answer points out the differences between page and block blobs. However there are also Append Blobs. In short:

  • Block Blobs: For large objects that doesn't use random read and write operations. e. g. Pictures
  • Page Blobs: Optimized for random read and write operations. e. g. VHD
  • Append Blobs: Optimized for append operations. e. g. Logs
查看更多
甜甜的少女心
3楼-- · 2019-01-21 13:40

The differences are very-well documented on msdn, here. TL;DR:

  • Block blobs are for your discrete storage objects like jpg's, log files, etc. that you'd typically view as a file in your local OS. Max. size 200GB 4.77TB. Regular (non-Premium) storage only.
  • Page blobs are for random read/write storage, such as VHD's (in fact, page blobs are what's used for Azure Virtual Machine disks). Max. size 8TB. Supported by both regular and Premium Storage.

Note: Premium page blobs have specific sizings (unlike regular page blobs, which can be any size up to 8TB).

  • 32GB
  • 64GB
  • 128GB
  • 512GB
  • 1024GB
  • 2048GB
  • 4096GB

Premium storage provides guaranteed IOPS and throughput, depending on the page blob size chosen (from 120 IOPS+25MB/s @ 32GB to 7500 IOPS+250MB/s @ 2048GB & 4096GB). Specific details around IOPS+throughput details are documented here.

查看更多
我命由我不由天
4楼-- · 2019-01-21 13:44

Block blobs Block blobs are used to hold text or binary files up to ~5 TB (50,000 blocks of 100 MB) in size. The primary use case for block blobs is the storage of files that are read from beginning to end, such as media files or image files for websites. They are named block blobs because files larger than 100 MB must be uploaded as small blocks, which are then consolidated (or committed) into the final blob.

Page blobs
Page blobs are used to hold random-access files up to 8 TB in size. Page blobs are used primarily as the backing storage for the VHDs used to provide durable disks for Azure Virtual Machines (Azure VMs). They are named page blobs because they provide random read/write access to 512-byte pages.

Append blobs
Append blobs are made up of blocks like block blobs, but they are optimized for append operations. These are frequently used for logging information from one or more sources into the same blob. For example, you might write all of your trace logging to the same append blob for an application running on multiple VMs. A single append blob can be up to 195 GB

Ref: https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/Understanding-Block-Blobs--Append-Blobs--and-Page-Blobs

https://docs.microsoft.com/en-us/learn/modules/connect-an-app-to-azure-storage/2-explore-azure-storage

查看更多
看我几分像从前
5楼-- · 2019-01-21 13:55

Block blobs let you upload large blobs efficiently. Block blobs are comprised of blocks, each of which is identified by a block ID. You create or modify a block blob by writing a set of blocks and committing them by their block IDs. Each block can be a different size, up to a maximum of 100 MB (4 MB for requests using REST versions before 2016-05-31), and a block blob can include up to 50,000 blocks. The maximum size of a block blob is therefore slightly more than 4.75 TB (100 MB X 50,000 blocks). For REST versions before 2016-05-31, the maximum size of a block blob is a little more than 195 GB (4 MB X 50,000 blocks).

Page blobs are a collection of 512-byte pages optimized for random read and write operations. To create a page blob, you initialize the page blob and specify the maximum size the page blob will grow. To add or update the contents of a page blob, you write a page or pages by specifying an offset and a range that align to 512-byte page boundaries. A write to a page blob can overwrite just one page, some pages, or up to 4 MB of the page blob. Writes to page blobs happen in-place and are immediately committed to the blob. The maximum size for a page blob is 1 TB.

Ref: https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/Understanding-Block-Blobs--Append-Blobs--and-Page-Blobs

查看更多
登录 后发表回答