elasticsearch _source

デフォルトでは、Elasticsearch JSON文字列_sourceフィールドには、体を代表して文書を保存します。そして、すべてのフィールドが同じに格納されている、それがディスクに書き込まれる前に、_source最初のフィールドが圧縮されます。
:それは、次のこれらのことを意味するので、このフィールドのストレージは、ほとんど常に我々が望むものである
-文書をピックアップして、別の倉庫から追加データ検索結果が利用可能な全ドキュメントが含まれています。
あなたがフィールドを_SOURCEない場合は、更新要求の一部は有効になりません。
あなたはマッピングを変更するときは、_sourceフィールドとするのではなく、すべてのドキュメントを取得するために別の(通常は遅い)、データウェアハウスからよりも、Elasticsearchからそう直接行うことができ、あなたのデータのインデックスを再する必要があります。
あなたは文書全体を見る必要がない場合は、単一のフィールドを抽出し、_sourceフィールドから取得するか、検索要求を経由して返すことができます。
あなたは直接各文書が含むものを見るが、IDからその内容を推測することはできませんので、簡単にクエリをデバッグします。
しかし、ストレージフィールド_sourceは本当にディスクスペースを使用します。あなたが重要であるため上記の理由ではない場合は、次のマッピング無効_sourceフィールドを使用することができます。

PUT / my_index 
{ 
    "マッピング":{ 
        "my_type":{ 
            "_source":{ 
                "有効":偽
            } 
        } 
    } 
}

検索要求では、あなただけの取得特定のフィールドの効果を達成するために、リクエストボディの_sourceでパラメータを指定することができます。

GET / _search 
{ 
    "クエリ":{ "match_all":{}}、 
    "_source":"タイトル"、 "作成"] 
}

 

おすすめ

転載: www.cnblogs.com/gavinYang/p/11199883.html