0

我们是否可以不使用 logstash 直接将 dynamo db 数据流式传输到 AWS 弹性搜索服务,因为使用 logstash 会产生额外费用?在我在线阅读的所有文章中,我们可以使用 logstash 或 lambda 来实现这一点。

4

1 回答 1

1

看来您可以:https ://aws.amazon.com/blogs/compute/indexing-amazon-dynamodb-content-with-amazon-elasticsearch-service-using-aws-lambda/

我过去在 AWS 上使用过 DynamoDB,设置流以将更改从 DynamoDB 推送到端点,然后使用 Logstash 从端点读取并将更改写入 ES。看来现在您可以在流上使用 Lambda 来写入 ES 而无需 Logstash。

也就是说,Logstash 方法还会在启动时迁移 dynamoDB 表中的所有现有数据。上面列出的流/lambda 方法显然没有这样做。为了提供该功能,本文提到设置一个额外的 Kinesis Stream,将其用作 ES 编写器 lambda 的第二个输入,然后运行一些 python 代码或类似代码以将所有现有数据从 DB 加载到 kinesis 流中。

这似乎比仅仅使用 Logstash 来涵盖这两种情况要复杂得多,而且成本可能更高。

于 2018-01-03T23:57:19.937 回答