5

Elasticsearch スキームを最適化しようとしています。

URL であるフィールドがあります。クエリやフィルター処理はしたくありません。取得するだけです。

私の理解では、次のように定義されているフィールドはインデックス化され"index":"no"ていませんが、インデックスに格納されています。( http://www.slideshare.net/nitin_stephens/lucene-basicsのスライド 5 を参照) これは Lucene UnIndexed と一致するはずですよね?

これは私を混乱させます.いくつかのフィールドを格納する方法はありますか?

私は何が欠けていますか?

4

3 に答える 3

4

インデックスにデータを入力するには、2 つの方法があります。インデックス作成と保存。データの一部をインデックス化することは、それがトークン化され、転置インデックスに配置され、検索できることを意味します。データを保存するとは、トークン化も分析も何も行われず、転置インデックスに追加されないことを意味します。完全に別の領域に、完全なテキスト形式で保存されます。これに対して検索することはできませんが、ドキュメント ID によって元の形式で取得できます。

典型的な Lucene クエリ プロセスは、インデックス付きデータに対してクエリを実行し、一致するドキュメントのドキュメント ID を取得し、それらのドキュメント ID を使用してそれらのドキュメントの保存されたデータを取得し、それをユーザーに表示することです。

索引付けされているが保存されていないデータは検索可能ですが、元の形式で取得することはできません。

保存されているがインデックスが作成されていないデータは、ヒットが見つかったら取得できますが、検索はできません。

索引付けされて保存されたデータは、検索または取得できます。

どちらでもないデータは一切インデックスに追加できません。

これはLucene FAQで少しカバーされています。

于 2013-06-04T16:27:52.270 に答える
1

'index' => 'not_analyzed'マッピング オプションを探しています。

また、 を使用する場合は、オプション_sourceを指定する必要はありません。store => false

于 2013-06-04T11:05:57.957 に答える