以下では、MaxCompute で MapReduce コーディングモデルを使用する方法について説明します。 手順に記載されているコード例は、MaxCompute コンソールがインストールされていることを前提としています。

Maven ユーザーは、Maven ライブラリで "odps-sdk-mapred" を検索すると、必要な SDK を入手できます (複数のバージョンが用意されています)。 設定は次の通りです。
<dependency>
    <groupId>com.aliyun.odps</groupId>
    <artifactId>odps-sdk-mapred</artifactId>
    <version>0.26.2-public</version>
 
</dependency>

事前準備

手順

  1. クライアントのインストールと設定が完了したら、odpscmd.bat ファイルを開いて、該当するプロジェクトスペースを入力します。
  2. CREATE TABLE 文を入力し、入力テーブルと出力テーブルを作成します。 例
    CREATE TABLE wc_in (key STRING, value STRING);
    CREATE TABLE wc_out (key STRING, cnt BIGINT);
    -- Create input table and output table

    テーブルを作成するための SQL 文に関する詳細は、「テーブル操作 (Table Operations)」をご参照ください。

  3. データをアップロードします。
    データのアップロードには、次の 2 通りの方法があります。
    • コマンドを使用してデータをアップロードします。
      tunnel upload kv.txt wc_in
      --  Upload example data
      kv.txt ファイル内のデータは、次のように表示されます。
      238,val_238
      186,val_86
      186,val_86
    • 次のように INSERT 文を使用して、データを直接挿入することもできます。
      insert into table wc_in select '238',' val_238' from (select count(*) from wc_in) a;
  4. MapReduce プログラムを作成してコンパイルします。

    MaxCompute は Eclipse 開発プラグインに対応しているため、MapReduce プログラムを短期間で開発し、MapReduce 関数をローカルデバッグできます。

    ユーザーは最初に MaxCompute プロジェクトを Eclipse で作成してから、MapReduce プログラムを作成する必要があります。 ローカルデバッグが正常に実行されたら、 コンパイルしたプログラムを MaxCompute にアップロードできます。 詳細は、「MapReduce Eclipse プラグイン (MapReduce Eclipse Plug-in)」をご参照ください。

  5. jar パッケージをプロジェクトに追加します (以下の例では、JAR パッケージ名は "wordcount-1.0.jar" です)。
    add jar word-count-1.0.jar;
  6. MaxCompute コンソールで "jar" コマンドを実行します。
    jar -resources word-count-1.0.jar -classpath /home/resources/word-count-1.0.jar com.taobao.jingfan.WordCount wc_in wc_out;
  7. MaxCompute コンソールで実行結果を確認します。
    select * from wc_out;
    Java プログラムで他のリソースが使用される場合、 -resources パラメーターを追加する必要があります。JAR コマンドに関する詳細は、「Jar コマンド (Jar Commands)」をご参照ください。