コアタイプリンクで属性の説明に記載されている理由が本当にわかりません(たとえば、数値の場合):
- store - 実際のフィールドをインデックスに保存する場合は yes に設定し、保存しない場合は no に設定します。デフォルトは no です ( JSON ドキュメント自体は保存されており、そこから取得できることに注意してください) 。
- index - 値にインデックスを付けない場合は、no に設定します。この場合、store は yes に設定する必要があります。これは、インデックスが作成されておらず、保存されていない場合は関係がないためです。
太字の 2 つの部分は矛盾しているように見えます。"index":"no", "store":"no"
ソースから値を取得できた場合。これは、たとえば URL を含むフィールドがある場合に便利です。いいえ?
2 つのマッピングがあり、1 つのフィールドが に設定され、もう 1 つのフィールドが に設定された小さな実験が"store":"yes"
ありました"store":"no"
。
どちらの場合も、クエリで次のように指定できます。
{"query":{"match_all":{}}, "fields":["my_test_field"]}
フィールドを返すという同じ答えが得られました。
"store"
が設定されている場合"no"
、特定のフィールドを取得できず_source
、クライアント側で全体を取得して解析する必要があると考えました。
"store"
では、 に設定するとどのような利点があるの"yes"
でしょうか。"_source"
フィールドからフィールドを明示的に除外した場合にのみ関係がありますか?