0
0
Azurecloud~10 mins

Blob storage (block, append, page) in Azure - Step-by-Step Execution

Choose your learning style9 modes available
Process Flow - Blob storage (block, append, page)
Start: Choose Blob Type
Append Blob Selected?
NoPage Blob Selected?
Upload blocks
Commit blocks
Blob ready
End
The flow starts by selecting the blob type. Depending on the type, data is uploaded differently: blocks for block blobs, appended for append blobs, and pages written for page blobs. Each ends with the blob ready for use.
Execution Sample
Azure
1. Select blob type: block
2. Upload block 1
3. Upload block 2
4. Commit blocks
5. Blob ready
This example shows uploading a block blob by uploading blocks and then committing them to finalize.
Process Table
StepActionBlob TypeData StateResult
1Select blob typeblockemptyReady to upload blocks
2Upload block 1blockblock 1 uploadedBlock stored temporarily
3Upload block 2blockblock 1 and 2 uploadedBlocks stored temporarily
4Commit blocksblockblocks committedBlob finalized with blocks
5Blob readyblockcommitted blocksBlob available for read/write
6Select blob typeappendemptyReady to append data
7Append data chunk 1appendchunk 1 appendedData appended to blob
8Append data chunk 2appendchunks 1 and 2 appendedData appended to blob
9Blob readyappendappended dataBlob available for append/read
10Select blob typepageemptyReady to write pages
11Write page 1pagepage 1 writtenPage data updated
12Write page 2pagepages 1 and 2 writtenPage data updated
13Blob readypagewritten pagesBlob available for random read/write
14Select blob typeinvalidemptyError: Invalid blob type selected
💡 Execution stops after blob is ready or invalid blob type is selected.
Status Tracker
VariableStartAfter Step 2After Step 3After Step 4Final
blob_typenoneblockblockblockblock
data_stateemptyblock 1 uploadedblock 1 and 2 uploadedblocks committedcommitted blocks
blob_statusnot readynot readynot readyreadyready
Key Moments - 3 Insights
Why do block blobs require committing blocks after uploading?
Because blocks are uploaded separately and only combined into a single blob after commit, as shown in steps 2-4 in the execution_table.
Can you append data to a block blob directly?
No, appending data is only supported by append blobs. Block blobs require uploading blocks and committing them, as seen in the execution_table steps for append vs block blobs.
Why must page blobs write data in pages?
Page blobs store data in fixed-size pages allowing random read/write access, so data must be written in page-sized chunks, as shown in steps 11-12.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what is the data_state after step 3?
Ablock 1 uploaded
Bblock 1 and 2 uploaded
Cblocks committed
Dempty
💡 Hint
Check the 'data_state' column for step 3 in the execution_table.
At which step does the blob become ready for append blob type?
AStep 9
BStep 7
CStep 8
DStep 6
💡 Hint
Look for 'Blob ready' with blob type 'append' in the execution_table.
If you select an invalid blob type, what happens according to the execution_table?
ABlob is ready immediately
BData is uploaded anyway
CError: Invalid blob type selected
DBlocks are committed automatically
💡 Hint
Check the last row of the execution_table for invalid blob type behavior.
Concept Snapshot
Blob storage types:
- Block blobs: upload blocks, then commit to finalize.
- Append blobs: append data chunks sequentially.
- Page blobs: write fixed-size pages for random access.
Choose type first, then upload data accordingly.
Each type suits different storage needs.
Full Transcript
Blob storage in Azure has three types: block, append, and page blobs. The process starts by selecting the blob type. For block blobs, you upload data in blocks and then commit these blocks to finalize the blob. Append blobs allow you to add data chunks sequentially without committing. Page blobs store data in fixed-size pages, enabling random read and write access. If an invalid blob type is selected, an error occurs and the process stops. This flow ensures data is stored efficiently based on the blob type chosen.