のんびりSEの議事録

プログラミング系のポストからアプリに関してのポストなどをしていきます。まれにアニメ・マンガなど

RubyからElasticsearchを操作してみる

今回使用するGemはこちら

elasticsearch | RubyGems.org | your community gem host

前回の記事を参考に、基本的な操作をRubyからやってみました

carefree-se.hatenablog.com

インストール

  • gem install
$ gem install elasticsearch
  • Gemfile
gem 'elasticsearch'

未リリースverを使用する場合

gem 'elasticsearch', git: 'git://github.com/elasticsearch/elasticsearch-ruby.git'

Clientの利用

require 'elasticsearch'

# userとpasswordを指定する場合は、hostsのオプションに指定する
client = Elasticsearch::Client.new({log: true, hosts: { host: 'localhost', user: 'user', password: 'password' }})

health check

client.cluster.health

index一覧

client.cat.indices

index作成

client.indices.create(index: 'items')

ドキュメント作成

client.create({ index: 'items', type: 'info', id: 1, body: { title: 'Kirara', price: 520, created_at: Time.now, updated_at: Time.now } })

検索

client.search(index: 'bank', q: '*', sort: 'account_number:asc')

まだまだ触り程度なので、あとはやりながら慣れていこうと思います。