All Products
Search
Document Center

DataWorks:Buat custom image MaxCompute

Last Updated:Aug 21, 2026

DataWorks memungkinkan Anda membuat custom image MaxCompute saat membuat custom image DataWorks dari lingkungan pengembangan pribadi. Pendekatan ini menyederhanakan pengembangan karena Anda hanya perlu menginstal dependensi pihak ketiga sekali, lalu menerbitkan lingkungan tersebut sebagai image yang dapat digunakan kembali. Image ini dapat langsung dirujuk di node DataWorks—seperti node PyODPS 3 dan node Notebook—tanpa perlu memaketkan dan mengunggah resource untuk setiap job.

Informasi latar belakang

Fitur manajemen image MaxCompute memungkinkan Anda membuat custom image. Anda dapat langsung menggunakan image yang telah dibuat dalam skenario seperti pengembangan SQL UDF, PyODPS, dan MaxFrame tanpa perlu memaketkan dan mengunggah resource. Di DataWorks, Anda dapat membangun image DataWorks dan custom image MaxCompute secara bersamaan dari lingkungan pengembangan pribadi.

Prasyarat

Buat custom image MaxCompute

Persiapan

Batasan

Saat membuat custom image MaxCompute:

  • Ukuran image: Ukuran maksimum untuk satu image MaxCompute adalah 10 GB.

  • Jumlah image: Setiap penyewa MaxCompute dapat mengunggah maksimal 10 image.

Saat menggunakan image MaxCompute: DataWorks membangun image MaxCompute berdasarkan lingkungan Python 3.11. Untuk menjalankan custom image MaxCompute yang dibuat di DataWorks, pastikan lingkungan Python Anda menggunakan versi 3.11.

Buat instans lingkungan pengembangan pribadi

Buka Data Studio dan buat instans lingkungan pengembangan pribadi menggunakan image dataworks-maxcompute:py3.11-ubuntu20.04. Ini diperlukan untuk membuat custom image MaxCompute saat Anda menyimpan lingkungan tersebut.

  1. Buka Data Studio.

    1. Buka halaman Ruang Kerja di Konsol DataWorks. Di bilah navigasi atas, pilih wilayah yang diinginkan. Temukan ruang kerja yang diinginkan dan pilih Shortcuts > Data Studio di kolom Actions.

    2. Di panel navigasi kiri halaman Data Studio, klik ikon image untuk membuka halaman DataStudio.

  2. Buka halaman untuk membuat lingkungan pengembangan pribadi, lalu klik Personal development environment di bagian atas halaman guna membuat Instans sesuai kebutuhan.

    • Jika Anda belum memiliki instans lingkungan pengembangan pribadi, klik Go to New.

    • Jika Anda sudah memiliki instans, klik Manage instances. Di daftar instans lingkungan pengembangan pribadi, klik Create Instance.

  3. Konfigurasikan lingkungan pengembangan pribadi. Untuk membuat custom image MaxCompute di DataWorks, Anda harus mengonfigurasi pengaturan berikut. Untuk parameter lainnya, lihat Buat instans lingkungan pengembangan pribadi.

    • Konfigurasi image: Pilih dataworks-maxcompute:py3.11-ubuntu20.04.

      Catatan
      • Anda hanya dapat membuat custom image MaxCompute jika memilih image dataworks-maxcompute:py3.11-ubuntu20.04.

      • Custom image DataWorks yang dibangun dari image dasar dataworks-maxcompute:py3.11-ubuntu20.04 dapat digunakan untuk pengembangan job MaxFrame di node Notebook, Python, dan Shell DataWorks.

    • Pengaturan jaringan: Pilih VPC yang telah Anda konfigurasi untuk akses ACR. Hal ini memastikan bahwa instans lingkungan pengembangan pribadi dapat mendorong image ke instans ACR selama proses build.

Instal dependensi

Ikuti langkah-langkah berikut untuk menginstal dependensi pihak ketiga yang diperlukan untuk pengembangan MaxCompute di terminal instans lingkungan pengembangan pribadi Anda. Topik ini menggunakan jieba sebagai contoh.

  1. Di bagian atas halaman Data Studio, klik Personal development environment dan pilih instans lingkungan pengembangan pribadi yang telah Anda buat di Buat instans lingkungan pengembangan pribadi.

  2. Di bilah alat bagian bawah halaman Data Studio, klik ikon image untuk membuka terminal.

  3. Di terminal lingkungan pengembangan pribadi, jalankan perintah berikut untuk mengunduh dan memverifikasi instalasi dependensi pihak ketiga jieba.

    ## Install the third-party dependency.
    pip install jieba;
    ## View the third-party dependency.
    pip show jieba;

Simpan custom image

Ikuti langkah-langkah berikut untuk menyimpan lingkungan pengembangan pribadi sebagai image DataWorks dan sekaligus membuat custom image MaxCompute. DataWorks secara otomatis mengunggah image yang dihasilkan ke instans ACR di bawah akun yang sama.

  1. Buka halaman manajemen instans lingkungan pengembangan pribadi.

    1. Klik Personal Development Environment · Please Select di bagian atas halaman, lalu klik nama instans lingkungan pengembangan pribadi yang telah Anda buat.

    2. Di kotak dialog yang muncul, pilih Management Environment untuk membuka halaman Personal Development Environment Instances.

  2. Buka halaman Create Image.

    1. Di halaman daftar instans lingkungan pengembangan pribadi, temukan instans yang telah Anda buat.

    2. Di kolom Operation instans tersebut, klik Create Image.

  3. Konfigurasikan parameter image seperti dijelaskan dalam tabel berikut, lalu klik Confirm.

    Parameter

    Deskripsi

    Image Name

    Nama custom image DataWorks. Jika image disinkronkan ke MaxCompute, nama ini juga digunakan sebagai nama custom image MaxCompute. Contoh: image_jieba.

    Image instance

    Pilih instans ACR Edisi Standar atau lebih tinggi. Untuk informasi selengkapnya, lihat Buat Instans Perusahaan.

    Catatan

    Hanya instans ACR Edisi Standar atau lebih tinggi yang dapat digunakan untuk membangun custom image MaxCompute.

    Namespace

    Pilih namespace untuk instans ACR. Untuk informasi selengkapnya, lihat Buat namespace.

    Image Repository

    Pilih repository image untuk instans ACR. Untuk informasi selengkapnya, lihat Buat repository image.

    Image Version

    Versi custom image.

    Synchronize to MaxCompute

    Dalam contoh ini, pilih Yes. Saat opsi ini diaktifkan, penerbitan image akan membuat image MaxCompute selain image DataWorks.

    Catatan

    Opsi ini tersedia hanya jika Image instance yang dipilih adalah Edisi Standar atau lebih tinggi. Untuk tipe instans lainnya, opsi ini tidak tersedia secara default.

    Task Type

    Pilih tipe task yang dapat menggunakan image DataWorks. Dalam contoh ini, Anda dapat memilih Notebook.

    • Notebook

    • Python

    • Shell

  4. Konfirmasi status penyimpanan image.

    Di halaman daftar instans, Anda dapat memeriksa status penyimpanan image di kolom Image pada lingkungan pengembangan pribadi.

  5. Klik Confirm untuk membuat image.

  6. Jika kolom Image tidak terlihat, klik ikon image di sisi kanan instans dan pilih centang Image untuk menampilkannya.

  7. Tunggu hingga image selesai dibuat. Saat status berubah menjadi Save successfully, arahkan kursor ke ikon image di samping status tersebut. Di pop-up yang muncul, klik here untuk membuka halaman Image Management.

Terbitkan custom image

Setelah menyimpan image dari lingkungan pengembangan pribadi Anda, ikuti langkah-langkah berikut untuk menerbitkannya. Operasi ini menyinkronkan image dari instans ACR ke DataWorks dan MaxCompute, sehingga menghasilkan custom image DataWorks dan custom image MaxCompute.

  1. Buka halaman Ruang Kerja DataWorks dan pilih wilayah target di bilah navigasi atas.

  2. Di panel navigasi kiri, buka tab Image Management > Custom Image. Untuk image Anda, klik Test. Setelah pengujian berhasil, klik Publish.

    Catatan
    • Saat menguji custom image, pilih kelompok sumber daya Serverless untuk Test Resource Group.

    • VPC dari kelompok sumber daya Serverless yang digunakan untuk pengujian harus sesuai dengan VPC instans ACR Anda.

    • Jika pengujian custom image Anda mengalami timeout saat mengambil paket pihak ketiga, periksa apakah VPC yang terhubung ke Test Resource Group memiliki akses internet. Untuk mengonfigurasi akses publik untuk VPC, lihat Gunakan fitur SNAT dari Gateway NAT Internet untuk mengakses internet.

  3. Muat ulang halaman dan pastikan Publish Status image dalam daftar berubah menjadi Published.

  4. Di kolom Operation untuk image target, klik image > Change Workspace untuk mengikat custom image ke ruang kerja.

Konfirmasi status image MaxCompute

Setelah Anda menerbitkan image DataWorks, image MaxCompute yang sesuai juga akan dibuat. Saat status image di tab Image Management > Custom Image di Konsol DataWorks berubah menjadi Published, buka Konsol MaxCompute dan ikuti langkah-langkah di Tambahkan custom image ke MaxCompute untuk melihat custom image MaxCompute yang telah dibuat.

Gunakan custom image MaxCompute

Catatan penggunaan

  • Untuk mengembangkan dengan MaxFrame, image harus berisi layanan MaxFrame. Untuk menjalankan custom image MaxCompute di DataWorks, image harus dibangun di lingkungan Python 3.11.

  • Untuk menggunakan custom image MaxCompute dalam pengembangan job MaxFrame di DataWorks, pastikan task dijalankan di image DataWorks yang mencakup lingkungan runtime MaxFrame. Persyaratan spesifiknya adalah sebagai berikut:

Buka Data Studio

  1. Buka halaman Ruang Kerja di Konsol DataWorks. Di bilah navigasi atas, pilih wilayah yang diinginkan. Temukan ruang kerja yang diinginkan dan pilih Shortcuts > Data Studio di kolom Actions.

  2. Di panel navigasi kiri halaman Data Studio, klik ikon image untuk membuka halaman DataStudio.

Notebook node

Bagian ini menggunakan node Notebook sebagai contoh untuk menunjukkan cara menggunakan custom image MaxCompute dalam MaxFrame. Contoh ini menggunakan paket jieba dari custom image MaxCompute.

  1. Buat node Notebook.

    1. Di bagian atas halaman, klik Personal development environment dan pilih instans lingkungan pengembangan pribadi yang telah dibuat.

    2. Di sebelah kanan Project Directory, klik ikon image dan pilih New Node > Notebook untuk membuka kotak dialog New Node.

    3. Di kotak dialog New Node, masukkan Name untuk node tersebut dan klik Confirm untuk membuka editor node.

  2. Edit kode node Notebook.

    # -*- coding: utf-8 -*-
    from odps import ODPS
    from maxframe.session import new_session
    import maxframe.dataframe as md  # Make sure that the maxframe.dataframe module is correctly imported.
    from maxframe import config
    # Prepare the dataset.
    test_data = [
        "Grass growing on the old plain"
    ]
    # Define a function to process data by using the jieba package from the MaxCompute custom image.
    # Use the MaxCompute custom image.
    def image_test():
        config.options.sql.settings = {
            "odps.session.image": "image_jieba"  # In this example, the MaxCompute image name is image_jieba. You can view the image name in the MaxCompute console.
        }
        def process(row):
            import jieba
            result = jieba.cut(row, cut_all=False)
            return "/".join(result)
        # Establish a MaxFrame connection.
        odps = %odps
        session = new_session(odps) 
        # Print the logview URL to view execution details.
        logview = session.get_logview_address()
        print("logview:", logview)
        # Create a MaxFrame DataFrame.
        # Encapsulate local test data, such as ["Grass growing on the old plain"], into a MaxFrame DataFrame object.
        df = md.DataFrame(test_data, columns=["raw_text"])
        # Apply the tokenization function to process the data in the DataFrame object.
        df["processed_text"] = df["raw_text"].map(process, dtype='object')
        print("Output:",df.execute().fetch())
    image_test()
    print("Data processing completed!")
  3. Di sisi kiri editor node, klik ikon image. Di kotak dialog yang muncul, pilih kernel Python 3.11, jalankan node, dan lihat informasi log.

Node PyODPS 3

Bagian ini menggunakan node PyODPS 3 sebagai contoh untuk menunjukkan cara menggunakan custom image MaxCompute dalam MaxFrame. Contoh ini menggunakan paket jieba dari custom image MaxCompute.

  1. Buat node PyODPS 3.

    1. Di sebelah kanan Project Directory, klik ikon image dan pilih New Node > MaxCompute > PyODPS 3 untuk membuka kotak dialog New Node.

    2. Di kotak dialog New Node, masukkan Name untuk node tersebut dan klik Confirm untuk membuka editor node.

  2. Edit kode node PyODPS 3.

    # -*- coding: utf-8 -*-
    from odps import ODPS, options
    from odps.df import DataFrame
    import pandas as pd
    # Prepare the table data.
    options.sql.settings = {"odps.isolation.session.enable": True}
    # Create a test table.
    table = o.create_table('jieba_work_tb', 'col string', if_not_exists=True)
    # Add sample data.
    instance = o.run_sql("insert into table jieba_work_tb values ('Grass growing on the old plain')")
    instance.wait_for_success()
    # Define a function to process data by using the jieba package from the MaxCompute custom image.
    def image_test():
        def process(row):
            import jieba
            result = jieba.cut(row, cut_all=False)
            return "/".join(result)
        # Encapsulate the table as a DataFrame object.
        df = o.get_table("jieba_work_tb").to_df()
        # Apply the tokenization function to process the data in the DataFrame object.
        df = df.col.map(process).execute(image='image_jieba') # In this example, the MaxCompute image name is image_jieba. You can view the image name in the MaxCompute console.
        print("Output:",df)
    image_test()
    print("Data processing completed!")
  3. Konfigurasikan node PyODPS 3.

    Di sisi kanan halaman pengeditan node, klik Run Configuration dan konfigurasikan node seperti dijelaskan dalam tabel berikut.

    Parameter

    Deskripsi

    Compute Resource

    Pilih resource komputasi MaxCompute yang telah Anda sambungkan.

    Resource Group

    Pilih kelompok sumber daya Serverless yang telah Anda sambungkan.

    Image

    Pilih dataworks_pyodps_py311_task_pod:prod_20241210.

  4. Di bilah alat bagian atas halaman pengeditan node, klik ikon image untuk menjalankan node.