15

私のチームは、フロント エンド クエリでの応答を高速化するために、Cassandra と SOLR のどちらかを選択するように依頼してきました。私は彼らに、Cassandra は NOSQL db であり、SOLR はインデックス作成であると伝えました。しかし、彼らは、完全なデータベースを SOLR にプッシュする (SOLR をデータベースとして使用するなど) か、Cassandra を SOLR で使用することができると言います。すべてが混乱しています。

私たちが扱っているデータの量は、4 つの MySQL テーブル (結合を使用して取得) に広がる 10 億のようなものであり、Web サイトから読み取りクエリのみを取得します。全文検索は必要ありません

SOLRを簡単に打ち負かすことができないのは、その全文検索機能だと思いますが、私たちの場合は必要ありません.

では、Cassandra が提供できない SOLR には他に何があり、特定のケースで SOLR を置き換えることができる Cassandra には何がありますか?

言い換えれば、誰がより良いパフォーマンスを発揮するのでしょうか? カサンドラ一人?単独で db としての SOLR ? それとも両方一緒?そして最も重要なことは、なぜ、なぜそうでないのか?

次のチームミーティングで、なぜあるものが他のものよりも優れているかのように、自分の選択を長所でバックアップすることは私にとって本当に重要です.

そして、前もって感謝します。

編集:

  • SOLANDRAは、それほど成熟しておらず、維持されていないため、オプションではありません
  • SOLR機能は Enterprise Edition でのみ提供されるため、DataStax はオプションではありません
4

4 に答える 4

7

私の意見では、Solr の全文検索機能が必要ない場合、Cassandra よりも Solr を選択する理由はほとんどありません。

(開示:私はDataStaxで働いています。)

運用面では、Dynamo ベースのアーキテクチャにより、Cassandra クラスターの処理がはるかに簡単になります。Solr のシャーディングは非常に面倒な場合があります。これが、DataStax が検索を DSE に組み込んだ大きな理由の 1 つです。多くの人が避けたいことです。Solr の欠点を指摘しているだけで、DSE を売り込むつもりはありません。

たとえば、Solr でシャードの数を変更したい場合は、まったく新しいインデックスを作成して構築する必要があります。Solr クラスターのデッドロックについて心配する必要があります。他にもいくつかの制限があります: http://wiki.apache.org/solr/DistributedSearch

どのような種類のクエリをサポートできるようにする必要があるかについては、あまり説明していません。その情報を追加すると、より良い回答が得られます。

于 2012-04-18T00:43:32.960 に答える
4
  • Cassandra は NoSQL データ ストアであり、大量のデータを処理するように設計されています。テラバイト以上。間違いなくそれは実行するように設計されました。
  • クエリに関しては、NoSQL DB またはデータ ストアの機能が限られていることに注意してください。JOIN クエリはありません。これはシステムを殺します。考えてみてください!
  • あなたは間違いなくかなり速く読み書きすることができ、データの一部はクエリすることができます.
  • 柔軟なスキーマ。スパース データをプッシュできます。つまり、一般的な DB では空のエントリに NULL をプッシュしますが、ここではまったくプッシュしません :) その必要はありません!
  • 全文検索はありません。

これが大きなBUTの出番です。

  • 上記のように、反対側の SOLR は TF-IDF 全文検索エンジンです。DBに使用できますが。
  • 柔軟なスキーマ。必須ではないフィールドにのみマークを付けます。
  • Solr は、データのトークン化、解析、インデックス作成を非常に迅速に行うのに役立ちます。抜群のレスポンスになります。これは XML を返し、XML を解析して表現可能なデータを作成できます。
  • 読み取りクエリは高速です。つまり、非常に高速です。しかし、Cassandra と SOLR を比較して共有することはできません。

最後に、CASSANDRA と SOLR を一緒に使用する必要があるためです。SOLANDRA(旧ルカンドラ)をチェック

于 2012-04-17T05:39:52.690 に答える
4

Datastax There's Community および Enterprise エディションもご覧ください
。ただし、Solr はコミュニティ エディションには含まれていないと思います :(

Solandra はもはや積極的に開発されていません。著者は Datastax に移り、そこで仕事を続けました。

Hadoop の Cloudera とは何か、それは Cassandra の Datastax です。

于 2012-04-17T12:09:11.963 に答える
1

Solrsのインデックス作成機能は、読み取りに対してCassandraのパフォーマンスを上回ります。人気のあるクエリにインデックスを付けるので、頻繁なクエリはさらに高速になります。それは読み取り用に構築され、cassandraは保存用に構築されています。しかし、すでに述べたように、それが必要な場合、カサンドラは素晴らしいスケーリングを行います。単一ノード、1ミルのランダムなテキスト文字列、1ミルのクエリ平均をベンチマークしてみませんか。どちらのemも、mysql結合クエリはもちろんのこと、mysqlを実行しません。PSsolrはまもなく参加をサポートしますsolr4....。

于 2013-01-22T10:01:59.563 に答える