【发布时间】:2018-09-24 03:23:53
【问题描述】:
我们有一个将记录发送到 Elasticsearch 服务集群的 firehose。我们的集群已满,一些记录故障转移到 S3。 https://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#retry 的文档表明失败的记录可用于回填:“跳过的文档将传送到 elasticsearch_failed/ 文件夹中的 S3 存储桶,您可以将其用于手动回填”但我找不到任何有关如何完成此操作的文档。
查看记录,它们似乎是包含 JSON blob 的文本文件的 gzip 文件,其中“rawData”字段包含我们发送到 firehose 的原始记录的 base64 编码字符串。
是否有现成的工具可以从 S3 中处理这些 gzip 文件、分解它们并重新提交记录?该文档暗示您可以“仅手动回填”,这是一个非常标准化的流程,所以我的假设是之前有人这样做过,但我无法找到方法。
【问题讨论】:
-
您找到任何合适的解决方案了吗?我还在网上搜索对此的一些“内置”支持。 AWS Data Pipeline 提供了一种更好的方法,您可以重新运行失败的实例。
标签: elasticsearch amazon-kinesis-firehose