全部产品
Search
文档中心

MaxCompute:Tulis Pekerjaan Graph

更新时间:Jul 02, 2025

Topik ini menjelaskan cara menulis Pekerjaan Graph. Dalam topik ini, algoritma Single Source Shortest Path (SSSP) digunakan sebagai contoh.

Prasyarat

  • Klien MaxCompute telah diinstal, dikonfigurasi, dan terhubung ke instance MaxCompute. Untuk informasi lebih lanjut, lihat Klien MaxCompute (odpscmd).

  • Alat pengembangan IDEA 2024 telah disiapkan, dan MaxCompute Studio telah diinstal serta dikonfigurasi (waktu pembaruan versi untuk MaxCompute Studio harus dalam tahun 2024). Untuk informasi lebih lanjut tentang cara menginstal dan mengonfigurasi MaxCompute Studio, lihat Instal MaxCompute Studio dan Konfigurasikan MaxCompute Studio.

  • Maven apache-maven-3.5.0 telah dikonfigurasi.

  • Java Development Kit (JDK) 1.8 atau yang lebih baru telah diinstal.

  • File data telah disiapkan. File sssp.txt digunakan dalam contoh ini. File sssp.txt berisi data berikut:

    1 2:2,3:1,4:4
    2 1:2,3:2,4:1
    3 1:1,2:2,5:1
    4 1:4,2:1,5:1
    5 3:1,4:1

Prosedur

  1. Jalankan klien MaxCompute dan eksekusi pernyataan berikut untuk membuat tabel input bernama sssp_in dan tabel output bernama sssp_out.

    CREATE TABLE sssp_in (v bigint, es string);
    CREATE TABLE sssp_out (vertex bigint, value bigint);
  2. Jalankan perintah Tunnel untuk mengunggah data dalam file sssp.txt ke tabel sssp_in. Pisahkan data di kolom yang berbeda dengan spasi.

    tunnel u -fd " " sssp.txt sssp_in;
    Catatan

    Dalam contoh ini, file sssp.txt disimpan di direktori bin dari klien MaxCompute. Perhatikan direktori sebenarnya di mana file sssp.txt disimpan.

  3. Tulis kode SSSP.

    1. Buat MaxCompute Java module bernama odps-graph-example-sssp di IntelliJ IDEA.

      Catatan

      Buat modul Java MaxCompute. Untuk informasi lebih lanjut, lihat Buat Modul Java MaxCompute.

    2. Buat kelas BaseLoadingVertexResolver dan kelas SSSP di odps-graph-example-sssp. Untuk informasi lebih lanjut tentang cara membuat kelas, lihat kode sampel untuk graf berarah yang diberikan di SSSP. Berikut adalah kode konfigurasi dalam file 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>
    3. Di IntelliJ IDEA, kemas program Java menjadi file JAR menggunakan MaxCompute Studio. Untuk informasi lebih lanjut tentang cara mengemas program Java menjadi file JAR, lihat Kemas Program Java, unggah paket, dan buat MaxCompute UDF.

      一键打包

      Catatan

      Dalam contoh ini, paket JAR yang diterapkan di proyek MaxCompute bernama odps-graph-example-sssp.jar.

  4. Jalankan perintah berikut pada klien MaxCompute untuk menggunakan algoritma SSSP:

    jar -libjars odps-graph-example-sssp.jar -classpath <LOCAL_JAR_PATH>/odps-graph-example-sssp.jar SSSP 1 sssp_in sssp_out;

    LOCAL_JAR_PATH: menunjukkan jalur lokal dari paket odps-graph-example-sssp.jar.

    Setelah Anda menjalankan perintah di atas, jalankan select * from sssp_out; untuk memeriksa tabel sssp_out dan verifikasi hasilnya.

    vertex    value
    1        0
    2        2
    3        1
    4        3
    5        2
    • vertex: menunjukkan vertex saat ini.

    • value: menunjukkan nilai SSSP dari vertex saat ini ke Vertex Sumber 1.

    Catatan

    Jika Anda ingin menggunakan fitur Graph, Anda dapat langsung mengirimkan Pekerjaan Graph.