メタデータをインデックスに添付する方法を提供します。
タイプマッピングで行われます。
これはあなたが探しているものですか? http://www.elasticsearch.org/guide/reference/mapping/meta.html
いいえ、それは私が参照したタイプマッピングレベルのメタデータです。
プルを添付します@https ://github.com/elasticsearch/elasticsearch/pull/2378
カスタムメタを使用してインデックスを作成する
{{
"設定" : {
"number_of_shards":3、
"number_of_replicas":2
}、
"custom_meta":{
"name1": "value1"、
"name2":{"attr1": "value1"、 "attr2": "value2"}、
"name3":番号
}
}
消去
/ {index} / _ custom_meta
/ {index} / _ custom_meta / {name}
置く
/ {index} / _ custom_meta / {name}
得る
/ {index} / _ custom_meta
/ {index} / _ custom_meta / {name}
おそらく、インデックス設定を介してサポートできるものはありますか?
議論の後、これはタイプmeta
を使用し、その中に1つのドキュメントを格納することで簡単に実装できます。 閉鎖
@clintongormley Elasticsearchは、バージョン6.0以降、インデックスにマルチブルタイプを含めるためのサポートを削除しました。
インデックスごとのメタデータを保存するための最新のアドバイスはありますか?
クリントンが述べたように、メタフィールドを使用できます。
https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-meta-field.html
@brusic安い操作ですか? 現時点では、一括リクエスト内のメタドキュメントを更新して、メタデータがインデックス付きデータと同等であることを確認しています。 したがって、インデックスが作成されたすべてのドキュメントのインデックスを更新します。
まず第一に、私は私の前の声明で少し間違っていました。 クリントンは、現在公式のメタフィールド(当時は存在していなかった)ではなく、メタタイプを参照していました。
メタフィールドは、この問題が公開されてから数年後に導入され、他の代替手段を見つけて以来、使用したことがありません。 メタフィールドがクラスター状態に追加されると想定します。これにより、これはコストのかかる操作になる可能性があります。 クラスターの状態は、クラスター内の他のノードに新しい違いを伝播する必要があります。これにより、単にドキュメントのインデックスを作成するよりも遅くなると思います(バッファリングなどがないため)。
正確な答えをありがとう!
一括リクエストと同時に異なるインデックスのドキュメントにインデックスを付けたり更新したりできるため、インデックスメタデータには個別のインデックスを使用します。
@clintongormleyインデックスレベルのメタの実装に投票したいと思います。 多くのESユーザーは、インデックスに関するデータをインデックス自体に添付したいと考えていると思います(マッピングバージョンにより、インジェスターは使用するエンコーダー、作成時間、インデックスを作成したノード、強制更新/マージのリスト、手動介入のリストを確認できます)。 ;など)、ドキュメントごとの_meta
フィールドと同じくらい便利だと思います。
最も参考になるコメント
@clintongormleyインデックスレベルのメタの実装に投票したいと思います。 多くのESユーザーは、インデックスに関するデータをインデックス自体に添付したいと考えていると思います(マッピングバージョンにより、インジェスターは使用するエンコーダー、作成時間、インデックスを作成したノード、強制更新/マージのリスト、手動介入のリストを確認できます)。 ;など)、ドキュメントごとの
_meta
フィールドと同じくらい便利だと思います。