知識ElasticSearch
1.1.ElasticSearch
- 、ネイティブのLuceneの使用の不足を解決するためのLucene通話モードを最適化し、検索プログラム分散、高可用性クラスタを実行するために、その最初のバージョンは2010年2月にはGitHubに登場し、すぐに最も人気となったことをESプロジェクトの一つ。
- Java ESのも、すべてのインデックスを達成し、機能を検索するための中核としてのLuceneを開発し、使用するために使用されるが、その目的は、より簡単に全文検索をできるように、簡単なRESTfulなAPIでのLuceneの複雑さを隠すことです。
- 分散性を向上させながらElasticSearchは、フルテキスト検索のLuceneの使用を簡素化し、それは非常に簡単に大規模な分散型のフルテキスト検索を構築することができます。
1.2。ESとは何ですか?
- ESはESのサポートが配布され、クラスタ化され、トラブルの呼び出しを問題を解決するためのLucene
- 分散ファイル・ストレージのES実装
- 分散検索のES実装
- レベルのデータを処理するデータの通常量PB
- 単純に安らかなスタイルを取得するのは簡単呼び出すことにより、
- 簡単に始めるために、飲み物のボトルを開けるの効果を達成することができます
ES全く競争はありませんか?
Solrの彼はESとの間の差の競争相手は次のとおりです。
- Solrには、フルテキスト検索を行うことができますが、彼はヘビー級のフレームワークで、フルテキスト検索を行うには、あなたはまた、他の多くのことを行うことができるだけでなく、
- Solrのリアルタイムでの検索は、ESと一致することはできません
- Solrの両方に分散してESをサポートすることができます
- SolrのNoSQLのサポートすることができます
差1.3.ESとのLucene
Luceneの:
- Javaをサポートのみ
- 唯一のローカルディレクトリに、インデックスを非分散
- 非常に複雑な使用
- 小さなプロジェクトを使用します
関連する概念を1.4.ES
1.4.1.Nearリアルタイム(NRT)
ほぼリアルタイムで、二つ意味、書き込みデータからのデータは、(1秒程度)小さな遅延を有するために検索することができ、検索および分析をベースES秒で達成することができます
1.4.2.Index:インデックスライブラリ
同様のデータ構造を含む文書の束がありますが、顧客は、インデックス、商品分類指数、受注指数を持つことができるよう、インデックスが名前を持っています。インデックスは、類似または同一文書のクラスを表すために、インデックスを文書の多くが含まれています。たとえば、すべての製品データ、商品文書のすべてを保存する可能性がある製品指数、コモディティインデックスを作成します。
1.4.3.Type:タイプ
各インデックスは、1つまたは複数のタイプを持つことができる場合、タイプは、ブログシステム、指標として、論理データ、型の下文書は、同じフィールドを有する分類指標であり、ユーザは、データ型を定義することができ、ブログデータ型、コメントデータ型。
1.4.4.Document&フィールド
ドキュメントは、ドキュメント内のデータの最小単位は、顧客通常JSONデータ構造で表現されたデータ、商品分類データ、注文データ、各インデックスに入力することができるES、複数のドキュメントを格納するために行くことができます。フィールドを複数有する文書は、各フィールドは、データフィールドです。
1.4.5.Cluster:クラスタ
複数のノードを含み、各ノードは、通常のクラスタノードの開始、どのクラスタが中小用途のために、コンフィギュレーション(クラスタ名、デフォルトはelasticsearchである)によって決定される属します
1.4.6.Node:ノード
クラスタ内のノードは、ノードは、(運転・保守管理業務の実施中)名(デフォルトはランダムに割り当てられている)、ノード名が非常に重要であり、「elasticsearch」クラスタのデフォルトノードは、名前に参加するを持っている直接起動した場合ノードの束は、それらは自動的に、クラスタelasticsearchを形成するもちろん、ノードは、クラスタelasticsearchを形成することができます
1.4.7.shard(断片)
単一の機械が大量のデータを格納することができない、ESデータは、複数のストレージサーバーに分散インデックス断片、複数に切断することができます。シャードでは、このような複数のサーバーに分散検索や分析などの操作は、スループットとパフォーマンスを向上させるためにアップを実行するように、より多くのデータを保存するためにスケールアウトすることができます。各シャードは、Luceneインデックスです。
1.4.8.replica(レプリカ)
あなたは各レプリカのシャードの複数のコピーを作成することができますので、任意のサーバーの障害やダウンタイムの対象は、その後、シャードは、失われる可能性があります。データを確保するシャード障害が、失われていない場合、レプリカは、レプリカの複数のさらなるサーチ動作のスループットと性能を向上させることができる、バックアップサービスを提供してもよいです。プライマリー断片(集合のインデックスを作成、修正することができません、デフォルト5)、複製断片(デフォルトの一方の数を変更する)、各インデックス10シャードデフォルト、プライマリー断片5,5複製断片、最小高利用可能な構成、サーバー2。