Edited at

Elasticsearch & kibana installメモ

More than 3 years have passed since last update.


経緯


  • 24万行のCSV fileが手元にあり、Excelやgoogleスプレッドシートでは処理できないので、どうしようか検討した

  • nonエンジニアの人にも見てもらうので、可能な限り、GUIで直感的に使えるようにしたい。


方針



  • TreasureDataのwebサービス使うと、CSV fileのimportとSQL文を使った必要なdataのselectまで30分以内でできた。でも、SQL文が必須になる。

  • ElasticSerachとKibanaを使うと、かっちょいいGUIで操作ができるみたい。これでいこう。


環境


  • Ubuntu14.04


ElasticSearch2.2


  1. download zip
    https://www.elastic.co/downloads/elasticsearch


  2. unzipで解凍


  3. bin/elasticseaech -dでバックグラウンドで起動


  4. curl -X GET localhost:9200で動作確認


kibana4.4


  1. download zip
    https://www.elastic.co/downloads/kibana


  2. tar xvfzで解凍


  3. bin/kibanaで実行


embulkでcsv(tsv) fileをimport

http://www.embulk.org/docs/recipe/scheduled-csv-load-to-elasticsearch-kibana4.html


Download Embulk binary

$ sudo wget http://dl.embulk.org/embulk-latest.jar -O /usr/local/bin/embulk

$ sudo chmod +x /usr/local/bin/embulk


Install Elasticsearch plugin¶

$ embulk gem install embulk-output-elasticsearch


Loading a CSV file



  1. embulk example ./mydataで雛形作成
    ./mydataの名前、場所は任意でok


  2. .mydata/csv以下にcsv fileを保存。
    私はtsv fileを圧縮(gz)したfileを保存しました。


  3. ./mydata/seed.ymlを編集


seed.yml

in:

type: file
path_prefix: "/path/to/file/file-prefix."
out:
type: elasticsearch
index: embulk
index_type: embulk
nodes:
- host: localhost



  1. embulk guess ./mydata/seed.yml -o config.yml実行


  2. embulk preview config.yml実行


  3. embulk run config.yml実行
    注意事項としては、この時はElasticSearchが起動している必要があります。


kibanaにアクセス



  • http://x.x.x.x:5601でアクセスすると、下記のようなSetteingsタブが表示されます。よく分からなかったのですが、下記のような感じで、ワイルドカードにして、先にすすめます。



  • Discoverタブで、検索窓で直感的に検索が可能です。(詳細な使い方はこれから)



  • Visualizeタブでグラフを作成し、Dashboardタブで並べることで下記のような画面が作れます。


その他


dashboardの検索結果をcsvでdownloadしたい


  • 現在のバージョンのkibanaでは、dashboardの検索結果をcsvでDownloadできません。githubのissueには登録されていますが、まだ未対応です。


  • こちらで紹介されている、Chromeのaddonを使う事で、csv downloadができます。


daemonで起動


管理者画面を使いたい


まとめ


  • ずっと気になっていたElasticSearch+Kibanaを触ることができました。

  • Kibanaで可視化できる内容もだいたいわかりました。もう少し面白い見せ方を探っていきたいと思います。