AWS
Elasticsearch
Kinesis
Firehose

KinesisFirehose+ElasticSearchの連携

KinesisFirehose→AWS ElasticSearchの連携はとても簡単で、
KinesisFirehoseの作成時にElasticSearchのドメインを作っておけば、すぐに設定できます。

直接ElasticSearchにPUTするやり方もあると思いますが、
何と言ってもtypeの作成はJSONが複雑になるにつれ糞めんどくさいですよね。

でも、一度FirehoseにPUTしてしまえば、かなりのメリットがあります。

Firehose+ElasticSearch連携のメリット

  • ログをすべてS3に保存する設定にしておけば、Athena等で解析が可能。ElasicSearchのエンドポイントを削除してしまっても安心
  • ElasticSearch側にindex, typeの設定をしておく必要がない。
    • なければ自動でつくられます
  • KinesisFirehoseにPUTするものがネストしたjsonでも、ElasticSearch側はエラーを起こさずにそのネストした状態でtypeを作ってくれる
    • string, int, dateの解釈もしれてくれます。
  • KinesisfirehoseにPUTされるJSONの中身に、あらたなキーが追加されてもそれに自動で対応してくれる
    • update作業いらずですね。すごすぎる