我想為 Amazon DynamoDB 表設定存留時間 (TTL)。
簡短說明
若要管理 DynamoDB 資料表資料的資料生命週期,請使用 Amazon DynamoDB TTL。
解決方法
設定 TTL
若要在 DynamoDB 主控台中設定 TTL,請完成下列步驟:
- 開啟 DynamoDB console (DynamoDB 主控台)。
- 在導覽窗格中,選擇 Tables (資料表),然後選擇要修改的資料表。
- 在資料表詳細資訊頁面的 Additional settings (其他設定) 下,於 Time To Live (TTL) (存留時間 (TTL)) 設定選擇 Turn on (啟用)。
- 在 Turn on Time to Live (啟用存留時間) 頁面的 TTL attribute name (TTL 屬性名稱) 中,輸入唯一的屬性名稱。
注意:屬性名稱區分大小寫,並且必須與讀寫作業中的屬性定義相符。如需詳細資訊,請參閱使用 AWS 主控台啟用 DynamoDB TTL 一節中的啟用存留時間 (TTL) 。
- (選用) 若要執行 TTL 設定的預覽,請輸入日期和時間。然後,選擇 Run preview (執行預覽)。主控台會顯示您可以查看的項目範例清單。
啟用 TTL 後,屬性會在 DynamoDB 主控台中以 TTL 標記項目。
**注意:**您可以使用 AWS API、AWS CLI 或 AWS CloudFormation 來啟用 DynamoDB TTL。
TTL 的最佳做法
更新您的 TTL 組態
如果您在使用 TTL 時收到錯誤,請檢查您的 TTL 屬性。TTL 屬性名稱必須與 DynamoDB 資料表的屬性相符。若是 TTL 屬性,資料類型必須是數字類型。若是 DynamoDB 資料表中的 TTL 屬性值,該屬性必須採用秒級精度的 epoch 格式。
更新多個 TTL 屬性值
若要使用 API 更新多個 TTL 屬性值,請執行掃描作業。然後,執行 UpdateItem 呼叫來變更 TTL 屬性值。
依 TTL 屬性篩選
由於 DynamoDB 沒有結構描述,因此資料表中的某些項目可能沒有 TTL 屬性。若要篩選資料,請使用 TTL 屬性上的篩選表達式以及「不存在」的條件屬性執行掃描作業。 如需詳細資訊,請參閱掃描的篩選表達式。
設定項目的到期時間
最佳做法是在項目上次建立或更新時,設定項目的到期時間。如需詳細資訊,請參閱計算存留時間 (TTL)。
相關資訊
處理過期的項目
Epoch Converter 網站上的Epoch 和 Unix 時間戳記轉換工具
辨識 DynamoDB Streams 中的已刪除項目