2

私はElasticSearchと検索全般に不慣れです。

検索する必要がある大規模なデータベースがあります。70テーブル。

このようなデータベースを検索するためのベスト プラクティスがどれかよくわかりません。必要なすべてのデータを取得するために、25 のデータベース テーブルに対して大規模な SQL 選択を実行しました。ファセットが必要になるため、主にこれを行いました。

これはElasticSearchで意味がありますか? ElasticSearch で検索するデータを整理する最良の方法は?

よろしくお願いします、

4

1 に答える 1

1

ElasticSearch の注目すべき機能は、複数のインデックス/タイプ、またはその両方にわたって検索できることです。これにより、データベースで構造化されたのと同様の方法でデータを構造化できます。

Indices は基本的に ElasticSearch の Database に相当し、Type はテーブルに相当します。これにより、データを分離したままにすることができます。たとえば、ElasticSearch 定義を次のように設定します。

Index  |  Type

data   -  table1
data   -  table2
data   -  table3
data   -  ....

これにより、次のように、1 つのクエリですべてのタイプを検索できます。

curl -XPUT <host>:9200/data/table1,table2,table3

または、次のように、同じタイプの異なるインデックスを持つことができます-

Index  |  Type

data1   -  table
data2   -  table
data3   -  table
data4   -  ....

データを論理的に分離するこの機能は、ElasticSearch の強力な機能であり、データをインデックスまたはタイプ間で分割することもパフォーマンスを念頭に置いています。

于 2014-01-20T16:51:27.807 に答える