Railsで使えるGem

ElasticSearchをRubyから使う~elasticsearch-ruby

投稿日:

gem elasticsearch-ruby

前提として、ubuntu serever 14.04にelasticsearchがインストール済みの環境とします.

elasticsearch-rubyはRubyでElasticsearchを使うことができるgem.

elastic/elasticsearch-ruby

その他に、railsから使うことを想定したelasticsearch-railsやrailsのモデルと容易にインテグレートできるsearchkickといったgemがある.

elasticsearch-rubyは、elasticsearch-apiとelasticsearch-transportとに分けられる.
elasticsearch-apiはElasticsearchのREST APIを操作でき、elasticsearch-transportはclusterに接続することができる.

参考: Elasticsearch API 一覧

今回はelasticsearch-apiを触ってみた.

環境

ElasticSearch 1.5.2
gem
elasticsearch (1.0.8)
elasticsearch-api (1.0.7)
elasticsearch-transport (1.0.7)

インスタンス作成

メソッド一覧

情報取得

ドキュメントの作成

index、typeを指定して、bodyでデータを挿入する.
idを指定しないと、idは自動で作成される.

ドキュメントの更新

updateメソッドでは、パーシャルアップデートをする.

ドキュメントの作成・更新

indexメソッドは、ドキュメントがなければ作成して、あれば更新する.

ドキュメントの読込

getメソッドでindex、type、idを取得して対象ドキュメントを取得できる.

mgetメソッドで複数のドキュメントを取得できる.

ドキュメントの検索

searchで検索する.

全インデックス対象

elasticsearchのクエリーを投げることもできる.
term句
value: ‘world’に10倍の価値をつける

terms句
配列の語句の2つ両方に該当する.

配列の語句の少なくとも2つに該当する.

match句
検索語句自体を分析して最適なクエリーを作成する.

ドキュメントの削除

deleteメソッドでidを指定してドキュメントを削除できる.

-Railsで使えるGem
-,

執筆者:

関連記事

Refinery CMS3.0にBootstrap3.1を適用する

目次1 Gemfile2 Sprocketを設定3 application.htmlをoverrideする4 Grid Layout5 Navbar6 Panel7 Well8 できた Gemfile …

Rails4.2でselectを絞込できるselect2を使ってみた〜select2

By: Metropolitan Transportation Authority of the State of New York – CC BY 2.0 目次1 select22 Ge …

Rails3.2でdocxを作成

  途中経過 github.com/jawspeak/ruby-docx-templater これを試してみた まずローカル環境にgemをダウンロード [crayon-58af2da1e0a …

Rails3.2でFacebook風インターフェイスでタグづけ〜acts-as-taggable-on+jquery.tokenInput

By: Mauquoy Token Company – CC BY 2.0 railscasts.com/episodes/258-token-fields?language=ja&#03

Railsでjavascriptやcoffeescriptをつかうとき便利かもしれないGem

By: Stan Dalone & Miran Rijavec – CC BY 2.0 目次1 oj2 gon3 js-routes4 rails-dev-tweaks oj gi …