withを使用HBase
するよりも使用する方が良いのはなぜですか?Cassandra
Hadoop
誰でもこれについて詳細な説明をしてもらえますか?
ありがとう
withを使用HBase
するよりも使用する方が良いのはなぜですか?Cassandra
Hadoop
誰でもこれについて詳細な説明をしてもらえますか?
ありがとう
どちらかが優れているとは思いません。どちらかだけではありません。これらは非常に異なるシステムであり、それぞれに長所と短所があるため、ユース ケースによって大きく異なります。それらは間違いなく、同じインフラストラクチャ内で相互に補完して使用できます。
違いをよりよく説明するために、 Cassandraから写真を借りたいと思います: Definitive Guideでは、CAP 定理について説明しています。彼らが言うことは、基本的にどの分散システムでも、一貫性、可用性、分断耐性のバランスを見つける必要があり、これらのプロパティのうち 2 つしか現実的に満たすことができないということです。そこから、次のことがわかります。
Hadoop に関して言えば、HBase は HDFS の上に構築されているため、すでに Hadoop スタックがある場合は非常に便利に使用できます。また、Hadoop の標準エンタープライズ ディストリビューションである Cloudera でもサポートされています。
しかし、Cassandra は Hadoop との統合も強化されています。つまり、人気が高まっている Datastax Brisk です。また、Cassandra が提供する出力形式を使用して、Hadoop ジョブの出力から Cassandra クラスターにデータをネイティブにストリーミングできるようになりました (BulkOutputFormat
たとえば)。Cassandra が単なるスタンドアロン プロジェクトであったということはありません。
私の経験では、Cassandra はランダム読み取りには優れていますが、スキャンにはそれほど適していません。
写真に少し色を付けるために、私は仕事で同じインフラストラクチャで両方を使用してきましたが、HBase は Cassandra とは非常に異なる目的を持っています。私は Cassandra を主にリアルタイムの非常に高速なルックアップに使用してきましたが、HBase は低レイテンシ要件の重い ETL バッチ ジョブに多く使用しています。
これは本当にブログ投稿に値する質問なので、これ以上続けるのではなく、2 つのシステムの主な違いをまとめた記事を紹介したいと思います。要するに、IMHO に優れたソリューションはありません。どのシステムがより適しているかを確認するには、ユース ケースをよく検討する必要があります。
両方のデータベースの長所と短所を比較し、ビジネス要件に応じて慎重に決定する必要があります。
カサンドラ
長所:
短所:
HBase
長所:
短所:
詳細については、記事 1、記事 2、およびこのプレゼンテーションをご覧ください。