Official
Kibana4 Elasticsearch Inc. Jun Ohtani @johtani
- SpeakerDeck
- kibana4の紹介
- データを探索 -> グラフ化 -> ダッシュボード作成を簡単にするように配慮
- kibana4からバックエンドから立ち上げ
- kibana3の違い
- 1画面で完結
- 黒いUIカラー
- HTML+JSオンリー
- Rubyによるバックエンドサーバーの用意
- セキュリティ向上(ElasticSearchが公開される必要なし)
- Java必須(JRuby)
- ElasticSearch1.4.0〜
- Discover/Visualize/Dashboardに分割
- 検索条件・グラフ保存可能
- Aggregationに対応(Groupbyみたいなやつ)
- まだ可視化出来る種類が少ない(Beta版)
- 機能
- Discover(データの探索を行う画面)
- Visualize(検索結果を元にグラフを作成)
- Dashboard(保存したグラフを配置・リサイズ)
- マイルストーン
- エリアチャート
- 地図
- テーブルの表示
- Githubのroadmapラベルを参照(Highlighting,Multivalue/MultipleMetricAggs,Interactive filtering ,Link to specific document etc...)
niconicoの検索を支えるElasticsearch 株式会社ドワンゴ 伊藤 祥 さん
- Slide
- niconicoの統合検索基盤のお話
- 作った理由
- PV,滞在時間の向上
- リアルタイム検索の実現
- 検索サービスの一本化
- 何故ElasticSearchを選んだのか
- 検索結果を1秒以内に返せるから
- インデックス更新から1分以内から反映出来るから
- スケールアウトが容易なのが一番の理由
- どう使ってるのか
- 検索
- kibana
- サジェスト作成用
- アーキテクチャ
- 参照は、APIフロントを立てて、elasticsearch-railsみたいな感じで、ElasticSeachに検索後の結果にMySQLでデータを肉付けして返す。
- 更新は、RabbitMQを返してインデックス更新している。
- ノードのロール分けはしていない
- 1サービス、1インデックス、1タイプ、1レプリカ
- Mappingはフラット設計
- エイリアスを全インデックスを利用(メンテ時にノンストップで出来るように)
- 内製プラグインを使用
- 独自トークナイザ&フィルタ
- scoreの計算ロジック
- どう運用しているか
- Capistrano
- Zabbixで監視
- SlowLog
- GCLog
- CPU
- トラブル
- Sprit-brain問題。minimum_master_node設定済み。(マスターノードのFullGCによるPingTimeout、マスターノードのrestartとシャードのrerouteで回復)
- 想定外のインデックス作成
- 想定外のフィールド
- OutofMemory(ノードのrestartで復帰)
- JMeterで負荷計測
- クラスタ
- インデクシング
- 検索
- 情報源
- 辞書はサジェストでニコニコ大百科を利用
Elasticsearch at CrowdWorks 株式会社クラウドワークス 九岡 佑介 さん @mumoshu
- SlideShare
- クラウドワークス内での事例について
- 検索対象は仕事内容
- Found4GB、ディスク16GBを利用
- 工夫した点
- ElasticSearchが落ちた場合、InnoDBFTSで代替
- 一部ユーザーだけElasticSearchによる検索公開
- 非同期でインデックス更新、失敗時はインターバル変えながらリトライ。
- DynamicScriptingOff
- ObjectType/NestedObjectsしてない
- ElasticSearchのドキュメントを必要なフィードだけ部分更新
- elasticsarch-model
- elasticsarch-rails
-
crowdworks/gracefully
- 処理が失敗した時に代替処理を呼び出すを汎用化したライブラリ
-
crowdworks/elasticsearch-model-extentions
- elasticsearch-modelの追加機能集
- エイリアスを利用した無停止のインデックス再構築を1メソッドでとか
- delaydjobを利用
-
Found
- elasticsearchのホスティングサービス
- Elasticsearchにはない機能
- webUIのクラスタ設定変更
- セキュリティ(basic認証、ACL)Foundは対応している。
1分で作るElasticsearchプラグイン 株式会社エヌツーエスエム 菅谷 信介 さん
- Slide
- Elasticsearchプラグインの作り方について
- codelibs/elasticsearch-plugin-archetype
- ネイティブはJavaで作り、Jarファイルをzipでまとめる
- Java7以上とMavenを使用
- mvn packageでzipファイルを生成
- plugin installコマンドでインストール
- プラグイン集
- codelibs/elasticsearch-river-web
- codelibs/elasticsearch-solr-api
- codelibs/elasticsearch-taste
- codelibs/elasticsearch-reindexing
- codelibs/elasticsearch-dataformat
- codelibs/elasticsearch-sstmpl
- codelibs/elasticsearch-lang-handlebars
- codelibs/elasticsearch-lang-velocity
- codelibs/elasticsearch-minhash
- codelibs/elasticsearch-dynarank
- codelibs/elasticsearch-qrcache
- codelibs/elasticsearch-eventhook
- codelibs/elasticsearch-auth
- codelibs/elasticsearch-cluster-runner
- マニアックな情報はソースのみ
LT
GISとして活用するElasticsearch 船戸 隆さん
- Slide
- GIS(地理情報)の利用事例
- Elasticsearchには地理データを扱う機能がある
- マッピング(geopoint type,geo shape type)
- フィルター(geo distance filter,...)
- IngressのAPIをElasticsearchに入れてKibanaで表示してみた
- Elasticsearchと地図情報は相性が( ・∀・)イイ!!