人々がデータを処理するのを支援するための多くのツール/フレームワーク(ビッグデータ環境)について聞いたことがあります。

1つはHadoopと呼ばれ、もう1つはnoSQLの概念です。処理のポイントの違いは何ですか?

それらは補完的ですか?

コメント

  • 研究努力の欠如のために投票されました。 HadoopとnoSQLは他の場所で明確に定義されています。
  • @Spacedman同意しますが、それは Area51 からの質問の例でした。有効だと思う前に削除されておらず、質問を投稿したときに答えがわかっていても(少なくとも一般的には)。

回答

Hadoopはデータベースではありません、Hadoopはエコシステム全体です。

Hadoopエコシステム

ほとんどの人は、Hadoopについて話しているときに mapreduce のジョブを参照します。 mapreduceジョブは、大きなデータセットをいくつかの小さなデータチャンクに分割し、それらをノードのクラスターに分散して続行します。最終的に、各ノードからの結果は1つのデータセットとして再びまとめられます。


Hadoopに<String, Integer>のセットをロードするとします。都市内のいくつかの近隣の人口で、各都市の近隣全体の平均人口を取得したい(図1)。

図1

 [new york, 40394] [new york, 134] [la, 44] [la, 647] ... 

これで、hadoopは最初にキーを使用して各値をマップします(図2)

図2

[new york, [40394,134]] [la, [44,647]] ... 

マッピング後、各キーの値が新しい値(この例では各キーの値セットの平均)に減少します(図3)

図3

[new york, [20264]] [la, [346]] ... 

これですべてのHadoopが実行され、結果をHDFSにロードできるようになりました( hadoop分散ファイルシステム)または任意のDBMSまたはファイルに。

これは非常に基本的なシンプル ex Hadoopでできることは十分にあります。 Hadoopでは、はるかに複雑なタスクを実行できます。

質問ですでに述べたように、hadoopとnoSQLは補完的です。センサーからの数十億のデータセットがHBaseに保存され、Hadoopを通過して最終的にDBMSに保存されるセットアップをいくつか知っています。

回答

NoSQLは、何らかの関係を必要としないデータを格納する方法です。その設計の単純さと水平方向の拡張性、データを格納する1つの方法は、key : valueペア設計です。これは、Hadoopと同様の処理に役立ちます。 NoSQLデータベースの使用は、実際に発生している問題のタイプによって異なります。

ここに優れたウィキペディアのリンク NoSQL

Hadoopは、膨大な量のデータを格納および処理することを目的としたシステムです。これは分散ファイルシステムのdfsです。これを行う理由は、その設計の中心で、ハードウェア障害が一般的であると想定しているためです。したがって、同じ情報の複数のコピーを作成し、それを複数のマシンとラックに分散します。したがって、1つがダウンしても、問題はありません。さらに2つのコピーがあります。ウィキペディアからのHadoopへの優れたリンクもあります。私の意見では、これは単なるストレージではなく、処理でもあることがわかります。 Hadoop

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です