Kinesis Stream 和 DynamoDB 流之间的区别
Posted
技术标签:
【中文标题】Kinesis Stream 和 DynamoDB 流之间的区别【英文标题】:Difference between Kinesis Stream and DynamoDB streams 【发布时间】:2016-11-29 01:00:10 【问题描述】:他们似乎对我做同样的事情。谁能给我解释一下区别?
【问题讨论】:
【参考方案1】:两者的高层次区别:
Kinesis Streams 允许您生成和使用大量数据(日志、Web 数据等),其中 DynamoDB Streams 是 DynamoDB 的本地功能,可让您查看对您的 DynamoDB 表项的精细更改。
更多细节:
Amazon Kinesis Streams
Amazon Kinesis Streams 是 AWS 服务 Big Data suite 的一部分。来自developer documentation:
您可以使用 Streams 进行快速、连续的数据采集和聚合。使用的数据类型包括 IT 基础设施日志数据、应用程序日志、社交媒体、市场数据源和网络点击流数据。以下是使用 Streams 的典型场景:
加速日志和数据馈入和处理...
实时指标和报告...
实时数据分析 ...
复杂的流处理 ...
DynamoDB 流
DynamoDB 是 AWS 的 NoSQL 选项,基本单位是 tables
存储 items
。 DynamoDB Streams 是一项功能,您可以打开它以在更改发生时将所有对 items
的更改实时生成为流。打开该功能时,您可以选择写入流的内容:
DynamoDB 流通常用于复制或表审计。更多信息请访问developer guide on DynamoDB streams。
如果您偶然发现this article first,我可以看出您可能会在哪里感到困惑,它表示它们很相似。它们是共享相似 API 调用的不同服务。
【讨论】:
很好的答案!那篇文章正是我感到困惑的地方。谢谢! 这里有点晚了,但如果在更新数据库源(例如 DynamoDB 甚至 RDS 实例之前)在 Kinesis 中使用了数据,您也可以进行复制和表审计,对吗?这只是更多的应用程序级别的责任。 @WillC - 是的 - 无论来源如何,dynamo db 流都应该审核所有内容。以上是关于Kinesis Stream 和 DynamoDB 流之间的区别的主要内容,如果未能解决你的问题,请参考以下文章
从 DynamoDB 流复制到 Kinesis Data Streams 时如何维护顺序并避免重复记录?
Kinesis Stream 和 Kinesis Firehose 更新 Elasticsearch 索引
使用 Kinesis 客户端库 (KCL 2.x) 的多个使用者到 Kinesis Stream
将 AWS Lambda 数据推送到 Kinesis Stream