2012-04-24 7 views
2

テキスト検索エンジンを実装したい。特に索引付けする文書は、重みのある用語のリストです。
クエリは単純な用語リストです。
検索の出力は、関連性の一致(条件とその重みに対して)で並べ替えられたリストにする必要があります 私が保存する必要があるデータは大きいです!単一ノードには収まりません。したがって、最終的なストレージは、配布が容易でなければなりません。検索エンジンのデータストレージとしてのCouchbaseまたはRiak

どのデータベースストレージをお勧めしますか? 分析の後、私はCouchbaseとRiakのどちらかを選択したいと思います。

[編集] 単純なリレーショナルデータベースについてどう思いますか?彼らはすでに配布用の良い仕組みを持っています(例:Postgres 9にはビルドされています)

Riakはbuildin検索機能を持っていますが、私はそれを使いたくないと知っています。レスポンスを得るためにインデックスを持つ必要があります(クエリごとに計算するのではなく)。一方のCouchbaseの2オン

はJSONドキュメントのセカンダリインデックスを追加します。インデックスは、その後、照会することができるビューを使用して作成されます。インデックスが均等に分配される。
Couchbaseの

+1

でなどのキューを使用して、独自の同期を行うことができます[スタックオーバーフローがリコメンデーション・エンジンではありません](のhttp://メタ。 stackexchange.com/a/128562/172496) –

+1

私はcouchbaseやriakで熟練していない場合はどこでアドバイスを探す必要がありますか? –

+0

テキスト検索では、Solr(成熟だが断片化しにくい)またはElastic Search(自動断片化に設計されている)を検討してください。 CouchDBやRiakなどのテキスト検索用のNoSQL DBにLucene(のような)統合があります。スペシャル:MySQLやその他のテキスト検索用のSphinxフルテキストストレージ-RDBMS統合。 – aitchnyu

答えて

1

全文検索にはRiak Searchをお勧めしますが、これは非常に強力で、Luceneの利点のほとんどを借用していますが、フォールトトレラント、複製、スケーラビリティはまだありません。データが1つのノードに収まらない場合は、おそらく最もバランスのとれたオープンソースソリューションです。

+0

にお問い合わせください。実際、質問のように、私はRiakを検討しています。私はそれをどのように使っているのか、人々からいくつかの勧告や意見を求めています。 –

+0

RiakのメーリングリストでRiakを使った多くの人が非常に異なる目的で利用できます:http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com –

1
のための大きなメリットとして聞こえること

私はElasticSearchとCouchDBを使用しました。

+0

欠落した要件が追加されました。データサイズが単一ノードから外れる可能性があるため、ストレージを分散しやすくする必要があります。 ElasticSearchはデータ配信に適していますか? –

+0

はいhttp://www.elasticsearch.org/私はあなたの正確なスペックを知らないが、それはかなり気が遠く聞こえる。詳細については、Freenode(IRC)#elasticsearch – lukecampbell

2

一般的な根本的な質問に答えるには、「インデックスに登録されたドキュメントの保管にデータベースを使用する必要がありますか?

はい。

これはかなり一般的なパターンです。いくつかの組織(無害を守るために保有されていない名前)は、Solrを索引および関連性エンジンとして使用し、主キーのみを検索から戻し、次にDBストアから実際の文書を検索して検索します。

しかし、このアプローチでは課題があります。主に2つのシステム(solrとdb)を同期させて保持します。 Couchbaseは、ElasticSearchインスタンスを同期させて維持するために、クロスデータセンターレプリケーションテクノロジを使用します。 Riak 2がリリースし、効果的に自動的にデータベースの各断片のSolrインデックスを作成します。あなたのユースケースに応じてどちらかがうまくいきます。さらに、あなたは明らかに2つのDB用

詳細

http://docs.couchbase.com/couchbase-elastic-search/ http://docs.basho.com/riak/latest/dev/advanced/search/