全部产品
Search
文档中心

DataWorks:Node MaxCompute MR

更新时间:Jul 06, 2025

MaxCompute mendukung API MapReduce. Anda dapat membuat dan mengirimkan node MaxCompute MR yang memanggil API Java MapReduce untuk menulis program MapReduce serta memproses dataset besar di MaxCompute.

Prasyarat

  • Pengguna RAM yang diinginkan telah ditambahkan ke ruang kerja DataWorks sebagai anggota dan diberi peran Development atau Workspace Administrator. Berhati-hatilah saat memberikan peran Workspace Administrator karena peran tersebut memiliki lebih banyak izin daripada yang diperlukan. Jika Anda menggunakan pengguna RAM untuk mengembangkan tugas, prasyarat ini wajib. Untuk informasi lebih lanjut tentang cara menambahkan anggota, lihat Tambahkan anggota ruang kerja dan tetapkan peran kepada mereka.

    Catatan

    Jika Anda menggunakan akun Alibaba Cloud, abaikan prasyarat ini.

  • Direktori ruang kerja telah dibuat. Untuk informasi lebih lanjut, lihat Direktori ruang kerja.

  • Sumber daya yang diperlukan telah diunggah dan diterapkan. Untuk informasi lebih lanjut, lihat Manajemen sumber daya.

  • Sebuah node MaxCompute MR telah dibuat.

Catatan

Sebelum membuat node MaxCompute MR, Anda harus mengunggah dan menerapkan sumber daya yang diperlukan.

Informasi latar belakang

MapReduce adalah kerangka komputasi terdistribusi yang menggabungkan kode logika bisnis yang ditulis oleh pengguna dengan komponen bawaan untuk membentuk program terdistribusi lengkap dan menjalankan program tersebut dalam kluster Hadoop. MaxCompute menyediakan dua versi API MapReduce. Untuk informasi lebih lanjut, lihat MapReduce.

  • MaxCompute MapReduce: API MapReduce asli dari MaxCompute. Versi API ini berjalan cepat dan memungkinkan Anda mengembangkan program tanpa perlu mengekspos sistem file.

  • Extended MaxCompute MapReduce (MR2): Ekstensi dari MaxCompute MapReduce. Versi API ini mendukung logika yang digunakan untuk menjadwalkan tugas kompleks. Metode implementasinya sama dengan MaxCompute MapReduce.

Di DataWorks, Anda dapat menggunakan node MaxCompute MR untuk menjadwalkan dan menjalankan tugas MaxCompute MapReduce serta mengintegrasikan tugas tersebut dengan jenis tugas lainnya.

Batasan

Untuk informasi tentang batasan pada node MaxCompute MR, lihat Batasan.

Prosedur

  1. Di tab konfigurasi node MaxCompute MR, lakukan operasi pengembangan berikut:

    Kembangkan kode MR

    Contoh ini menunjukkan cara menggunakan node MaxCompute MR untuk menghitung jumlah kemunculan setiap string dalam tabel wc_in dan menulis hasilnya ke tabel wc_out.

    1. Unggah, kirimkan, dan terapkan sumber daya mapreduce-examples.jar. Untuk informasi lebih lanjut, lihat Manajemen sumber daya.

      Catatan

      Untuk informasi tentang logika implementasi dalam paket mapreduce-examples.jar, lihat Contoh WordCount.

    2. Di tab konfigurasi node MaxCompute MR, masukkan kode sampel berikut:

      -- Buat tabel input.
      CREATE TABLE IF NOT EXISTS wc_in (key STRING, VALUE STRING);
      -- Buat tabel output.
      CREATE TABLE IF NOT EXISTS wc_out (key STRING, cnt BIGINT);
          --- Buat tabel dual.
          DROP TABLE IF EXISTS dual;
          CREATE TABLE dual(id BIGINT); -- Jika tidak ada tabel dual di ruang kerja saat ini, buat tabel dual dan inisialisasi data.
          --- Inisialisasi tabel dual.
          INSERT OVERWRITE TABLE dual SELECT count(*) FROM dual;
          --- Masukkan data sampel ke tabel wc_in.
          INSERT OVERWRITE TABLE wc_in SELECT * FROM (
          SELECT 'project','val_pro' FROM dual 
          UNION ALL 
          SELECT 'problem','val_pro' FROM dual
          UNION ALL 
          SELECT 'package','val_a' FROM dual
          UNION ALL 
          SELECT 'pad','val_a' FROM dual
            ) b;
      -- Referensikan sumber daya JAR yang diunggah. Untuk mereferensikan sumber daya, temukan sumber daya JAR di panel MANAJEMEN SUMBER DAYA, klik kanan nama sumber daya JAR, dan pilih Referensikan Sumber Daya.
      --@resource_reference{"mapreduce-examples.jar"}
      jar -resources mapreduce-examples.jar -classpath ./mapreduce-examples.jar com.aliyun.odps.mapred.open.example.WordCount wc_in wc_out
      Catatan

      Deskripsi kode:

      • --@resource_reference: Pernyataan ini muncul ketika Anda mengklik kanan nama sumber daya di panel MANAJEMEN SUMBER DAYA dan memilih Select Resources.

      • -resources: Nama sumber daya JAR yang direferensikan.

      • -classpath: Jalur sumber daya JAR yang direferensikan. Anda hanya perlu memasukkan ./ dan nama sumber daya yang direferensikan.

      • com.aliyun.odps.mapred.open.example.WordCount: Nama kelas utama dalam sumber daya JAR yang akan dipanggil selama runtime node. Nama kelas utama harus sama dengan yang ada di sumber daya JAR.

      • wc_in: Nama tabel input node MaxCompute MR. Tabel input dibuat menggunakan kode sebelumnya.

      • wc_out: Nama tabel output node MaxCompute MR. Tabel output dibuat menggunakan kode sebelumnya.

      • Jika Anda menggunakan beberapa sumber daya JAR dalam satu node MaxCompute MR, pisahkan jalur sumber daya JAR yang direferensikan dengan koma (,). Contoh: -classpath ./xxxx1.jar,./xxxx2.jar.

    Jalankan tugas di node MaxCompute MR

    1. Di panel navigasi kanan tab konfigurasi node MaxCompute MR, klik Debugging Configurations. Di tab Konfigurasi Debugging, konfigurasikan parameter Computing Resource dan Resource Group.

      Catatan

      Jika Anda ingin mengakses sumber data melalui Internet atau virtual private cloud (VPC), Anda harus menggunakan grup sumber daya untuk penjadwalan yang terhubung ke sumber data. Untuk informasi lebih lanjut, lihat Solusi konektivitas jaringan.

    2. Di daftar drop-down Select DataSource, pilih sumber data MaxCompute yang Anda tambahkan. Di bilah alat atas tab konfigurasi, klik Run untuk menjalankan tugas di node MaxCompute MR.

    (Opsional) Kueri hasil

    Kueri data di tabel output wc_out menggunakan node SQL MaxCompute.

    SELECT * FROM wc_out;

    Data yang dikembalikan:

    +------------+------------+
    | key        | cnt        |
    +------------+------------+
    | package    | 1          |
    | pad        | 1          |
    | problem    | 1          |
    | project    | 1          |
    | val_a      | 2          |
    | val_pro    | 2          |
    +------------+------------+
  2. Jika Anda ingin menjalankan tugas di node MaxCompute MR secara berkala, konfigurasikan informasi penjadwalan sesuai kebutuhan bisnis Anda. Untuk informasi lebih lanjut, lihat Properti penjadwalan.

  3. Setelah tugas dikonfigurasi, kirimkan dan terapkan tugas. Untuk informasi lebih lanjut, lihat Penyebaran node.

  4. Setelah tugas diterapkan, lihat status tugas di Operation Center. Untuk informasi lebih lanjut, lihat Memulai dengan Operation Center.

Referensi

Untuk informasi tentang cara mengembangkan tugas MaxCompute MapReduce di skenario lain, lihat topik berikut:

FAQ: Anda dapat mempelajari FAQ tentang tugas MaxCompute MapReduce. Dengan cara ini, Anda dapat mengidentifikasi dan menyelesaikan masalah secara efisien ketika terjadi pengecualian. Untuk informasi lebih lanjut, lihat FAQ tentang MaxCompute MapReduce.