2

私はsolrを初めて使用するので、以下のフィールドを理解するのを手伝ってくれる人が本当に必要です. 格納されている= false、インデックス付き= falseの場合、フィールドの意味は何ですか? 以下の 2 つの例を参照してください。違いは何ですか? フィールドが保存されていない場合、その用途は何ですか...

    <field name="test1" type="text" indexed="false"
        stored="false" required="false" />

これはどう?

    <field name="test2" type="text" indexed="false"
        stored="false" required="false" multiValued="true" />

どうもありがとう!

4

2 に答える 2

9

Solr wikiから最良の説明を見つけることができます。

フィールドを検索可能にする場合は、indexed 属性を true に設定する必要があります。

indexed=true : このフィールドを「インデックス化」する必要がある場合は true。フィールドがインデックス化されている場合にのみ、検索可能、並べ替え可能、およびファセット可能です。

検索結果のフィールドを取得する場合は、stored 属性を true に設定する必要があります。

stored=true : 検索中にフィールドの値を取得できる場合は true

複数の値を 1 つのフィールドに格納する場合は、複数値フィールドを true に設定する必要があります。

multivalued=true : このフィールドがドキュメントごとに複数の値を含む可能性がある場合、つまりドキュメントに複数回表示される場合は true

于 2012-06-25T11:40:31.027 に答える
8

見た目よりも簡単です:

  • indexed:検索できます
  • stored: 検索結果に表示できます

実際には、検索に使用しないフィールドがあるかもしれませんが、それらを結果内に表示したいだけです。一方、結果内に表示したいが、検索には使用したくないフィールドがある場合があります。パフォーマンスが向上するため、特定のstored=falseフィールドを表示する必要がない場合に重要です。すべてのフィールドを保存し、多くのフィールドがある場合、Solr は結果を返すのが遅くなる可能性があります。

もちろん、両方とも false であっても意味がありません。フィールドがまったく役に立たなくなるからです。

2 つのフィールドの固有の違いはmultiValued=trueです。つまり、2 番目のフィールドには複数の値を含めることができます。つまり、フィールドの内容は単なるテキスト エントリではなく、テキスト エントリのリストです。

于 2012-06-25T08:34:00.690 に答える