Skip to content

Commit 95300c8

Browse files
committed
Final
1 parent 27d4841 commit 95300c8

6 files changed

+48
-48
lines changed

articles/storage/blobs/archive-cost-estimation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: Learn how to calculate the cost of storing and maintaining data in
55
author: normesta
66

77
ms.author: normesta
8-
ms.date: 07/31/2024
8+
ms.date: 9/10/2024
99
ms.service: azure-blob-storage
1010
ms.topic: conceptual
1111
---

articles/storage/blobs/azcopy-cost-estimation.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services: storage
55
author: normesta
66
ms.service: azure-blob-storage
77
ms.topic: conceptual
8-
ms.date: 07/30/2024
8+
ms.date: 09/10/2024
99
ms.author: normesta
1010
ms.custom: subject-cost-optimization
1111
---
@@ -34,7 +34,7 @@ The following table calculates the number of write operations required to upload
3434
| Calculation | Value |
3535
|--------------------------------------------------------|-------------|
3636
| Number of MiB in 5 GiB | 5,120 |
37-
| PutBlock operations per blob (5,120 MiB / 8 MiB block) | 640 |
37+
| PutBlock operations per blob (5,120 MiB / 8-MiB block) | 640 |
3838
| PutBlockList operations per blob | 1 |
3939
| **Total write operations (1,000 * 641)** | **641,000** |
4040

@@ -67,7 +67,7 @@ The following table calculates the number of write operations required to upload
6767
| Calculation | Value |
6868
|----------------------------------------------------------------------|--------------|
6969
| Number of MiB in 5 GiB | 5,120 |
70-
| Path - Update (append) operations per blob (5,120 MiB / 4 MiB block) | 1,280 |
70+
| Path - Update (append) operations per blob (5,120 MiB / 4-MiB block) | 1,280 |
7171
| Path - Update (flush) operations per blob | 1 |
7272
| **Total write operations (1,000 * 1,281)** | **1,281,00** |
7373

@@ -126,7 +126,7 @@ The following table calculates the number of write operations required to upload
126126
| Calculation | Value |
127127
|-------------------------------------------------------------|---------------|
128128
| Number of MiB in 5 GiB | 5,120 |
129-
| Path - Update operations per blob (5,120 MiB / 4 MiB block) | 1,280 |
129+
| Path - Update operations per blob (5,120 MiB / 4-MiB block) | 1,280 |
130130
| Total read operations (1000* 1,280) | **1,280,000** |
131131

132132
Using the [Sample prices](#sample-prices) that appear in this article, the following table calculates the cost to download these blobs.

articles/storage/blobs/blob-storage-estimate-costs.md

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services: storage
55
author: normesta
66
ms.service: azure-blob-storage
77
ms.topic: conceptual
8-
ms.date: 09/04/2024
8+
ms.date: 09/10/2024
99
ms.author: normesta
1010
ms.custom: subject-cost-optimization
1111
---
@@ -27,11 +27,11 @@ Depending on how much storage space you require, it might make sense to [reserve
2727

2828
Using the [Sample prices](#sample-prices) that appear in this article, the following table compares the pay-as-you-go and reserved capacity cost of storing 100 TB (102,400 GB) of data.
2929

30-
| Calculation | Hot | Cool | Archive |
31-
|-------------------------------------------------------|--------|------|---------|
32-
| Monthly price for 100 TB of storage | $2,130 | $963 | $205 |
33-
| Monthly price for 100 TB of storage (1-year reserved) | $1,747 | $966 | $183 |
34-
| Monthly price for 100 TB of storage (3-year reserved) | $1,406 | $872 | $168 |
30+
| Calculation | Hot | Cool | Archive |
31+
|-----------------------------------------------------------|--------|------|---------|
32+
| Monthly price for 100 TB of storage | $2,130 | $963 | $205 |
33+
| Monthly price for 100 TB of storage (one-year reserved) | $1,747 | $966 | $183 |
34+
| Monthly price for 100 TB of storage (three-year reserved) | $1,406 | $872 | $168 |
3535

3636
To calculate the point at which reserved capacity begins to make sense, divide the cost of reserved capacity by the pay-as-you-go rate. For example, if the cost of 1-year reserved capacity for cool tier storage is $966 and the pay-as-you-go rate is $0.0115, then the calculation is $966 / $0.0115 = 84,000 GB (roughly **82 TB**). If you plan to store at least 82 TB of data in the cool tier for the entirety of the reservation period, then reserved capacity begins to make sense. The following table calculates break even point in TB for each access tier.
3737

@@ -42,7 +42,7 @@ To calculate the point at which reserved capacity begins to make sense, divide t
4242
| Break even for 1-year reserved capacity | 82 TB<sup>1 | 82 TB | 89 TB |
4343
| Break even for 3-year reserved capacity | 66 TB<sup>1 | 74 TB | 82 TB |
4444

45-
<sup>1</sup>The hot tier has multiple pay-as-you-go rates. The price of the first 50TB and the price of the second 50TB are factored into this calculation.<br />
45+
<sup>1</sup>The hot tier has multiple pay-as-you-go rates. The price of the first 50 TB and the price of the second 50 TB are factored into this calculation.<br />
4646

4747
To learn more about reserved capacity, see [Optimize costs for Blob Storage with reserved capacity](storage-blob-reserved-capacity.md).
4848

@@ -56,14 +56,14 @@ See [Estimate the cost of using AzCopy to transfer blobs](azcopy-cost-estimation
5656

5757
#### The cost to upload
5858

59-
When you upload data, your client divides that data into blocks and uploads each block individually. Each block that is upload is billed as a _write_ operation. A final write operation is needed to assemble blocks into a blob that is stored in the account. The number of write operations required to upload a blob depends on the size of each block. **8 MiB** is the default block size for uploads to the Blob Service endpoint (`blob.core.windows.net`) and that size is configurable. **4 MiB** is the block size for uploads to the Data Lake Storage endpoint (`dfs.core.windows.net`) and that size is not configurable. A smaller block size performs better because blocks can upload in parallel. However, the cost is higher because more write operations are required to upload a blob.
59+
When you upload data, your client divides that data into blocks and uploads each block individually. Each block that is upload is billed as a _write_ operation. A final write operation is needed to assemble blocks into a blob that is stored in the account. The number of write operations required to upload a blob depends on the size of each block. **8 MiB** is the default block size for uploads to the Blob Service endpoint (`blob.core.windows.net`) and that size is configurable. **4 MiB** is the block size for uploads to the Data Lake Storage endpoint (`dfs.core.windows.net`) and that size isn't configurable. A smaller block size performs better because blocks can upload in parallel. However, the cost is higher because more write operations are required to upload a blob.
6060

6161
Using the [Sample prices](#sample-prices) that appear in this article, and assuming an **8-MiB** block size, the following table estimates the cost to upload **1000** blobs that are each **5 MiB** in size to the hot tier.
6262

6363
| Price factor | Value |
6464
|----------------------------------------------------------|----------------|
6565
| Number of MiB in 5 GiB | 5,120 |
66-
| Write operations per blob (5,120 MiB / 8 MiB block) | 640 |
66+
| Write operations per blob (5,120 MiB / 8-MiB block) | 640 |
6767
| Write operation to commit the blocks | 1 |
6868
| Total write operations (1,000 * 641)** | 641,000 |
6969
| Price of a single write operation (price / 10,000) | $0.0000055 |
@@ -74,7 +74,7 @@ For more detailed examples, see [Estimate the cost to upload](azcopy-cost-estima
7474

7575
#### The cost to download
7676

77-
The number of operations required to download a blob depends on which endpoint you use. If you download a blob from the Blob Service endpoint, you're billed the cost of a single _read_ operation. If you download a blob from the Data Lake Storage endpoint, you're billed for cost of multiple read operations because blobs must be downloaded in 4 MiB blocks. If you download blobs from the cool or cold tier, you're also charged a data retrieval per GiB downloaded from the cool, cold, or archive tier.
77+
The number of operations required to download a blob depends on which endpoint you use. If you download a blob from the Blob Service endpoint, you're billed the cost of a single _read_ operation. If you download a blob from the Data Lake Storage endpoint, you're billed for cost of multiple read operations because blobs must be downloaded in 4-MiB blocks. If you download blobs from the cool or cold tier, you're also charged a data retrieval per GiB downloaded from the cool, cold, or archive tier.
7878

7979
Using the [Sample prices](#sample-prices) that appear in this article, the following table estimates the cost to download **1,000** blobs that are **5 GiB** each in size from the cool tier by using the Blob Storage endpoint.
8080

@@ -102,17 +102,17 @@ Using the [Sample prices](#sample-prices) that appear in this article, the follo
102102
| **Cost of read operations (1,000 * operation price)** | **$0.00044** |
103103
| **Total cost (previous section + retrieval + read)** | **$0.0068** |
104104

105-
For a complete examples, see [Estimate the cost to copy between containers](azcopy-cost-estimation.md#the-cost-to-copy-between-containers).
105+
For a complete example, see [Estimate the cost to copy between containers](azcopy-cost-estimation.md#the-cost-to-copy-between-containers).
106106

107107
## The cost to rename a blob
108108

109109
The cost to rename blobs depends on the file structure of your account and the number of blobs that you're renaming.
110110

111-
If the account has a flat namespace, there is no dedicated operation to rename a blob. Instead, your client tool will copy the blob to a new blob, and then delete the source blob. Delete operations are free. Therefore, when you rename a blob, you're billed for the cost of single _write_ operation. If the account has a hierarchical namespace, then there is a dedicated operation to rename a blob and it is billed as an _iterative write_ operation.
111+
If the account has a flat namespace, there's no dedicated operation to rename a blob. Instead, your client tool copies the blob to a new blob, and then delete the source blob. Delete operations are free. Therefore, when you rename a blob, you're billed for the cost of single _write_ operation. If the account has a hierarchical namespace, then there's a dedicated operation to rename a blob and it's billed as an _iterative write_ operation.
112112

113-
The cost of a write operation against the Blob Service endpoint is lower than the cost of an iterative write operation against the Data Lake Storage endpoint. Therefore, the cost to rename blobs one-by-one, it will cost less in accounts that have a flat namespace.
113+
The cost of a write operation against the Blob Service endpoint is lower than the cost of an iterative write operation against the Data Lake Storage endpoint. Therefore, the cost to rename blobs one-by-one, it costs less in accounts that have a flat namespace.
114114

115-
Using the [Sample prices](#sample-prices) that appear in this article, the following table calculates the cost to rename 1000 blobs.
115+
Using the [Sample prices](#sample-prices) that appear in this article, the following table calculates the cost to rename 1,000 blobs.
116116

117117
| Price factor | Hot | Cool | Cold |
118118
|---------------------------------------------------------------------------------------------|-------------|------------|------------|
@@ -121,15 +121,15 @@ Using the [Sample prices](#sample-prices) that appear in this article, the follo
121121
| Price of a single iterative write operation to the Data Lake Storage endpoint (price / 100) | $0.000715 | $0.000715 | $0.000715 |
122122
| **Cost to rename Data Lake Storage directories (1000 * operation price)** | **$0.715** | **$0.715** | **$0.715** |
123123

124-
Based on these calculations, the cost to rename 1000 blobs in the hot tier differs by **70** cents.
124+
Based on these calculations, the cost to rename 1,000 blobs in the hot tier differs by **70** cents.
125125

126126
## The cost to rename a directory
127127

128-
If the account has a flat namespace, then blobs are organized into _virtual directories_ that mimic a folder structure. A virtual directory forms part of the name of the blob and is indicated by the delimiter character. Because a virtual directory is a part of the blob name, it doesn't actually exist as an independent object. There is no way to rename a virtual directory without renaming all of the blobs that contain that virtual directory in the name. To effectively rename each blob, client applications have to copy a blob and then delete the source blob.
128+
If the account has a flat namespace, then blobs are organized into _virtual directories_ that mimic a folder structure. A virtual directory forms part of the name of the blob and is indicated by the delimiter character. Because a virtual directory is a part of the blob name, it doesn't actually exist as an independent object. There's no way to rename a virtual directory without renaming all of the blobs that contain that virtual directory in the name. To effectively rename each blob, client applications have to copy a blob, and then delete the source blob.
129129

130-
If the account has a hierarchical namespace, directories are not virtual. They are concrete, independent objects that you can operate on directly. Therefore, renaming a blob is far more efficient because client applications can rename a blob in a single operation.
130+
If the account has a hierarchical namespace, directories aren't virtual. They're concrete, independent objects that you can operate on directly. Therefore, renaming a blob is far more efficient because client applications can rename a blob in a single operation.
131131

132-
Using the [Sample prices](#sample-prices) that appear in this article, the following table calculates the cost to rename 1000 directories that each contain 1000 blobs.
132+
Using the [Sample prices](#sample-prices) that appear in this article, the following table calculates the cost to rename 1,000 directories that each contain 1,000 blobs.
133133

134134
| Price factor | Hot | Cool | Cold |
135135
|---------------------------------------------------------------------------------------------|------------|------------|------------|
@@ -138,19 +138,19 @@ Using the [Sample prices](#sample-prices) that appear in this article, the follo
138138
| Price of a single iterative write operation to the Data Lake Storage endpoint (price / 100) | $0.000715 | $0.000715 | $0.000715 |
139139
| **Cost to rename Data Lake Storage directories (1000 * operation price)** | **$0.715** | **$0.715** | **0.715** |
140140

141-
Based on these calculations, the cost to rename 1000 directories in the hot tier that each contain 1000 blobs differs by almost **$5.00**. For directories in the cold tier, the difference is over **$17**.
141+
Based on these calculations, the cost to rename 1,000 directories in the hot tier that each contain 1,000 blobs differs by almost **$5.00**. For directories in the cold tier, the difference is over **$17**.
142142

143143
## Example: Upload, download, and change access tiers
144144

145145
This example shows four months of spending based uploads, downloads, and the impact of moving objects between tiers.
146146

147147
### Parameters
148148

149-
At the beginning of each month, 1000 files are uploaded to the hot access tier. Each file is 5 GB in size. During the month, half of these files read by client workloads. After 30 days, a [lifecycle management policy](lifecycle-management-overview.md) moves the other half to the cool access tier to save on storage costs.
149+
At the beginning of each month, 1,000 files are uploaded to the hot access tier. Each file is 5 GB in size. During the month, half of these files read by client workloads. After 30 days, a [lifecycle management policy](lifecycle-management-overview.md) moves the other half to the cool access tier to save on storage costs.
150150

151151
In March, client applications read 10% of the data that is stored in the cool access tier. A lifecycle management policy is configured to move those blobs back to the hot tier after they're read.
152152

153-
20 days into April, clients once again read 10% of the data that is stored in the cool access tier. However, those blobs were stored in the cool tier for less than 30 days. Because the lifecycle management policy moves those blobs back to the hot tier before the minimum 30 days has elapsed, an early penalty is assessed. The early deletion penalty is the cost of cool storage for 10 days.
153+
Twenty days into April, clients once again read 10% of the data that is stored in the cool access tier. However, those blobs were stored in the cool tier for less than 30 days. Because the lifecycle management policy moves those blobs back to the hot tier before the minimum 30 days elapses, an early penalty is assessed. The early deletion penalty is the cost of cool storage for 10 days.
154154

155155
### Calculations
156156

0 commit comments

Comments
 (0)