0

クエリを実行してレポートを生成する複数のデータベースがあります。複雑なクエリを作成し、多くの結合などを行う必要があるため、Cassandra、Hadoop、または Elasticsearch を使用してデータをロードし (データまたは増分更新をロードする毎日のジョブ)、すべてのタスクについてこのデータベースにクエリを実行するのは良い考えですか?

Cassandra、Hadoop、Elasticsearch、または MongoDB のどれを選択するのが望ましいでしょうか?

また、統合データベースでレポートと分析を行うための Web UI も構築したいと考えています。

4

2 に答える 2

0

MongoDB はお勧めできません。ビッグデータ分析に関しては標準以下であり、Map-Reduce の実装は貧弱で、Map-Reduce は低速で​​シングルスレッドです。Cassandra + Hadoop または HDFS + Hadoop を選択できます。Hadoop の場合、ストレージ タイプに制限はありません。データを HDFS にフラッシュ (または最初に格納) し、MapReduce で反復処理できます。

耐久性が必要な場合は、Cassandra をご覧ください。まず、Cassandra はメンテナンスが非常に簡単で、信頼性が非常に高いです。私は、Cassandra が世界で最も信頼できる noSQL データベースであると信じています。それは完全に水平方向にスケーラブルであり、名前ノードもマスター/スレーブもありません。すべてのノードは権利を平準化しています。

Elasticsearch では、検索のみを行うことができます。大量のデータがあり、分析が必要な場合は、Hadoop と MapReduce を検討する必要があります。

Hadoop を使用すると、Hive または Pig の使用を開始できます。これは、私が今まで見た中で最も強力な map-reduce の抽象化です。Hadoop を使用すると、Spark/Shark への移行について考え始めることさえできます。

于 2013-04-30T04:03:56.010 に答える