すべてのプロダクト
Search
ドキュメントセンター

MaxCompute:グラフプログラムの開発

最終更新日:Dec 05, 2024

このトピックでは、MaxCompute Studioを使用してGraphプログラムを開発する方法について説明します。 これにより、Graphプログラムの作成、デバッグ、パッケージ化、アップロード、および実行方法について学習できます。

前提条件

次の前提条件が満たされています。

Graphプログラムを書く

  • MaxCompute Javaクラスを作成します。

    このトピックでは、BaseLoadingVertexResolverクラスとSSSPクラスの作成を例として使用します。

    1. プロジェクトタブの左側のナビゲーションウィンドウで、src > main > javaを選択して、javaを右クリックし、New > MaxCompute Javaを選択します。

      11

    2. [名前] を指定し、[GraphLoader] または [Vertex] を選択して、Enterキーを押します。

      新建Class

      • Name: 作成するMaxCompute Javaクラスの名前。

        説明

        パッケージが作成されていない場合は、packagename.classnameと入力します。 システムは自動的にパッケージを作成します。

      • クラスタイプとして [GraphLoader] または [Vertex] を選択します。

        説明
        • GraphLoader: グラフを読み込みます。 このクラスは、GraphJobのsetGraphLoaderClassメソッドを使用して指定できます。

        • Vertex: グラフ内の頂点を定義します。 頂点には、id、value、停止、およびエッジのプロパティがあります。 このクラスは、GraphJobのsetVertexClassメソッドを使用して指定できます。

    3. MaxCompute Javaクラスを作成したら、エディタでJavaプログラムを開発します。 BaseLoadingVertexResolverクラスとSSSPクラスの詳細については、「SSSP」をご参照ください。

  • pom.xmlファイルを設定します。 次のコードは、インポートする必要がある依存関係を示しています。

    <dependency>
        <groupId>com.aliyun.odps</groupId>
        <artifactId>odps-sdk-core</artifactId>
        <version>0.48.0-public</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.odps</groupId>
        <artifactId>odps-sdk-graph</artifactId>
        <version>0.48.0-public</version>
    </dependency>
    
    <!-- used for local test -->
    <dependency>
        <groupId>com.aliyun.odps</groupId>
        <artifactId>odps-graph-local</artifactId>
        <version>0.48.0-public</version>
    </dependency>

    pom.xmlファイルの設定が完了したら、Mavenペインで依存関係が正常に読み込まれたことを確認できます。

Graphプログラムのデバッグ

ローカルでGraphプログラムを実行し、結果が期待を満たすかどうかを確認します。

  1. 作成したJavaスクリプトを右クリックし、実行 を選択します。

  2. 実行 /デバッグ設定ダイアログボックスで、ランタイムパラメーターを設定します。

    graph

    • MaxComputeプロジェクト: Graphプログラムを実行するMaxComputeプロジェクト。

    • Download Record limit: ダウンロードできるレコードの最大数。 デフォルト値:100

  3. [OK] をクリックしてUDFを実行します。

    このトピックではローカル実行を選択するため、システムはwarehouseディレクトリ内の指定されたテーブルからデータを入力として読み取ります。 コンソールでログ出力を表示できます。 warehouseの詳細については、「概要」をご参照ください。

MapReduceプログラムのパッケージ化とアップロード

作成したMapReduceプログラムをデバッグした後、MapReduceプログラムをJARファイルにパッケージ化し、そのファイルをリソースとしてMaxComputeプロジェクトにアップロードします。 詳細については、「Javaプログラムのパッケージ化、アップロード、登録」をご参照ください。

Graphプログラムを実行する

  1. IntelliJ IDEAツールの左側のナビゲーションウィンドウで、[Project Explorer] をクリックします。

  2. MaxComputeプロジェクトの名前を右クリックし、コンソールで開く を選択します。

  3. [コンソール] セクションで、次のコマンドを実行します。 実際の状況に基づいて、PageRank、pagerank_in、pagerank_outを置き換えます。

    その他のコマンドについては、「MapReduceジョブの送信」をご参照ください。

    jar -libjars xxx.jar -classpath /Users/home/xxx.jar com.aliyun.odps.graph.examples.PageRank pagerank_in pagerank_out;
    • PageRank: Graphプログラムで定義されているメインクラス。

    • pagerank_in: 入力テーブル。

    • pagerank_out: 出力テーブル。