collections and coresの違いを理解するのに苦労しています。正しく理解すれば、コアは複数のインデックスです。コレクションはコアで構成されているため、本質的には分離において同じロジックを共有します。つまり、別々のコアとコレクションは別々のエンドポイントを持ちます。
次のシナリオがあります。いくつかのオンラインショップのクラウドサービスのバックエンドを作成します。各ショップには、顧客がレビューを追加できる一連の製品があります。パフォーマンスを改善できるように、静的情報(製品情報)を動的情報(レビュー)とは別にインデックス化したい。
Solrで最適な分離方法は?
コレクション:単一の検索インデックス。
シャード:単一のコレクションの論理セクション(スライスとも呼ばれます)。時々、人々は物理的な意味で「シャード」について話します(論理的なシャードの現れ)
レプリカ:SolrCore上の単一のLuceneインデックスとして実装された、論理シャードの物理的表現
リーダー:各シャードのレプリカがリーダーとして指定され、そのシャードのインデックス作成を調整します
SolrCore:単一の物理インデックスをカプセル化します。コレクションを構成する1つ以上の論理シャード(またはスライス)を構成します。
ノード:Solrの単一インスタンス。単一のSolrインスタンスには、任意の数のコレクションに含めることができる複数のSolrCoreを含めることができます。
クラスター:SolrCoreをホストするために使用しているすべてのノード。
したがって、基本的にコレクション(論理グループ)には複数のコア(物理インデックス)があります。
また、 discussion を確認してください
コア
Solrでは、core
は一連の構成ファイル、Luceneインデックスファイル、およびSolrのトランザクションログで構成されます。
solrコアは、Solrサーバーで実行される一意の名前、管理、および構成されたインデックスです。 Solrサーバーは1つ以上のコアをホストできます。コアは通常、異なるスキーマを持つドキュメントを分離するために使用されます
コレクション
Solrはcollection
という用語も使用します。これは、単一のインデックスが複数のサーバーに分散されているSolrクラスターのコンテキストでのみ意味を持ちます。
SolrCloudはcollection
の概念を導入し、一意に名前が付けられ、管理され、構成されたインデックスの概念をシャードに分割され、複数のサーバーに分散されるものに拡張します。
私の理解に従って:
分散検索の場合、
コレクションは、複数のサーバーにまたがる論理インデックスです。 Coreは、1つのコレクションを実行するサーバーの部分です。
非分散検索の場合、
Solrを実行する単一のサーバーは複数のコレクションを持つことができ、それらの各コレクションもコアです。したがって、検索が分散されていない場合、コレクションとコアは同じです。
概要
Solr Wiki から:
コレクションは、1つ以上のシャードで構成されます。シャードには1つ以上のレプリカがあります。各レプリカはコアです。単一のコレクションは、単一の論理インデックスを表します。
単一インスタンス
単一のインスタンスでは、Solrには本質的に単一のインデックスであるSolrCoreと呼ばれるものがあります。複数のインデックスが必要な場合は、複数のSolrCoreを作成します。
Solr Cloud
SolrCloudでは、単一のインデックスが複数のSolrインスタンスにまたがることができます。これは、異なるマシン上の複数のSolrCoreで単一のインデックスを構成できることを意味します。 1つの論理インデックスを構成するこれらすべてのSolrCoreをコレクションと呼びます。
コレクションは本質的に、インデックスのスケーリングと冗長性の両方のために、多くのSolrCoreにまたがる単一のインデックスです。 2つのSolrCore SolrセットアップをSolrCloudに移動する場合、それぞれが複数の個別のSolrCoreで構成される2つのコレクションがあります。