[英]DynamoDB table having TTL and triggers Kinesis Firehose
在我的 DynamoDB 表中,Kinesis Firehose 被觸發,每當添加/更新一些記錄時,它就會將我的數據轉儲到 S3。 我的 DynamoDB 表也啟用了 TTL。
刪除某些記錄時也會觸發嗎?
當物品過期時,屆時會觸發 Kinesis Firehose,S3 端會發生什么情況?
我的理解是,DynamoDB 發送到 Kinesis Data Streams 的數據格式與它發送到常規 DynamoDB 流的數據基本相同,因此,我希望行為相同。
根據Kinesis Data Streams 集成文檔(強調我的):
適用於 Amazon DynamoDB 的 Amazon Kinesis Data Streams 以異步方式運行,因此如果啟用了 stream,則不會對表的性能產生影響。 每當在表中創建、更新或刪除項目時,DynamoDB 都會向 Kinesis 發送一條數據記錄。 該記錄包含有關對 DynamoDB 表中單個項目的數據修改的信息。 具體來說,數據記錄包含被修改項目的主鍵屬性,以及被修改項目的“之前”和“之后”圖像。
這基本上就是常規 DynamoDB stream 所做的事情,並且關於 TTL-deletes 文檔說:
您可以通過在表上啟用 Amazon DynamoDB 流並處理過期項目的流記錄來備份或以其他方式處理被生存時間 (TTL) 刪除的項目。
流記錄包含用戶身份字段 Records[].userIdentity。
過期后由生存時間流程刪除的項目具有以下字段:
Records[<index>].userIdentity.type
“服務”
Records[<index>].userIdentity.principalId
“dynamodb.amazonaws.com”
tl;dr :是的,TTL 刪除也應該出現在 stream 中,並且將像任何常規刪除一樣由 Firehose 處理。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.