
ビッグデータの活用が話題になり、近年になって注目を集めたのがHadoopだった。ビッグデータを扱うにはHadoopが本命であり、Hadoopこそが今後のビッグデータを扱うプラットフォームの主流になると思われた。実際にHadoopの利用は増えている。しかし、Hadoopを導入しさえすれば、ビッグデータ活用の技術的な課題を解決できるわけではない。そこで今、新たに注目を集めているのがSparkの活用だ。本稿では、Hadoopの実態と課題、Sparkとの関係を整理しながら、Sparkの特徴と今後の可能性を探る。
Hadoopの得意分野と不得意分野
超大規模なデータを安価に扱いたければ、確かにHadoopは効率的だ。しかし、数10テラバイト、数100テラバイト、あるいはペタバイトを越えるデータを100ノード、1,000ノードと大規模なHadoopクラスタで活用しているのは、一部の先進的な企業に限られる。100ノードを越えるようなHadoopクラスタ環境を構築し運用するのは、それなりに手間も技術も必要だ。
Hadoopは大量にデータを蓄積し、そのデータに対してバッチ処理を施すのは得意分野だ。一方でリアルタイムな処理や、反復処理、連続したデータの変換処理、試行錯誤しながらのアドホック分析などには向いていない。

HadoopのMap Reduceの並列分散処理では、入力データをストレージのHDFS(Hadoop Distributed File System)から読み出し、複数のノードで分散処理して結果をHDFSに書き出す。この一連の処理を1回実施するだけならば、数多くのノードで分散することで高速に処理ができる。
しかし、1度で終わらないような繰り返し処理が必要になると、何度もHDFSから読み込み出して分散処理を行い、結果をストレージに書き出す必要が出てくる。そうなればディスクIOやノード間のネットワークIOが増大し、効率的な処理が行えなくなってしまう。
ビッグデータの活用で今注目を集めている領域は、機械学習や高度な統計処理などが挙げられるだろう。さらには、IoTなどから発生するデータをリアルタイムに処理したいという要求も多い。機械学習や高度な統計処理では、まさに反復処理や連続したデータの変換処理などが必要になる。つまりHadoopだけでは、これらを効率的に処理することができない。
この記事は参考になりましたか?
- この記事の著者
-
谷川 耕一(タニカワ コウイチ)
EnterpriseZine/DB Online チーフキュレーターかつてAI、エキスパートシステムが流行っていたころに、開発エンジニアとしてIT業界に。その後UNIXの専門雑誌の編集者を経て、外資系ソフトウェアベンダーの製品マーケティング、広告、広報などの業務を経験。現在はフリーランスのITジャーナリスト...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア