本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
了解不同情境下的 DynamoDB 暖輸送量
以下列出在使用 DynamoDB 暖輸送量時可能遇到的多種情境。
暖輸送量與非均勻存取模式
資料表的暖輸送量可能為每秒 30,000 個讀取單位與每秒 10,000 個寫入單位,但在達到此上限前,仍可能在讀取或寫入操作中遭遇限流。這通常是因為存在熱分割區造成。雖然 DynamoDB 可持續擴展以支援幾乎無限制的輸送量,但每個分割區的限制為每秒 1,000 個寫入單位及每秒 3,000 個讀取單位。若應用程式對資料表少部分分割區發送過多流量,即便尚未達到資料表的暖輸送量上限,也可能遭遇限流。建議遵循 DynamoDB 最佳實務,以確保系統具備無縫可擴展性並避免產生熱分割區。
佈建資料表的暖輸送量
假設某個佈建資料表的暖輸送量為每秒 30,000 個讀取單位與每秒 10,000 個寫入單位,但目前的佈建輸送量僅為 4,000 個 RCU 和 8,000 個 WCU。您可透過更新佈建輸送量設定,立即將資料表的佈建輸送量擴展至 30,000 個 RCU 或 10,000 個 WCU。當您將佈建輸送量提升至超過上述數值時,暖輸送量會自動調整為新的更高值,因為這代表系統已建立新的峰值輸送量。例如,若將佈建輸送量設定為 50,000 RCU,暖輸送量將隨之提升至每秒 50,000 個讀取單位。
"ProvisionedThroughput": { "ReadCapacityUnits": 4000, "WriteCapacityUnits": 8000 } "WarmThroughput": { "ReadUnitsPerSecond": 30000, "WriteUnitsPerSecond": 10000 }
隨需資料表的暖輸送量
新建立的隨需資料表初始暖輸送量為每秒 12,000 個讀取單位與每秒 4,000 個寫入單位。資料表可立即支援持續流量,最高可達上述層級。當請求量超過每秒 12,000 個讀取單位或 4,000 個寫入單位時,暖輸送量會自動提升至更高等級。
"WarmThroughput": { "ReadUnitsPerSecond": 12000, "WriteUnitsPerSecond": 4000 }
已設定最大輸送量的隨需資料表暖輸送量
假設某個隨需資料表的暖輸送量為每秒 30,000 個讀取單位,但最大輸送量設定為 5,000 個讀取請求單位 (RRU)。在此情境中,資料表的輸送量將受限於您設定的 5,000 個 RRU 上限。任何超出該上限的輸送量請求都會遭到限流。不過,您可依應用程式需求,隨時調整該資料表的專屬最大輸送量。
"OnDemandThroughput": { "MaxReadRequestUnits": 5000, "MaxWriteRequestUnits": 4000 } "WarmThroughput": { "ReadUnitsPerSecond": 30000, "WriteUnitsPerSecond": 10000 }