DynamoDB 能自動調整規模嗎?

可以。DynamoDB 自動調整規模會透過 Application Auto Scaling,在你定義的上下限之內,把佈建的讀取與寫入容量調向一個目標使用率(可設定 20–90%,常見是 70%)。或者,隨需容量模式不需任何設定就會即時隨流量擴縮。兩者都能讓資料表在負載變化時保持回應,而不需要人工做容量規劃。

佈建容量的自動調整規模

你會為每張資料表(以及每個全域次要索引)建立一個擴縮政策,設定:

  • 一個目標使用率(要瞄準佈建容量的百分之多少)、
  • 最小與最大容量單位,以及
  • 要擴縮讀取、寫入,還是兩者

當消耗量越過目標時,CloudWatch 警示會觸發 Application Auto Scaling 調高或調低容量。

隨需模式

隨需容量完全免去規劃:DynamoDB 會自行把輸送量調整到符合你的流量 — 立即容納到你前一次流量高峰的兩倍 — 並依請求計費。當流量是突發式的或難以預測時,它很合適。

該選哪一個

當流量穩定且你很清楚它的樣子時,搭配自動調整規模的佈建模式通常比較便宜;隨需模式則比較單純,也更適合未知或突發的流量。

目標使用率在哪裡就不再划算

目標使用率是一個價格旋鈕,而它有一個底線 — 低於那個底線,自動調整規模就徹底輸給隨需模式。

在 us-east-1,一個寫入容量單位每小時 0.00065 美元,所以保留一個月要 0.4745 美元,換得 2,628,000 次寫入。那是每次寫入 0.00000018 美元,對上隨需模式的 0.000000625 美元,也就是當每一個保留單位都被用掉時,佈建容量便宜 3.46 倍。把它倒過來就得到損益兩平點:平均使用率低於 28.9% 時,佈建就不再划算。讀取算出來也是同樣的 28.9%,所以這是定價模型的性質,而不是某一組費率的偶然結果。

以每秒持續 1,000 次、每筆 1 KB 項目的寫入,用定價計算機估價:

容量設定佈建每月
90% 目標1,112 WCU$527.64
70% 目標1,429 WCU$678.06
50% 目標2,000 WCU$949.00
20% 目標5,000 WCU$2,372.50
隨需$1,642.50

教訓在最後兩列。20% 的目標是 AWS 接受的最低值,它保留了五倍於你流量的容量,而做同樣的事卻比按請求付費貴 44%。上面每一列都假設自動調整規模把容量精準釘在目標上,所以請把它們當成最好的情況:真實流量會四處遊走,而演算法總是慢半拍跟上,這會把實際達成的使用率拖到你所設定的值之下。

這個旋鈕買到了什麼

擴容與縮容是刻意不對稱的,而那份不對稱正是這些餘裕所買到的東西。AWS 記載擴容會在消耗容量連續兩分鐘超過目標之後觸發,縮容則要連續 15 個資料點低於目標。接著那次 UpdateTable 呼叫還要再花上幾分鐘,而在它進行的期間,超過舊上限的請求都會被節流。

調降次數也是配給制的。每個 UTC 日開始時你有四次,之後每小時再賺一次,手上最多不超過四次,因此每張資料表每天最多 27 次。全域次要索引有自己的一份額度。

所以高目標值省下的是實實在在的錢,花掉的則是那段時間所需的緩衝。隨需模式每次請求貴一些,但整個把這個取捨拿掉了。

深入了解

隨需與佈建容量的比較中比較兩者,並用定價計算機估算成本。下載 DynoTable,就能在「Table stats」中讀取一張資料表的大小與項目數估計值。

參考資料

最後驗證於 2026-07-13,對照上方連結的 AWS 官方文件。

損益兩平點於 2026-07-28 以我們自己的定價計算機計算,費率取自它從 AWS Price List API 同步而來的 us-east-1 費率。擴縮延遲與調降額度於同一天重新讀自上方連結的 AWS 文件。

不必透過主控台就能操作 DynamoDB

一款快速的 DynamoDB 桌面用戶端,可執行 DynamoDB 無法執行的真正 SQL — JOINs、GROUP BY、聚合 — 並支援視覺化編輯與使用你自己的 Bedrock 金鑰的 AI 代理。

30 天免費試用,無需信用卡 — 之後為無時間限制的免費方案。