Hadoop

Hadoopとは?

「ハドゥープ」と読む。ユーザーの行動情報(ログ(履歴))などの大量のデータ(いわゆる「ビッグデータ」というもの)を高速に管理できるDB(データベース)の一種。

通常DBにデータを入れる場合、HDD(ハードディスクドライブ)に記録するので、

ユーザーの行動情報を計測したい場合(○○のコンテンツを見ている人を集計したい)など

HDDから大量のデータを読み出す必要があるため、どうしても時間がかかってしまう。

現在のHDDの実行速度は80MB/sec程度なので、5TB(テラバイト)の情報を読み込もうと思うと17時間以上かかってしまう。

この問題を解決するために「並列分散処理」が利用されている。

サーバーを1000台用意すれば、同時並行で読み込めるので5TBのデータも1分程度で読み出せる。

Hadoopはバッチ処理(1日一回など1定期間ごとに処理をするもの)系のDBなので、

通常のDBのようにリアルタイムに記録したり読み出したりするのは逆に遅くなってしまったり苦手な部分。

ちなみに一般的なサービスに使われるDBはRDBMS(リレーショナルデータベースマネジメントシステム)といって「データを効率的に管理する」ということを目的としているので、データの重複がないよう「正規化」を行うが、Hadoopは「高速に計測処理を行う」ことを目的にしているので「非正規化」を行っている。