我需要在每个峰值处理每秒100个记录。这些记录是简单的JSON主体,应该收集它们然后处理/转换成数据库。
一些问题......
1)Kinesis适合这个吗?或者SQS更适合?
2)使用kinesis时,我是否想使用如下所示的python示例:https://aws.amazon.com/blogs/big-data/snakes-in-the-stream-feeding-and-eating-amazon-kinesis-streams-with-python/或者我应该在KCL中实现我的生产者和消费者?有什么区别?
3)Kinesis是否为消费者的管理提供了什么,或者我只是在EC2实例上运行它们并自己管理它们?
4)访问数据的正确模式是什么 - 我无法错过任何记录,因此我假设我将从" TRIM_HORIZON"中获取记录。而不是" LATEST"。如果是这样,我该如何管理重复项?换句话说,我的消费者如何从流中获取记录并处理掉落的消费者等,并且总是知道他们正在获取所有记录?
谢谢!
答案 0 :(得分:2)
TRIM_HORIZON
。如果您的数据中存在重复项,您的消费者应该通过自己进行一些簿记来照顾它们。至于消费者等等,KCL优雅地处理这些案件。