私はelasticsearchに慣れていないので、助けていただければ幸いです.
私の会社にはメタデータリポジトリがあり
、リポジトリはこのように構成され
ています.さまざまなタイプのエンティティのグループがあります.
entitiesGroupA: [Aentity1, Aentity2, Aentity3...],
entitiesGroupB: [Bentity1, Bentity2, Bentity3...]
約 15 のグループ、合計で約 1500 のエンティティ
各エンティティ名は一意であり、重複はありません
各エンティティの基本データ (フラグ、テキストの説明など)
各エンティティには平均で約 100 ~ のフィールドがあります。
フィールドと言うとき、基本データを意味するのではなく、各フィールドにブールフラグ、テキスト説明などを含むエンティティ内の論理フィールドを意味します...
フィールドのグループもあります(約5)
さらに、リポジトリにはバージョンがあり、毎月新しいバージョン
があります。問題は、 elasticsearch に最適に適合
するようにこの構造をモデル化する最善の方法は何ですか?elasticsearch
でのデータの使用法は、名前とグループでエンティティを検索し、すべてを取得することです。エンティティのフィールド、名前とグループでフィールドを検索、名前とグループでエンティティ内のフィールドを検索
、次のモデルを考えました:
/entities_[Version]/[entityGroup]/[entityName]
エンティティ (フィールドではない) に関するデータがあります
。例: リポジトリのバージョン 1、groupAのエンティティ 1
/entities_1/groupA/entity1
各エンティティのフィールドは次のようになります
/[entityName]_[Version]/[fieldGroup]/[fieldName]
例: entity1 のバージョン 1、フィールド グループ A の field1
/entity1_1/groupA/field1
これはリポジトリをモデル化する良い方法ですか?, この方法でインデックスの割り当てを作成すると思います.より多くのタイプを持つようにモデル化する必要がありますか? より多くのタイプではなく、より多くのインデックスの利点は何ですか?
ご覧のとおり、私はelasticsearchを初めて使用し、学習資料の割り当てを見つけることができなかったので、少し無知に感じますO:
助けてくれてありがとう:D