0.はじめに
Elasticsearchで使用される一般的な方法は、大規模なデータ検索です。TF-IDFに基づく単語頻度マッチングモデルは、相関検索またはアプリケーションおよび検索候補のユースケースをサポートします。
同期メカニズムにより、リレーショナルデータベースのデータはESに同期され、ESに基づく検索は、SQLを超える強力な検索機能を提供できます。
データは格納されてクラスタ化され、サーバーを追加することで拡張またはフォールトトレランスが実現されます。
1.ドキュメント、タイプ、インデックスを定義する
ESのデータ格納単位はドキュメントであり、ドキュメントは通常JSONで表現されます。
モードレス:ESはモードレスであり、ドキュメントはモードによって制限されません。マッピングですべてのフィールドを定義する必要はなく、新しいフィールドを提案する場合もあります。これはどのように機能しますか?最初に、マップには、現在特定のタイプで索引付けされているすべてのドキュメントのすべてのフィールドが含まれています。ただし、すべてのドキュメントにすべてのフィールドが必要なわけではありません。同様に、新しく索引付けされたドキュメントにまだマップに存在しないフィールドがある場合、Elasticsearchは自動的に新しいフィールドをマップに追加します。このフィールドを追加するには、Elasticsearchがタイプを判別する必要があるため、Elasticsearchが推測します。しかし、この推測は間違っている可能性があるため、データにインデックスを付ける前に、必要なマッピングを定義する必要があります。
2. Elasticsearchノード、マスターシャード、レプリカシャード
EIasticsearchインデックスは複数の断片に分割されます:シャード。シャードはLuceneインデックスであるため、Elasticsearchインデックスは複数のLuceneインデックスで構成されます。EIasticsearchは、Apache Luceneをデータのインデックス作成と検索のコアライブラリとして使用するため、これは妥当です。
デフォルトでは、図2と3に示すように、各インデックスは5つのメインシャードで構成され、各メインシャードには合計10のシャードのコピーがあります。
分散インデックスと検索
3. cURLとデータセットを介してドキュメントにインデックスを付ける
Windowsシステムは、CygwinをインストールしてHTTPデータを送信できます。ESはHTTPを介してインデックスを設定し、コンテンツを取得できます。
インデックスを作成します:curl -XPUT 'localhost:9200 / new—index'
インデックスを取得:curl 'localhost:9200 / get—together / _mapping / group?Pretty
4.データの検索と取得
5. Elasticsearch構成オプションを設定する
6.複数のノードで作業する