ページの先頭行へ戻る
Interstage Big DataParallel Processing ServerV1.0.0 ユーザーズガイド
Interstage

5.2.2 アプリケーションの開発

従来、大量データの並列分散処理を実現するためには、同期処理などの複雑なプログラムを作成する必要がありました。Hadoop では、並列分散処理を考慮したプログラムを作成する必要はありません。利用者は、MapReduce アルゴリズムにしたがって Map 処理と Reduce 処理の2つをアプリケーションとして作成するだけです。データの分散格納・抽出や作成した処理の並列実行は、すべて Hadoop が担っています。

5.2.2.1 アプリケーションの概要

Hadoop 上で処理を行うためのアプリケーションには、以下の種類があります。

以降、MapReduce アプリケーションの開発について説明します。その他のアプリケーション開発については、Apache Hadoop プロジェクトのWebページ等を参照してください。


5.2.2.2 アプリケーションの設計

アプリケーションの処理ロジックを設計します。並列分散処理を行うために従来設計が必要であった、入力ファイル分割やマージなどの処理は、Hadoop のフレームワークが実行するため設計が不要です。そのため、業務に必要なロジックの設計に専念することができます。

MapReduce アプリケーションの場合、アプリケーション開発者は Hadoop API を理解し、MapReduce フレームワークに従った設計が必要となります。主に、以下の設計を行う必要があります。


5.2.2.3 アプリケーション作成

アプリケーションを設計した結果をもとに、アプリケーションを作成します。


MapReduce アプリケーション

通常の Java アプリケーションの作成と同様に、Javaプロジェクトを作成し、コーディングを行います。

Eclipse のビルドパスに Hadoop の jar ファイルを追加することで、Hadoop API を使用することができます。

なお、hadoop -core-xxx.jar の指定は必須です(「xxx」には Hadoop のバージョンが入ります)。なお、その他の Hadoopのライブラリは、使用する Hadoop API に応じて適宜指定してください。


5.2.2.4 MapReduce アプリケーション開発のためのリファレンス

MapReduce アプリケーションのリファレンスについては、以下に示す Apache Hadoop が提供する情報を参照してください。

Hadoop API を利用する場合