めざせ!Hadoopエンジニア―開発者編―

EnterpriseZine / 2012年6月21日 0時0分

図2 近年の課題とHadoop

大規模データを処理するための基盤の一つとして、分散処理プラットフォームであるHadoopが広く使われるようになり、その勢いは世界中で加速しています。一方、大規模データの分析、活用のための人材不足が深刻化し、人材育成が急務となっている企業も少なくありません。本記事では、大規模データ処理基盤として注目されているHadoopの歴史と共に、Hadoopのスキルを客観的に証明できるHadoop認定プログラムを前/後編に分けて紹介します。

■Hadoopが注目される理由

 ハードウェアの進化に伴ってサーバの性能は年々向上しています。ムーアの法則にあるように、その中でもCPUなど半導体の性能は著しく向上しています。

 一方でハードディスクの性能はこれに追いついておらず、データの読み書き時には待ち状態になってしまう場合もあるでしょう。 つまり、データ量が多ければ多いほど、待ち状態がボトルネックとなってしまうのです。ガートナーによると、「全世界の情報量は、年間で最低でも59%という高率で増加している」とのことですが、これほどの勢いで増え続けるデータを処理するには、もはや今までのようにハードウェアの進化だけに頼っているわけにはいかないのです。そこで改めて見直されたのが、分散処理技術でした。

 Googleでは1990年代後半から、上記の問題点を解決するために汎用のハードウェアを使用した独自の分散処理基盤システムを構築し、2000年代前半に2つの論文を公開しました。まず2003年に分散ファイルシステムである「GFS」(Google File System)について、次に2004年、分散処理の仕組みである「MapReduce」について論文を発表したのです。

 以前からMPI(Message Passing Interface)などを使用して分散処理プログラムを記述することは可能でしたが、プログラムが大規模になるに従い複雑化し、エラー処理や障害処理などを記述するのが困難でした。Googleのアプローチは、部分障害やリカバリ、一貫性等を解決する新しいアプローチだったのです。

 分散ファイルシステムではファイルを一定のサイズに分割し、分散して複数のサーバに格納しておき、並列で読み出すことでスループットを向上します。分散処理技術では、この分割されたファイルを複数のサーバで並列処理することで、スケールアウトすることができます(図1参照)。
図1:データ処理に対するスケールアップ・スケールアウトのアプローチ

  • 前のページ
    • 1
    • 2
  • 次のページ
EnterpriseZine

トピックスRSS

ランキング