我以为我创建一个表并启用流,我现在有了一个 ARN创建运动流配置某处以告诉 dynamoDb 流写入 kinesis 流我正在考虑使用https://github.com/harlow/kinesis-consumer但这是从 kinesis 读取的,或者我可以使用 ARN 并使用它直接从 dynamoDB 流中读取吗?我看得越多,我似乎越想,我必须编写一个 lambda 来读取 dynamoDB 并写入 kinesis。那是对的吗?谢谢
3 回答
拉莫斯之舞
TA贡献1820条经验 获得超10个赞
您可以为更改数据捕获 (CDC) 选择 DynamoDB Streams 或 Kinesis Data Streams。
| 特性 | 适用于 DynamoDB 的 Kinesis 数据流 | DynamoDB 流 |
|---|---|---|
| 数据保留 | 最长 1 年。 | 24小时。 |
| Kinesis 客户端库 (KCL) 支持 | 支持 KCL 版本 1.X 和 2.X。 | 支持 KCL 版本 1.X。 |
| 消费者数量 | 每个分片最多 5 个同时使用者,或者每个分片最多 20 个同时使用者(具有增强的扇出)。 | 每个分片最多同时有 2 个消费者。 |
| 吞吐量配额 | 无限。 | 受 DynamoDB 表和 AWS 区域的吞吐量配额限制。 |
| 记录交付模式 | 使用 GetRecords 通过 HTTP 拉取模型,并通过增强的扇出,Kinesis Data Streams 使用 SubscribeToShard 通过 HTTP/2 推送记录。 | 使用 GetRecords 通过 HTTP 拉取模型。 |
| 记录的排序 | 每个流记录上的时间戳属性可用于识别 DynamoDB 表中发生更改的实际顺序。 | 对于 DynamoDB 表中修改的每个项目,流记录的显示顺序与项目的实际修改顺序相同。 |
| 重复记录 | 重复的记录可能偶尔会出现在流中。 | 流中不会出现重复的记录。 |
| 流处理选项 | 使用 AWS Lambda、Kinesis Data Analytics、Kinesis data firehose 或 AWS Glue 流式 ETL 处理流记录。 | 使用 AWS Lambda 或 DynamoDB Streams Kinesis 适配器处理流记录。 |
| 耐久性等级 | 可用区提供不间断的自动故障转移。 | 可用区提供不间断的自动故障转移。 |
慕无忌1623718
TA贡献1744条经验 获得超4个赞
您可以使用 Amazon Kinesis Data Streams 捕获对 Amazon DynamoDB 的更改。根据AWS文档:
Kinesis Data Streams 捕获任何 DynamoDB 表中的项目级修改并将其复制到 Kinesis 数据流。您的应用程序可以访问此流并近乎实时地查看项目级更改。您每小时可以连续捕获和存储 TB 级的数据。您可以利用更长的数据保留时间,并且通过增强的扇出功能,您可以同时访问两个或更多下游应用程序。其他好处包括额外的审计和安全透明度。
您还可以启用从 DynamoDB 表流式传输到 Kinesis。
PIPIONE
TA贡献1829条经验 获得超9个赞
您能提供更多有关您的目标设置的信息吗?您是否计划对您的 dynamoDB 表进行某种 ETL 流程?据我所知,当您将 kinesis 流绑定到 dynamodb 表时,每次在 dynamodb 上添加、删除或更新行时,都会在关联的 kinesis 流中发布一个新事件,您可以以任何您想要的方式从中使用和使用该事件。
- 3 回答
- 0 关注
- 325 浏览
添加回答
举报
0/150
提交
取消
