Help us understand the problem. What is going on with this article?

FESSメモ

More than 1 year has passed since last update.

Fess 10ではドキュメントの言語判定を行い、そのドキュメントに
最適な各言語用のAnalyzerを適用するようにしています。
形態素解析されたものが結果の上位に来ないような場合は
ドキュメントの言語判定で日本語として判定されていない可能性があります。

なるほど。。Analyzerの設定もしくはソースを見れば、どんなドキュメントをどう解析するかがわかりそう。めもめも。

投稿に対してコメントをいただきましたので、修正しました。ありがとうございます。>shinsuke_sugayaさん

コメントいただいた内容が正に知りたい内容でしたので、こちらにも載せておきます。

どのAnalyzerを使うかの言語判定ロジックはelasticsearchの機能ではなく
https://github.com/codelibs/elasticsearch-langfield
のプラグインで拡張された機能になります。
ただ元にしているlangdetectの言語判定機能が間違うことがあるので、HTMLについては、htmlタグのlang属性があればそれを使うようにしています。
あとは、Analyzerまわりは検索の肝になる部分ですので、
https://github.com/codelibs/elasticsearch-analysis-fess
でAnalyzer自体を自動検出したりとか、elasticsearchにいろいろとプラグインで機能追加しています。

Analyzerの自動検出とか、心をくすぐる文言だ。面白そう。今日は時間がないから、土日にソースを眺めてみよう。と言いつつ、休日はやらない気がする。。#電車の移動中に見るかな。^^

  • Analyzerの設定 http://fess.codelibs.org/ja/11.0/config/analyzer.html >検索のためのインデックスを作成する際、索引として登録するために文書を切り分ける必要があります。 Fess では、文書を単語に分解する機能を Analyzer として登録しています。 Analyzer は CharFilter、Tokenizer および TokenFilter により構成されます。 ~中略~ Analyzer の設定は Fess の起動時に fess インデックスが存在しない場合に app/WEB-INF/classes/fess_indices/fess.json で fess インデックスを作成して登録されます。 Analyzer の構成方法は elasticsearch の Analyzer のドキュメントを参照してください。

ふむふむ。結局elasticsearchを調査か。。

configで設定する
アナライザを指定せずにインデクスを作成した場合にこの設定がデフォルトとなります。
今回はバイグラムでアナライザを設定します。
設定
/etc/elasticsearch/elasticsearch.ymlを編集します。

デフォルトは/var/lib/elasticsearch。この下にnodes/0/_state/global-0.stという感じでインデックスが格納される。

以下でElasticsearchにあるindex一覧を取得できる。
$ curl -XGET [IPアドレス or ホスト名]:[ポート番号]/_aliases?pretty

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした