雑文発散

«前の日記(2015-04-14) 最新 次の日記(2015-04-16)» 編集
過去の日記

2015-04-15 [長年日記]

[Elasticsearch] 第9回 Elasticsearch 勉強会へ参加してきた

第9回 Elasticsearch 勉強会へ参加してきたのでその記録。今回は、Elastic 社(Elasticsearch 社から名前が変わった)から、なかのひと2名が講演してくれた。ちょうどいま、Elastic 社の公式なトレーニングが日本で行われているので、そのために来日されていたようだ。

講演は2つとも英語だったけど、大変ありがたいことに、リアルタイムテキスト翻訳を @yusuke さんが行なってくれたので、かなりの部分が(日本語で)把握できた。ちなみにその時のテキストが公開されている。

Resiliency in Elasticsearch and Lucene / Igor Motov さん

Elasticsearch の対障害性の話。最近はデータ数も増えているので、それを扱う Elasticsearch のノード数も増えているので、どこかのノードが壊れるのはしょっちゅうある。だから、Elasticsearch では、対障害性についてホンキ出して対応してるよという紹介。これまでやってきたことと、いまやっていること、将来的に対応予定なことを含めて話してくれた。

出てきた障害のシチュエーションはこんな感じ。

  • 電源障害
    • 単一ノードが落ちた
    • データセンタが丸ごと落ちた(恐ろしい…)
  • ハードディスク障害
    • 丸ごと破損
    • 容量不足
    • データ破損
  • クラスタ系の障害
    • ノード単体が落ちた
    • 反応しないノード
    • ネットワーク障害

こういった「対障害性」を磨いていくうちに、JVM の不具合も見つけたそうだ。この問題により、データ破損の可能性があるんだとか。なので、Elasticsearch v1.5.0 から、そういった不具合が修正されていない JVM 上では起動できないようになっているとのこと(強制起動するオプションはあるらしい)。

こういう「データが壊れないこと」に対して、まじめに取り組んでいるのは頼もしい。

Kibana4: What's New ? / Nathan Zamecnik さん

こちらは Kibana4 の機能的な話。Logstash、Elasticsearch、Kibana の組み合わせで、簡単にデータ収集からビジュアライズまでできるというざっくりという説明の後、Kibana 本体の話へ。どちらかというと「Kibana を知らない人向け」寄りの話だった。

Kibana4 では、Kibana3 までの Facet ではなく Aggregation を使って、データの絞り込み(?)を行うそうだ。オレは Kibana3 をちょいちょい使ってみた程度なので、そのことによるメリットはちょっと分からず。

その他、グラフの種類などの紹介もあった中で、ドーナツチャート(Doughnut Chart)の表示が面白かった。中心円ではおおまかなカテゴリを表示し、その外側の円グラフではもっと詳細なカテゴリ分類を表示できる。例で出てきたのは、中心円には「iOS / Android」などのカテゴリ、外側には「iPhone / iPad / iPod」などの詳細カテゴリを表示していた。

そういえば Highcharts ではどうなんだろう?と思ったら、Highcharts にもドーナツチャート(Donut Chart)があった。割とこういう表示ってあるんだな。

これを調べたところで「Doughnut」と「Donut」の違いが気になったけど、まぁ、それは別の話。

発表後の質問のコーナーで、Kibana4 の機能について質問があったんだけど、その答えが面白かった。「まだそういう機能はないけど、Kibana4 は HTML と JavaScript でできているので、簡単にハックできるよ」って話。Kibana4 からは、Node.js アプリになってたんだっけね。

確かにソースを見てみると、とっつきやすそうな印象をあたえないでもない気もしなくもない。最近 JavaScript ばっかりやってるけど、もっとこういう新し目のプロダクトのソースコードを見た方が勉強になりそうだ。