2015年2月6日金曜日

ElasticSearch 決定版ガイドで学習 その1

ElasticSearch導入のための学習とまとめ。後でもっと綺麗にまとめます。多分・・・。

環境

  • vagrant1.6.5
  • centos6.5

javaをinstall

Elasticsearchを動かすにはjavaが必要なのでインストール


// 動作に必要なjavaの導入
yum install java-1.7.0-openjdk

Elasticsearch install

rpm版をダウンロードして利用します


// rpm DLしてinstall
sudo rpm -ivh https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.4.2.noarch.rpm

### NOT starting on installation, please execute the following statements to configure elasticsearch to start automatically using chkconfig
 sudo /sbin/chkconfig --add elasticsearch
### You can start elasticsearch by executing
 sudo service elasticsearch start

// chkconfigは有効にしないで実行
sudo service elasticsearch start

ブラウザを開いてhttp://192.168.33.19:9200/にアクセス。(192.168.33.19はvagrantで適当に指定)


{
  "status" : 200,
  "name" : "Brigade",
  "cluster_name" : "elasticsearch",
  "version" : {
    "number" : "1.4.2",
    "build_hash" : "927caff6f05403e936c20bf4529f144f0c89fd8c",
    "build_timestamp" : "2014-12-16T14:11:12Z",
    "build_snapshot" : false,
    "lucene_version" : "4.10.2"
  },
  "tagline" : "You Know, for Search"
}

きちんと動作しています。

さて、まずは基本からきっちり学んでいきましょう。急がばまわれはいつの時代、どこの世界も共通項。

まずは公式サイトのdefinitive guideに目を通します。せっかくなので日本語に翻訳した超短縮要訳も載せておきます。

決定版ガイド超短縮要訳

who should read this book

Elasticsearchは素晴らしい技術だよ。規約に沿っている限りは、楽々スケールできる。
製品版の前に安定したクラスターの作り方を理解しなさい。
メルトダウンを避けるためにもガイドは読もうな。

Why We Wrote This Book

Elasticsearchは説明が必要だ。このガイドは初心者に理解できるように書いたよ。
既存のリファレンスドキュメントは機能の使い方を説明している。このガイドでは、なぜ、そしていつ、Elasticsearchの様々な機能を使うべきかを説明しよう。

Elasticsearch version

1.4.0について説明する。でも、すぐ進化するから気をつけてね。

How to Read This Book

複雑なプロセスもきちんと理解しよう。
Life Inside a Cluster, Distributed Document Store, Distributed Search Execution, and Inside a Shardを読むと理解が深くなるよ。だから、ちゃんと読んどきー。
最初は順番に読んでいきなさい。Proximity Matching and Partial Matchingは必要に応じて読みなさい。

Navigating This Book

7つのパートがある

「you know, for search」…から「Inside a Shard」は基本。いいからやれ。

「Structured search…」から「Controlling Relevance」は文字の有意(確率的に偶然とは考えにくく、意味があると考えられる)性や部分マッチ。

「Getting Started with Languages」から「Typoes and Mispelings」は語幹処理、類語、あいまい検索。

online resources, conventions used in this book,using code examples, acknowledgments

不要

you know, for search

Luceneは素晴らしい検索エンジンだが複雑だ。Elasticsearchはもっと素晴らしい検索エンジンなうえに簡単だ。

Installing Elasticsearch

marvel入れるとブラウザで見れて便利だよ。無料じゃないので注意。

Installing Elasticsearch

cluster.nameはデフォルトでなく、適当な名称に変更しなさい。同じネットワーク内で動かすなら一意な名前にしないと駄目だよーん。
cluster.nameはconfigディレクトリのelasticsearch.ymlを変更して再起動すれば変更できます。


// conf
cd /etc/elasticsearch

ls -l
-rw-r--r-- 1 root root 13476 Dec 16 14:12 elasticsearch.yml
-rw-r--r-- 1 root root  1512 Dec 16 14:12 logging.yml

vi elasticsearch.yml


################################### Cluster ###################################

# Cluster name identifies your cluster for auto-discovery. If you're running
# multiple clusters on the same network, make sure you're using unique names.
#
cluster.name: elasticsearch-changed

再起動して、ブラウザを開いてhttp://192.168.33.19:9200/に再びアクセス。


// 再起動
sudo service elasticsearch restart

{
  "status" : 200,
  "name" : "Hate-Monger",
  "cluster_name" : "elasticsearch-changed",
  "version" : {
    "number" : "1.4.2",
    "build_hash" : "927caff6f05403e936c20bf4529f144f0c89fd8c",
    "build_timestamp" : "2014-12-16T14:11:12Z",
    "build_snapshot" : false,
    "lucene_version" : "4.10.2"
  },
  "tagline" : "You Know, for Search"
}

cluster_nameが変更されているのが確認できました。

シャットダウンは、Ctrl-Cか、shutdown APIを呼びだしなさい


curl -XPOST 'http://192.168.33.19:9200/_shutdown'

コマンド叩くとelasticsearchが止まります。

長くなるので続きます。
次はTalking to Elasticsearchからです。

参照

この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...