@johtaniの日記 2nd

@johtani ‘s blog 2nd edition

Elasticsearch Server 2nd Editionのファーストインプレッション

Elasticsearch server 2nd editionが発売されています。

私が翻訳したのは前のバージョンですが。。。 まずは、目次を元にどのくらい変わってるかを見てみました。 (全部まだ読んでなくて。。。)

1章 Getting Started with the Elasticsearch Cluster

冒頭に、全文検索とは、転置インデックスとはどんなものか、 Luceneの簡単なアーキテクチャの仕組みについて説明が追加されています。 検索の仕組みを知らない人が読んでもわかりやすくなっています。

インストール方法なども少し追記されています。 バージョニングと簡単なデータ登録と検索方法についてもここで触れられています。 検索結果の構造の説明もちょっとあります。 まず簡単に触ってみるというところまでが1章でまとめられた感じです。

2章 Indexing Your Data

新しく、切りだされた形です。 前のバージョンでは1章で説明されていた、Mapping周りが切りだされています。 シャードやレプリカの説明もこちらです。

IPアドレスタイプ(IPv4のみ)とtoken_countタイプの説明も追加されてます。 similarityやpostingsフォーマットなどは新しく追記されています。 また、メタフィールドと呼ばれる_typeなどはこちらに移動しているようです。 マージ処理などの説明も追記されています。このあたりは、Mastering ElasticSearchに 記載されているものが移植された感じでしょうか。

3章 Searching Your Data

前のバージョンでは2章だった章です。 クエリについては1.0で追加されたsimple_query_stringなどが追記されています。 constant_scoredismaxなどもです。

また、前のバージョンの3章で説明されていたハイライトや8章で触れられていたvalidate APIについても 移動しています。

4章 Extending Your Index Structure

前のバージョンの3章で触れられていた、データの構造に関する部分がこの章になります。 親子や配列、ネスト等のデータのインデックスや検索の方法です。

5章 Make Your Search Better

スクリプティングや言語判定などの仕組みが記載されています。 また、ブーストについても同様です。Synonymについてもここです。 スパンクエリについては省略されたのかな?

6章 Beyond Full-text Searching

1.0の目玉機能の一つであるAggregationの説明から始まります。 その後、ファセットやPercolatorについてです。メモリに関する注意点もありそうです。 また、Geoについての説明がこちらに移動されていました。 scroll APIについてもこちらで説明されています。

7章 Elasticsearch Cluster in Detail

前の7章で記載されていたElasticsearchの分散の仕組み(Node Discovery)についての記載があります。 また、1.0で追加されたcircuit breakerやスレッドプール、インデックスのリフレッシュレートなど、Mastering ElasticSearchの 内容も追記されている気がします。

インデックスやマッピングのテンプレート機能についてもここで説明があるみたいです。

8章 Administrating Your Cluster

1.0で追加されたsnapshot/restoreの説明から始まります。 あとは、前のバージョンの7章で説明されていたクラスタ管理用のAPIについての説明です。 いくつか(例えばcat API)、1.0で追加されています。

また、シャードのリバランスの話も追加されているようです。 エイリアスやプラグインの話はこちらに移動してるみたいです。

感想

ということで、とりあえず、駆け足で目次ベースで違いを見てみました。 Mastering ElasticSearchでの 知見がフィードバックされ、しかも1.0(すでに1.3が出そうな勢いですが。。。)にバージョンアップされた内容になっています。 冒頭がわかりやすくなっているので、検索をやったことのない方にもおすすめな書籍になった気がします。 英語が苦にならなければ、おすすめの一冊だと思います。

来月から読み進めるつもりなので、また、面白い内容があったら感想を書いていこうと思います。 (また翻訳できるといいかもなー)

Comments