23:27OSSElasticsearchElasticsearchで普段よく利用するコマンドやクエリの覚書です。これまで手元のメモ帳に残していましたが増えてきたのでそのままこちらへメモしておきます。ElasticsearchのAPIを利用した基本操作やアップグレードなどの運用方法。その他、Elasticsearchに関する参考情報をまとめています。Elasticsearchは7系を使ってます。2台でHA構成にするとスプリットブレインを起こすスポンサーリンクインデックスの操作Elasticsearchの操作には言語別の専用クライアントやkibanaがあるが、LInuxのcurlコマンドで操作するのが何だかんだで楽。付けておくとレスポンスが見やすい。}}'インデックスの設定更新インデックスの設定を変更した場合に行う操作。インデックス単位のリロードみたいなもの。localhost:9200/myindex-1/_mapping?prettyテンプレートの操作テンプレート登録インデックスの設定はテンプレート化しファイルに保存しておくと管理しやすい。localhost:9200/_template/myindex_template?prettyエイリアスの操作インデックスにはエイリアス名を設定する事ができる。アプリケーション側の参照にこのエイリアス名を設定しておけば、インデックスの切り替えも無停止でできる。localhost:9200/myindex/_alias?pretty全エイリアスを確認する場合。エイリアスを付け替える例。すると無停止でインデックスを切り替えることが出来る。検索する検索クエリをチューニングする時は補完機能があるkibanaの方がやりやすいかも。部分にドキュメントのIDを指定する。localhost:9200/myindex-1/_doc/<_id>?prettyダンプ&リストア別のサーバへインデックスを丸ごとコピーしたい場合はこの順に作業する。インストール手順にあるelasticsearch.ymlへの出力先ディレクトリの設定が必要。"*"ダンプデータは固めて転送する。user@newhost:リストアダンプデータを解凍して配置。なっている事を確認する。myindex-3"}'Elasticsearchのインストールと初期設定インストールCentOS7にインストール例。Elasticsearchはyumでインストールが可能。各種アップグレードElasticsearch&kibanaの起動シャードの再配置を有効化するElasticsearchをクラスタ構成にしている場合は全ノードでこの作業を繰り返す。Clientテンプレートの設定方法など日本語の検索は形態素解析とN-Gramのハイブリッド型がいいみたい。類似した文章を探すならベクトル検索が結構いい感じに使える。前処理をした独自データでWord2Vecのモデルを構築すると尚良い。参考にしたページgensimのWord2Vecを使ってみる。キーワードサジェスト日本語のための設計2台でHA構成にするとスプリットブレインを起こす2台構成だとスプリットブレインを起こすので、Elasticsearchでクラスタリングしたい場合は3台以上で構成する必要があるらしい。