監控 DAX - Amazon DynamoDB

監控 DAX

可監控主要指標 (如快取命中率),以確保 DAX 叢集維持最佳效能、協助問題診斷,並判斷何時需擴展叢集。定期檢查關鍵指標,可協助您依工作負載需求調整叢集規模,以維持效能、穩定性與成本效益。如需 DAX 監控的詳細資訊,請參閱 生產監控

下列列出您應監控的主要指標:

  • 快取命中率 – 顯示 DAX 提供快取資料的效率,並減少對底層 DynamoDB 資料表的存取需求。快取未命中次數偏低表示叢集快取效率良好。但若快取命中次數偏低,可能表示需重新檢視快取 TTL 設定,或工作負載不適合快取。

    使用 Amazon CloudWatch 計算 DAX 叢集的快取命中率。比較 ItemCacheHitsItemCacheMissesQueryCacheHitsQueryCacheMisses 等指標以取得此比率。下列公式說明快取命中率的計算方式。使用此公式計算時,請以快取命中次數除以快取命中與未命中次數的總和。

    Cache hit ratio = Cache hits / (Cache hits + Cache misses)

    快取命中率介於 0 與 1 之間,並以百分比顯示。百分比越高,表示整體快取使用率越佳。

  • ErrorRequestCount – 統計節點或叢集回報使用者錯誤的請求數,其中 ErrorRequestCount 包含節點或叢集被限流的請求。監控使用者錯誤有助識別應用程式中的擴展設定錯誤,或熱門項目與分割區的存取模式。

  • 操作延遲 – 監控進出 DAX 叢集的讀寫操作延遲,有助識別潛在效能瓶頸。延遲上升可能表示 DAX 叢集組態或網路存在問題,或需進行擴展。

  • 網路耗用量 – 持續監控 NetworkBytesInNetworkBytesOut 等指標,以掌握 DAX 叢集的網路流量。網路輸送量異常增加可能表示用戶端請求量上升,或查詢模式效率不佳導致資料傳輸增加。

    監控網路使用量可協助您有效管理 DAX 叢集成本。同時可確保網路不成為叢集效能瓶頸。

  • 移出率 – 顯示快取項目被移除以騰出空間給新項目的頻率。若移出率隨時間上升,可能表示快取容量不足,或快取策略不佳。

    在 CloudWatch 中監控 EvictedSize 指標,以判斷快取容量是否符合工作負載需求。若總移出量持續增加,您可能需要向上擴展 DAX 叢集以支援更大快取容量。

  • CPU 使用率 – 表示節點或叢集的 CPU 使用百分比。這是任何資料庫或快取系統中需重點監控的關鍵指標。高 CPU 使用率可能表示 DAX 叢集已超載,需要擴展以因應增加的需求。

    監控 DAX 叢集的 CPUUtilization 指標。若 CPU 使用率持續接近或超過 70–80%,請依下節說明考慮向上擴展 DAX 叢集

    若傳送至 DAX 的請求數超出節點容量,DAX 會限制其接受額外請求的速率。DAX 會透過傳回 ThrottlingException 來達成此行為。DAX 會持續評估叢集的 CPU 使用率,以判斷可處理的請求量,同時維持叢集的穩定運作狀態。

    您可以監控 DAX 發布至 CloudWatch 的 ThrottledRequestCount 指標。如果您每隔一段時間就會看到這些例外狀況,請考慮擴展您的叢集。

使用監控資料進行 DAX 叢集擴展

您可透過監控 DAX 叢集的效能指標,判斷是否需向上擴展或縮減規模。

  • 向上或橫向擴展 – 若 DAX 叢集出現高 CPU 使用率、快取命中率偏低 (在最佳化快取策略後),或操作延遲過高,建議向上擴展叢集。新增節點 (亦稱橫向擴充) 有助於更均衡地分散負載。若工作負載的每秒寫入量持續增加,您可能需要選用更高效能的節點 (向上擴展)。

  • 縮減規模 – 若 CPU 使用率與操作延遲持續低於設定閾值,可能表示資源配置過度。在此情況下,請縮減節點規模以降低成本。在低使用率期間,您可將節點數量減至 1,但無法完全停用叢集。