

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 了解 DynamoDB 中 AWS 帳單和用量報告的最佳實務
<a name="bp-understanding-billing"></a>

 本文件說明與 DynamoDB 費用相關的 `UsageType` 帳單代碼。

AWS 提供成本和用量報告 (CUR)，其中包含所使用服務的資料。您可以使用 AWS Cost and Usage Report 以 CSV 格式將帳單報告發佈至 Amazon S3。設定 CUR 時，您可選擇依小時、天或月份細分時段，並決定是否依資源 ID 細分用量。如需產生 CUR 的詳細資訊，請參閱[建立成本與用量報告](https://docs.aws.amazon.com/cur/latest/userguide/creating-cur.html)

在 CSV 匯出檔中，您可看到每行列出的相關屬性。以下為可能包含的屬性範例：
+ **lineitem/UsageStartDate：**明細項目的開始日期與時間 (含)，以 UTC 表示。
+ **lineitem/UsageEndDate：**對應明細項目的結束日期與時間 (不含)，以 UTC 表示。
+ **lineitem/ProductCode：**對於 DynamoDB，此欄位值為 "AmazonDynamoDB"。
+ **lineitem/UsageType：**用量類型的特定描述代碼，如本文件所述。
+ **lineitem/Operation：**提供費用內容的名稱，例如產生費用的操作名稱 (選用)。
+ **lineitem/ResourceId：**產生用量的資源識別符。若 CUR 包含依資源 ID 細分的明細，此欄位可用。
+ **lineitem/UsageAmount：**指定時段內產生的用量。
+ **lineitem/UnblendedCost：**此用量的成本。
+ **lineitem/LineItemDescription：**明細項目的文字描述。

如需 CUR 資料字典的詳細資訊，請參閱[成本與用量報告 (CUR) 2.0](https://docs.aws.amazon.com/cur/latest/userguide/table-dictionary-cur2.html)。請注意，實際名稱會依內容而異。

`UsageType` 是一個字串，其值可能為 `ReadCapacityUnit-Hrs`、`USW2-ReadRequestUnits`、`EU-WriteCapacityUnit-Hrs` 或 `USE1-TimedPITRStorage-ByteHrs`。每個用量類型皆以可選的區域字首開頭。若未出現，則代表 us-east-1 區域。若存在，下表會對應短帳單區域代碼與標準區域代碼及名稱。

例如，名為 `USW2-ReadRequestUnits` 的用量表示在 us-west-2 區域中消耗的讀取請求單位。


****  

| 帳單區域代碼 | 區域代碼 | 區域名稱 | 
| --- | --- | --- | 
| AFS1 | af-south-1 | 非洲 (開普敦) | 
| APE1 | ap-east-1 | 亞太地區 (香港) | 
| APN1 | ap-northeast-1 | 亞太地區 (東京) | 
| APN2 | ap-northeast-2 | 亞太地區 (首爾) | 
| APN3 | ap-northeast-3 | 亞太地區 (大阪) | 
| APS1 | ap-southeast-1 | 亞太地區 (新加坡) | 
| APS2 | ap-southeast-2 | 亞太地區 (雪梨) | 
| APS3 | ap-south-1 | 亞太地區 (孟買) | 
| APS4 | ap-southeast-3 | 亞太地區 (雅加達) | 
| APS5 | ap-south-2 | 亞太地區 (海德拉巴) | 
| APS6 | ap-southeast-4 | 亞太地區 (墨爾本) | 
| CAN1 | ca-central-1 | 加拿大 (中部) | 
| 歐盟 | eu-west-1 | 歐洲 (愛爾蘭) | 
| EUC1 | eu-central-1 | 歐洲 (法蘭克福) | 
| EUC2 | eu-central-2 | 歐洲 (蘇黎世) | 
| EUN1 | eu-north-1 | 歐洲 (斯德哥爾摩) | 
| EUS1 | eu-south-1 | 歐洲 (米蘭) | 
| EUS2 | eu-south-2 | 歐洲 (西班牙) | 
| EUW1 | eu-west-1 | 歐洲 (愛爾蘭) | 
| EUW2 | eu-west-2 | 歐洲 (倫敦) | 
| EUW3 | eu-west-3 | Europe (Paris) | 
| ILC1 | il-central-1 | 以色列 (特拉維夫) | 
| MEC1 | me-central-1 | 中東 (阿拉伯聯合大公國) | 
| MES1 | me-south-1 | Middle East (Bahrain) | 
| SAE1 | sa-east-1 | 南美洲 (聖保羅) | 
| USE1 (預設) | us-east-1 | 美國東部 (維吉尼亞北部) | 
| USE2 | us-east-2 | 美國東部 (俄亥俄) | 
| UGE1 | us-gov-east-1 | 美國政府東部區域 | 
| UGW1 | us-gov-west-1 | 美國政府西部區域 | 
| USW1 | us-west-1 | 美國西部 (加利佛尼亞北部) | 
| USW2 | us-west-2 | 美國西部 (奧勒岡) | 

在以下各節中，我們使用 `REG-UsageType` 模式說明 DynamoDB 的費用，其中 REG 表示用量發生的區域，usageType 為費用類型代碼。例如，若您在 CSV 檔案中看到 `USW1- ReadCapacityUnit-Hrs` 的明細項目，代表該筆用量為 US-West-1 的佈建讀取容量。在此情況下，清單會顯示 `REG-ReadCapacityUnit-Hrs`。

**Topics**
+ [

## 輸送容量
](#bp-understanding-billing.throughput)
+ [

## 串流
](#bp-understanding-billing.streams)
+ [

## 儲存
](#bp-understanding-billing.storage)
+ [

## 備份與還原
](#bp-understanding-billing.backup)
+ [

## 資料傳輸
](#bp-understanding-billing.datatransfer)
+ [

## CloudWatch Contributor Insights
](#bp-understanding-billing.cw)
+ [

## DynamoDB Accelerator (DAX)
](#bp-understanding-billing.dax)

## 輸送容量
<a name="bp-understanding-billing.throughput"></a>

**佈建容量的讀取與寫入**

在佈建容量模式下建立 DynamoDB 資料表時，您需指定應用程式所需的讀寫容量。用量類型取決於資料表類別 (標準或標準不常存取)。您依每秒的耗用率佈建讀寫容量，但費用依佈建容量按小時計價。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-ReadCapacityUnit-Hrs | RCU 小時 | 小時 | 佈建容量模式下使用 Standard 資料表類別進行讀取的費用。 | 
| REG-IA-ReadCapacityUnit-Hrs  | RCU 小時 | 小時 | 佈建容量模式下使用 Standard-IA 資料表類別進行讀取的費用。 | 
| REG-WriteCapacityUnit-Hrs | WCU 小時 | 小時 | 佈建容量模式下使用 Standard 資料表類別進行寫入的費用。 | 
| REG-IA-WriteCapacityUnit-Hrs  | WCU 小時 | 小時 | 佈建容量模式下使用 Standard-IA 資料表類別進行寫入的費用。 | 

**預留容量的讀取與寫入**

使用預留容量，您會支付一次性預付費用並承諾一段時間的最低佈建消費額。預留容量以折扣後的小時計費。任何超過預留容量的佈建容量都會依標準佈建容量費率計費。預留容量適用於使用 Standard 資料表類別的 DynamoDB 資料表中，單一區域的佈建讀寫容量單位 (RCU 和 WCU)。1 年與 3 年的預留容量均使用相同 SKU 計費。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-HeavyUsage：dynamodb.read | RCU 小時 | 先預付後每月計費 | 預留容量讀取費用包括一次性預付款與每月月初的月費，涵蓋該月所有折扣後承諾的 RCU 小時。將包含相符的零成本 REG-ReadCapacityUnit-Hrs 明細項。 | 
| REG-HeavyUsage：dynamodb.write | WCU 小時 | 先預付後每月計費 | 預留容量寫入費用包括一次性預付款與每月月初的月費，涵蓋該月所有折扣後承諾的 WCU 小時。將包含相符的零成本 REG-WriteCapacityUnit-Hrs 明細項。 | 

**隨需容量的讀取與寫入**

在隨需容量模式下建立 DynamoDB 資料表時，您僅需支付應用程式實際執行的讀寫費用。讀取與寫入請求的價格取決於資料表類別。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-ReadRequestUnits | RRUs | 單位 | 隨需容量模式下使用標準資料表類別進行讀取的費用。 | 
| REG-IA-ReadRequestUnits | RRUs | 單位 | 隨需容量模式下使用標準不常存取資料表類別進行讀取的費用。 | 
| REG-WriteRequestUnits | WRUs | 單位 | 隨需容量模式下使用標準資料表類別進行寫入的費用。 | 
| REG-IA-WriteRequestUnits | WRUs | 單位 | 隨需容量模式下使用標準不常存取資料表類別進行寫入的費用。 | 

**全域資料表的讀取與寫入**

DynamoDB 會依各複本資料表的資源使用情況收取全域資料表用量費用。對於佈建的全域資料表，寫入請求以複寫寫入容量單位 (rWCU) 計量，而非標準寫入容量單位 (WCU)；全域資料表中的全域次要索引寫入則以 WCU 計量。對於隨需全域資料表，寫入請求以複寫寫入請求單位 (rWRU) 計量，而非標準寫入請求單位 (WRU)。用於複寫的 rWCU 或 rWRU 數量取決於所使用的全域資料表版本。定價取決於資料表類別。

全域次要索引 (GSI) 的寫入以標準寫入單位 (WCU 與 WRU) 計費。讀取請求與資料儲存的計費方式與單一區域資料表相同。

 當您在新區域中新增資料表複本以建立或擴展全域資料表時，DynamoDB 會依還原資料量 (每 GB) 向新增區域的資料表收取還原費用。還原資料依 REG-RestoreDataSize-Bytes 計費。如需詳細資訊，請參閱 [DynamoDB 的備份與還原](Backup-and-Restore.md)。跨區域複寫或將副本新增至含資料的資料表時，會產生資料傳出費用。

 當您為 DynamoDB 全域資料表選擇隨需容量模式時，僅需支付應用程式在各複本資料表上實際使用的資源費用。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-ReplWriteCapacityUnit-Hrs | rWCU 小時 | 小時 | 全域資料表 (佈建，標準資料表類別)。 | 
| REG-IA-ReplWriteCapacityUnit-Hrs | rWCU 小時 | 小時 | 全域資料表 (佈建，標準不常存取資料表類別)。 | 
| REG-ReplWriteRequestUnits  | rWRU | 單位 | 全域資料表 (隨需，標準資料表類別)。 | 
| REG-IA-ReplWriteRequestUnits | rWRU | 單位 | 全域資料表 (隨需，標準不常存取資料表類別) | 

## 串流
<a name="bp-understanding-billing.streams"></a>

DynamoDB 提供兩種串流技術：DynamoDB Streams 與 Kinesis。兩者分別有獨立的定價。

DynamoDB Streams 依讀取請求單位計費。每個 `GetRecords` API 呼叫都會視為一次串流讀取請求並計費。在 DynamoDB 觸發程序 AWS Lambda 中呼叫的 `GetRecords` API 呼叫，或在複寫中由 DynamoDB 全域資料表呼叫的 API 呼叫，您不需要付費。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-Streams-RequestsCount | 計數 | 單位 | DynamoDB Streams 的讀取請求單位。 | 

Amazon Kinesis Data Streams 依變更資料擷取單位計費。DynamoDB 會針對每次寫入 (最多 1 KB) 收取一個變更資料擷取單位費用。超過 1 KB 的項目需要額外的變更資料擷取單位。您只需為應用程式執行的寫入付費，無需管理資料表的輸送容量。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-ChangeDataCaptureUnits-Kinesis | CDC 單位 | 單位 | Kinesis Data Streams 的變更資料擷取單位。 | 

## 儲存
<a name="bp-understanding-billing.storage"></a>

DynamoDB 會根據您啟用的功能，將資料的原始位元組大小與每個項目的儲存額外負荷相加，以計算可計費資料大小。

**注意**  
與使用 `DescribeTable` 時相比，CUR 中的儲存使用量會較高，因為 `DescribeTable` 不包含每個項目的儲存額外負荷。

儲存使用量以每小時計算，但價格依每月的每小時平均費用計算。

雖然儲存 `UsageType` 使用 `ByteHrs` 作為尾碼，但 CUR 中的儲存使用量以 GB 為單位，並以 GB-月計價。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-TimedStorage-ByteHrs | GB | 月 | DynamoDB 標準資料表類別的資料表與索引所使用的儲存量。 | 
| REG-IA-TimedStorage- ByteHrs | GB | 月 | DynamoDB Standard-IA 資料表類別的資料表與索引所使用的儲存量。 | 

## 備份與還原
<a name="bp-understanding-billing.backup"></a>

DynamoDB 提供兩種類型的備份：時間點復原 (PITR) 備份與隨需備份。使用者也能從這些備份還原至 DynamoDB 資料表。下列費用適用於備份與還原。

備份儲存費用會在每月一日產生，並隨備份新增或移除於整月期間進行調整。如需更多資訊，請參閱[了解 Amazon DynamoDB 隨需備份與計費](https://repost.aws/articles/AR74LYumctRa-t7Z87uwKrlw)部落格。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-TimedBackupStorage-ByteHrs | GB | 月 | DynamoDB 資料表與本機次要索引的隨需備份所使用的儲存使用量。 | 
| TimedPITRStorage-ByteHrs | GB | 月 | 時間點復原 (PITR) 備份所使用的儲存使用量。只要啟用 PITR，DynamoDB 會在整個月持續監控相關資料表大小，以計算備份與儲存費用。 | 
| REG-RestoreDataSize-Bytes | GB | 大小 | 從 DynamoDB 備份中還原的資料總大小 (以 GB 計)，包括資料表資料、本機次要索引與全域次要索引。 | 

### AWS Backup
<a name="bp-understanding-billing.aws-backup"></a>

AWS Backup 是一種全受管備份服務，可讓您輕鬆集中和自動化雲端和內部部署中跨 AWS 服務的資料備份。 AWS Backup 會收取儲存 （暖儲存或冷儲存）、還原活動和跨區域資料傳輸的費用。下列 `UsageType` 費用會顯示於 “AWS Backup” ProductCode 下，而非 “AmazonDynamoDB”。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-WarmStorage- ByteHrs-DynamoDB | GB | 月 | DynamoDB 備份在整個月由 AWS Backup 管理所使用的儲存使用量 (以 GB-月計)。 | 
| REG-CrossRegion-WarmBytes-DynamoDB | GB | 大小 | 資料會傳輸至相同 帳戶中的不同 AWS 區域，或傳輸至不同的 AWS 帳戶。當備份從一個區域複製至另一個區域時，會產生跨區域傳輸費用。費用一律向資料來源帳戶收取。 | 
| REG-Restore-WarmBytes-DynamoDB | GB | 大小 | 從暖儲存還原的資料總大小 (以 GB 計)。 | 
| REG-ColdStorage-ByteHrs-DynamoDB | GB | 月 | 由 AWS Backup 在整個月期間管理的 DynamoDB 備份所使用的冷儲存 (以 GB-月計)。 | 
| REG-Restore-ColdBytes-DynamoDB | GB | 月 | 從冷儲存還原的資料總大小 (以 GB 計)。 | 

### 匯出與匯入
<a name="bp-understanding-billing.export-import"></a>

 您可將資料自 DynamoDB 匯出至 Amazon S3，或自 Amazon S3 匯入至新的 DynamoDB 資料表。

雖然 `UsageType` 使用 `Bytes` 作為尾碼，但 CUR 中的匯出與匯入用量是以 GB 為單位進行計量與定價。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-ExportDataSize-Bytes | GB | 大小 | 將資料匯出至 S3 的費用。DynamoDB 會根據匯出建立時的指定時間點，依據 DynamoDB 基礎資料表 (資料表資料與本機次要索引) 的大小計費。 | 
| REG-ImportDataSize-Bytes | GB | 大小 | 將資料自 S3 匯入的費用。資料大小根據 Amazon S3 中未壓縮物件的大小計算。將資料匯入含有 GSI 的資料表不會產生額外費用。 | 
| REG-IncrementalExportDataSize-Bytes | GB | 大小 | 針對從連續備份處理以產生增量匯出的資料大小所收取的費用。 | 

## 資料傳輸
<a name="bp-understanding-billing.datatransfer"></a>

資料傳輸活動可能會顯示為與 DynamoDB 服務相關。DynamoDB 不會針對傳入資料傳輸收費，也不會針對 DynamoDB 與 AWS 相同 AWS 區域內其他服務之間的資料傳輸收費 （亦即每 GB 0.00 美元）。跨 AWS 區域傳輸的資料 （例如美國東部 【維吉尼亞北部】 區域的 DynamoDB 和歐洲 【愛爾蘭】 區域的 Amazon EC2 之間） 會在傳輸的兩側收費。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-DataTransfer-In-Bytes | GB | 單位 | 從網際網路傳入至 DynamoDB 的資料。 | 
| REG-DataTransfer-Out-Bytes | GB | 單位 | 從 DynamoDB 傳出至網際網路的資料。 | 

## CloudWatch Contributor Insights
<a name="bp-understanding-billing.cw"></a>

CloudWatch Contributor Insights for DynamoDB 是診斷工具，用於識別 DynamoDB 資料表中最常存取及受限流的索引鍵。下列 `UsageType` 費用會顯示於 “AmazonCloudWatch” ProductCode 下，而非 “AmazonDynamoDB”。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-CW：ContributorEventsManaged | 已處理事件 | 單位 | 已處理的 DynamoDB 事件總數。例如，啟用 CloudWatch Contributor Insights 的資料表中，每次讀取或寫入項目都會計為一個事件。若資料表含有排序索引鍵，則會產生兩個事件的收費。 | 
| REG-CW：ContributorRulesManaged | 規則數量 | 月 | 當您啟用 CloudWatch Contributor Insights 時，DynamoDB 會建立規則以識別最常被存取的項目與最常受限流的索引鍵。此費用是因為為每個設定用於記錄 CloudWatch 貢獻者洞察的實體 (資料表與 GSI) 新增規則而產生。 | 

## DynamoDB Accelerator (DAX)
<a name="bp-understanding-billing.dax"></a>

DynamoDB Accelerator (DAX) 會依服務所選的執行個體類型按小時計費。下列費用與已佈建的 DynamoDB Accelerator 執行個體相關。下列 `UsageType` 費用會列於 “AmazonDAX” ProductCode 下，而非 “AmazonDynamoDB”。


****  

| UsageType | 單位 | 精細程度 | Description | 
| --- | --- | --- | --- | 
| REG-NodeUsage：dax-<INSTANCETYPE> | 節點小時 | 小時 | 特定執行個體類型的每小時使用量。定價以實際使用的節點小時為單位，計費期間自節點啟動至終止。任一部分節點小時皆以整小時計費。DAX 叢集中每個節點均會產生 DAX 費用。若叢集包含多個節點，帳單報告中將顯示多筆明細。 | 

執行個體類型將為下列清單之一。如需節點類型詳細資訊，請參閱 [節點](DAX.concepts.cluster.md#DAX.concepts.nodes)。
+ r3.2xlarge、r4.8xlarge 或 r5.8xlarge
+ r3.4xlarge、r4.large 或 r5.large
+ r3.8xlarge、r4.xlarge 或 r5.xlarge
+ r3.2xlarge、r5.12xlarge 或 t2.medium
+ r3.4xlarge、r4.large 或 r5.large
+ r3.xlarge、r5.16xlarge 或 t2.small
+ r4.16xlarge、r5.24xlarge 或 t3.medium
+ r4.2xlarge、r5.2xlarge 或 t3.small
+ r4.4xlarge 或 r5.4xlarge