全部产品
Search
文档中心

MaxCompute:Gunakan MaxFrame di lingkungan on-premises

更新时间:Jul 02, 2025

MaxCompute memungkinkan Anda menggunakan MaxFrame pada klien MaxFrame on-premises, di mana fungsionalitas MaxFrame SDK telah dienkapsulasi. Topik ini menjelaskan cara menggunakan MaxFrame di lingkungan on-premises.

Prasyarat

Sebelum menggunakan MaxFrame, pastikan langkah-langkah berikut telah selesai:

  • Python 3.7 atau 3.11 telah terinstal di lingkungan on-premises Anda. Penggunaan versi lain dapat menyebabkan kesalahan.

  • Alat pip telah terinstal di lingkungan on-premises Anda. Jika alat pip belum terinstal dalam versi Python Anda, kunjungi situs resmi Python untuk panduan instalasi pip.

  • Proyek MaxCompute telah dibuat. Untuk informasi lebih lanjut, lihat Buat Proyek MaxCompute.

Instal MaxFrame

  1. Di CLI sistem Anda, seperti Command Prompt pada Windows, jalankan perintah pip untuk menginstal klien MaxFrame. Contoh perintah:

    pip install --upgrade maxframe
  2. Jalankan perintah berikut untuk memeriksa apakah klien MaxFrame telah terinstal. Jika tidak ada nilai atau pesan kesalahan yang dikembalikan, instalasi berhasil.

    python -c "import maxframe.dataframe as md"

    Jika terjadi kesalahan, periksa versi Python default dan ubah ke Python 3.7 atau 3.11. Contoh perintah:

    # Periksa versi Python default sistem.
    python --version 
    
    # Ubah versi Python default sistem menjadi Python 3.7. Dalam perintah berikut, $path/python3.7 adalah jalur instalasi Python.
    $path/python3.7 -m pip install setuptools>=3.0

Gunakan MaxFrame

  1. Buat file .py di lingkungan on-premises, seperti test.py. Salin kode contoh berikut ke file test.py, lalu simpan file tersebut.

    import os
    import maxframe.dataframe as md
    from odps import ODPS
    from maxframe import new_session
    
    # Buat entri MaxCompute.
    o = ODPS(
        # Atur variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID ke ID AccessKey akun Alibaba Cloud Anda.
        # Atur variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_SECRET ke Rahasia AccessKey akun Alibaba Cloud Anda.
        # Kami menyarankan agar Anda tidak langsung menggunakan ID AccessKey dan Rahasia AccessKey yang sebenarnya.
        os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),
        os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
        project='your-default-project',
        endpoint='your-end-point',
    )
    table = o.create_table("test_source_table", "a string, b bigint", if_not_exists=True)
    with table.open_writer() as writer:
        writer.write([
            ["value1", 0],
            ["value2", 1],
        ])
    
    # Buat sesi MaxFrame.
    session = new_session(o)
    
    df = md.read_odps_table("test_source_table",index_col="b")
    df["a"] = "prefix_" + df["a"]
    
    # Cetak data DataFrame.
    print(df.execute().fetch())
    
    # Tulis data dari DataFrame MaxFrame ke tabel MaxCompute.
    md.to_odps_table(df, "test_prefix_source_table").execute()
    
    # Hapus sesi MaxFrame.
    session.destroy()

    Parameter:

    • ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET: Atur variabel lingkungan ini ke ID AccessKey dan Rahasia AccessKey akun Alibaba Cloud yang memiliki izin MaxCompute untuk objek yang ingin dikelola di proyek MaxCompute Anda. ID AccessKey dapat diperoleh di halaman Pasangan AccessKey pada Konsol Manajemen Alibaba Cloud.

    • your-default-project: Nama proyek MaxCompute Anda. Untuk melihat nama proyek MaxCompute, masuk ke konsol MaxCompute dan pilih Workspace > Projects di panel navigasi di sebelah kiri.

    • your_end_point: Titik akhir wilayah tempat proyek MaxCompute Anda berada. Untuk informasi lebih lanjut, lihat Titik Akhir.

  2. Pergi ke jalur file test.py dan jalankan file tersebut. Contoh perintah:

    python test.py

Verifikasi hasil

Jalankan kode Python dan kueri data di tabel hasil. Jika hasil sesuai dengan harapan, MaxFrame telah terinstal dan terhubung ke MaxCompute.

  1. Jalankan kode Python. Hasil berikut akan dikembalikan:

    b           a
    0  prefix_value1
    1  prefix_value2
  2. Eksekusi pernyataan SQL berikut di proyek MaxCompute untuk mengkueri data di tabel test_prefix_source_table:

    SELECT * FROM test_prefix_source_table;

    Hasil berikut akan dikembalikan:

    +------------+------------+
    | b          | a          |
    +------------+------------+
    | 0          | prefix_value1 |
    | 1          | prefix_value2 |
    +------------+------------+