維運與成本

建模把你的資料放進去。維運它 — 維持寫入一致、對變更做出反應、讓舊列到期、付出正確的容量帳單、在一次區域中斷中存活,以及從一次失敗的部署中復原 — 才是決定一張 DynamoDB 表格是否值得你在正式環境中信任的那一半。

本節是一個貫穿全程的情境,而非六個彼此無關的參考頁面。你正在打造一套多租戶 SaaS 的稽核記錄 — 那份「誰在何時做了什麼」的不可變更紀錄,是每個 B2B 產品最終都得為其企業客戶推出的。一張表格,依租戶分割:

PKSKactoractionip
TENANT#acmeEVENT#2026-06-24T09:14Z#a1USER#88login.success203.0.113.7
TENANT#acmeEVENT#2026-06-24T09:15Z#a2USER#88invoice.export203.0.113.7
TENANT#globexEVENT#2026-06-24T09:15Z#b9USER#12role.granted198.51.100.4

下面每篇指南都為這同一張表格加上一項維運考量:

已讀 0 / 11測驗
DynamoDB 成本模型:為何 SQL 會隱藏帳單
為什麼在 DynamoDB 上跑 SQL 會藏起帳單 — join、任意的 WHERE 篩選與聚合如何編譯成 Scan,以及 Query 對 Scan 背後的 RCU 計算。
中階閱讀時間 4 分鐘
DynamoDB 交易
用 TransactWriteItems 的 DynamoDB 交易 — 最多 100 個全有全無的動作、4 MB 上限、加倍的寫入容量,以及衝突如何導致取消。
進階閱讀時間 6 分鐘
DynamoDB Streams
DynamoDB Streams — 24 小時的變更資料擷取日誌、四個 StreamViewType 選項、每個項目有序的記錄,以及在項目變更時觸發 Lambda。
進階閱讀時間 6 分鐘
DynamoDB TTL
當 Unix-epoch 時間戳屬性過期後,DynamoDB TTL 會自動刪除項目,通常在幾天之內,而且這些刪除不消耗寫入容量。
中階閱讀時間 4 分鐘
DynamoDB 隨需對佈建容量
DynamoDB 隨需對佈建容量 — 按請求付費對預留輸送量、各自何時較便宜,以及流量的形狀如何決定該用哪種模式。
中階閱讀時間 6 分鐘
如何設定 DynamoDB 自動擴展
在佈建容量上設定 DynamoDB 自動擴展 — 主控台與 CLI 步驟、如何挑選目標使用率與最小/最大值,以及仍會造成節流的限制。
中階閱讀時間 8 分鐘
DynamoDB 節流——為什麼會發生,以及如何修正
DynamoDB 為什麼會節流 — 四個有記載的成因、每個分割區每秒 3,000 讀取與 1,000 寫入單位的上限,以及各自的修正方式。
中階閱讀時間 8 分鐘
DynamoDB 資料表大小與項目數量
從免費的 DescribeTable 估計值取得 DynamoDB 資料表的大小與項目數(它最多落後六小時),或用 Scan Select COUNT 取得精確計數。
入門閱讀時間 5 分鐘
DynamoDB Global Tables
DynamoDB Global Tables — 跨區域主動-主動複寫、最後寫入者勝出的衝突解決、MREC 與 MRSC 一致性模式,以及 99.999% 的 SLA。
進階閱讀時間 6 分鐘
DynamoDB 備份與時間點還原
DynamoDB 備份與時間點還原 — 隨需快照對持續 PITR、1 到 35 天的視窗,以及還原不會帶回來的那些設定。
中階閱讀時間 7 分鐘
知識測驗開始測驗
檢驗你在本節學到的內容。

請依序閱讀 — 每篇都假設了前一篇的表格。從交易開始;其餘的都建立在它所寫入的事件之上。

下載 DynoTable 來在你逐步完成這個情境時,檢視、查詢並編輯這張 audit-log 表格。至於成本這一側,免費的 定價計算機能為任一種容量模式的工作負載 估價,而 TTL 轉換器能把日期轉換成 TTL 所需的 epoch 值。