ElasticPress日本語設定2019年版

閲覧数: 65(0)

ElasticsearchをWordPressで使用するために導入しているプラグイン「ElasticPress」最新の使用状況をまとめてみました。大きな方針変更として、これまで「analysis-kuromoji」を使用していたトークナイザーを「Sudachi」に変更しました。まだ基本的な使い方しかしていないので何とも言えませんが、これから徐々にカスタマイズと言うか方向性を合わせて行きたいと思います。という事でとりあえず基本設定編です。

プラグインの導入はWordPreeのプラグインメニューから基本通りに行います。「ElasticPress」で検索して新規追加するだけです。WordPressと同一サーバー上にElasticsearchが稼働しているのであれば、設定で「http://localhost:9200」と設定することで接続は完了します。このサイトは「前回の記事」でElasticsearchを分離したので「http://分離したサーバーのアドレス:9200」と設定しています。この際に処理単位がデフォルトでは350文書毎になっていますが、リモート接続の場合はもう少し小さい数字にした方がタイムアウトエラーを起こしにくくなります。個人的には100以下が推奨です。

                'default'          => array(
//                  'tokenizer'   => 'standard',
//                  'filter'      => array( 'standard', 'ewp_word_delimiter', 'lowercase', 'stop', 'ewp_snowball' ),
//                  'char_filter' => array( 'html_strip' ),
                    'tokenizer'   => 'sudachi_tokenizer',
                    'filter' => array( 'part_of_speech', 'baseform', 'ja_stop', 'normalizedform', 'standard', 'ewp_word_delimiter', 'lowercase', 'stop', 'ewp_snowball' ),
                    'char_filter' => array( 'html_strip', 'icu_normalizer', 'kuromoji_iteration_mark' ),
--- 中略 ---
            'filter'     => array(
                'part_of_speech' => array(
                    'type' => 'sudachi_part_of_speech',
                    'stoptags' => array( '助詞', '助動詞', '補助記号,句点', '補助記号,読点' ),
                ),
                'baseform' => array(
                    'type' => 'sudachi_baseform',
                ),
                'ja_stop' => array(
                    'type' => 'sudachi_ja_stop',
                    'stoptags' => array( '_japanese_', 'は', 'です' ),
                ),
                'normalizedform' => array(
                    'type' => 'sudachi_normalizedform',
                ),

基本設定では変更箇所は「tokenizer」の部分です。「standard」から「sudachi_tokenizer」に変更します。この設定では辞書の導入先を指定していないためデフォルトの値が使用されます。「/etc/elasticsearch/sudachi」フォルダに「system_core.dic」をダウンロードしておきます。辞書の最新版は「このリンク」から入手可能です。

Elasticsearch側のプラグインは「Sudachi」からソースを入手してビルドするのが一般的なようですがElasticsearchのバージョンを合わせることが可能であればSNAPSHOT版をダウンロードすることも可能です。今回は5.6.15版のSNAPSHOTに合わせてElasticsearchもダウングレードしました。ダウングレード自体はaptで実行しますが、その後更新されないようにするためホールドする必要があります。

apt install elasticsearch=5.6.15
apt-mark hold elasticsearch

ダウンロードしたSNAPSHOT版sudachiはElasticsearchのユーティリティでインストールします。

/usr/share/elasticsearch/bin/elasticsearch install file:///analysis-sudachi-elasticsearch5.6.15-1.2.0-SNAPSHOT.zip

書いてて思ったけどWordPressのプラグイン入れる前にElasticsearchのプラグインやった方がいいかもしれない、、、まぁその辺は好みでやって下さいw

なんで「Sudachi」を選んだのかってのは「Elasticsearch Sudachi」でググるといろいろ出てくると思うのでご自由にどうぞ。ここではSudachiをElasticPressと組み合わせてWordPressで使いたいって時のTIPSを紹介いたしました。

参考にしたサイト

【最終更新日: 2021年3月23日】
カテゴリーIT閑話, 公開タグ, , ,
閲覧数まとめ

閃きついでに総合計と週合計をフラグで制御する方式に変更してみた。これまではベタに関数をまるまるコピー  続きを読む

ElasticPress 3.5.6
blank

マイナーバージョンアップにも関わらず、検索スコアリングのパラメータが微調整された結果、期待する検索結  続きを読む

閃きは大事だw
blank

このサイトは、あくまでもCMSであるWordPressの構築やクラウドであるAWSの運用ノウハウ取得  続きを読む

ページナビのテキスト
blank

記事ページの下部に前後の記事(投稿)へのリンクが表示される仕様なのだが、「カテゴリーに制限」をかけて  続きを読む

緊急事態宣言で外出自粛になり...
blank

せっかくのゴールデンウィークなのに、2年連続で緊急事態宣言下となり、外出自粛中。暇なので小ネタで遊ぶ  続きを読む

検索精度を高める
blank

検索ネタを連発するのはElasticsearchやElasticPressがバージョンアップした時の  続きを読む

スポンサーリンク

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください