以前embulkでCSVからelasticsearchへというのをやってみました
サービスのデータからグラフ作成したいとかそういった場合に、MySQLからデータ取ってきてelasticsearch+kibanaですぐ確認できるよねっていうことを思いついたためやってみた
embulkのインストール
- 下記参照
embulkでelasticsearchへ過去ログを入れ込む
pluginのインストール
embulk gem install embulk-input-mysql
設定
- config.yml
in:
type: mysql
host: localhost
user: user
password: ""
database: service
query: |
SELECT
date,
SUM(c),
SUM(a)
FROM report
GROUP BY
date
exec: {}
out:
type: elasticsearch
nodes:
- {host: 192.168.20.20, port: 9300}
cluster_name: dev
index: report
index_type: production
「query」でjoin普通にクエリ書けるので複雑なSQLでも特に問題ない模様
今回はサービスの売り上げとかそこらへんの長期的推移を見れたらなってところで、やってみました。
グループ化を細かくしたりしたら簡単な分析とかはできそう
cronで定期的にデータ入れるようにしておけばすぐ見れるし、便利に使えそうなので、しばらく入れてみようかなと思います
わざわざデータからグラフを描画するところをコード書いたりしなくていいのがお手軽でいいですね
