处理弹性搜索失败 - 如何在Dynamodb和Elastic Search中同步记录?

时间:2018-04-16 13:00:53

标签: amazon-web-services amazon-dynamodb aws-elasticsearch

我正在使用AWS Dynamo DB和Elastic Search。我正在寻找一些方法来保持Dynamo DB数据与Elastic Search同步,如果它们中的任何一个失败。

目前我使用lambda将我的记录推送到Elastic Search。我知道有插件 - Logstash可用,但我无法使用它,因为它需要进行大量更改。 另外,我不太喜欢扫描DynamoDB表,因为它太贵了。有没有其他方法可以达到这个目的?

2 个答案:

答案 0 :(得分:0)

如果您不想使用插件解决方案,则可以继续使用lambda但由DynamoDb Streams触发。通过这种方式,您不必扫描表格,因为流将包含添加的项目,您可以重复使用将其发送到ES的部分。

看看DynamoDB Streams and Lambda triggers

答案 1 :(得分:0)

您可以使用SQS。将失败的记录移到SQS,以后您可以安排一个lambda来从SQS读取记录,并将记录发送到ElasticSearch。