All Products
Search
Document Center

MaxCompute:Koneksi menggunakan client lokal (odpscmd)

Last Updated:Mar 03, 2026

Client lokal MaxCompute (odpscmd) menyediakan antarmuka baris perintah untuk operasi yang efisien di mesin lokal Anda. Gunakan client ini untuk menjalankan perintah dan mengelola proyek MaxCompute. Topik ini menjelaskan cara mengunduh, menginstal, mengonfigurasi, menjalankan, serta menggunakan client tersebut.

Lingkup

  • Perangkat Anda harus telah menginstal Java 8 atau versi yang lebih baru.

  • Kompatibilitas versi

    • Client MaxCompute v0.28.0 dan versi selanjutnya mendukung JDK 1.9. Versi sebelumnya hanya mendukung JDK 1.8. Setelah menjalankan client MaxCompute, periksa nomor versi di antarmuka baris perintah. Jalankan client MaxCompute.

    • Format output client tidak kompatibel ke depan (forward-compatible). Sintaks dan perilaku perintah dapat berbeda antarversi. Jangan mengurai output client untuk otomatisasi.

    • Untuk versi client lainnya, lihat aliyun-odps-console.

  • Format encoding

    Client menggunakan encoding UTF-8 secara default. Jika lingkungan lokal Anda menggunakan encoding berbeda, karakter Tionghoa dalam hasil kueri atau file yang diunggah mungkin muncul sebagai teks rusak (garbled). Hal ini dapat terjadi saat mengkueri tabel MaxCompute atau mengunggah file data lokal menggunakan perintah Tunnel.

Harga

Menghubungkan ke proyek MaxCompute menggunakan client gratis. Namun, operasi yang Anda jalankan melalui client tersebut dapat dikenai biaya MaxCompute. Misalnya, mengirimkan kueri SQL atau perintah write akan mengonsumsi sumber daya komputasi. Menulis data juga menggunakan ruang penyimpanan. Anda akan dikenai biaya untuk komputasi dan penyimpanan. Untuk detailnya, lihat Item dan metode penagihan.

Instal dan konfigurasikan client MaxCompute

Mulai dari v0.27.0, client mendukung tipe data MaxCompute V2.0 yang baru. Kami merekomendasikan penggunaan tipe data baru ini. Untuk daftar tipe data yang didukung, lihat Tipe data MaxCompute V2.0.

Ikuti langkah-langkah berikut:

  1. Unduh paket client MaxCompute (GitHub).

    Catatan
    • Buka halaman rilis client melalui tautan di atas. Unduh paket client MaxCompute terbaru (odpscmd_public.zip).

    • Jika tautan di atas gagal, coba unduh paket client MaxCompute (OSS). Untuk masalah akses GitHub, cari solusinya di mesin pencari.

  2. Ekstrak paket yang telah diunduh. Anda akan mendapatkan folder bin, conf, lib, dan plugins.

  3. Buka folder conf dan konfigurasikan file odps_config.ini.

    File odps_config.ini menggunakan simbol hash (#) untuk komentar. Tabel berikut menjelaskan parameter-parameternya.

    Parameter

    Wajib

    Deskripsi

    Contoh

    project_name

    Ya

    Nama proyek MaxCompute yang ingin Anda akses.

    Jika Anda membuat ruang kerja dalam mode standar, pastikan untuk membedakan antara nama proyek produksi dan pengembangan (_dev) saat mengonfigurasi project_name. Lihat Perbedaan antara mode ruang kerja.

    1. Login ke Konsol MaxCompute, lalu pilih wilayah di pojok kiri atas.

    2. Pada panel navigasi di sebelah kiri, pilih Manage Configurations > Projects.

    3. Pada halaman Projects, temukan nama proyek MaxCompute Anda.

    doc_test_dev

    access_id

    Ya

    ID AccessKey Akun Alibaba Cloud atau Pengguna RAM Anda. Buka halaman AccessKey management untuk mendapatkan ID AccessKey Anda.

    None

    access_key

    Ya

    Rahasia AccessKey yang sesuai dengan ID AccessKey Anda.

    None

    end_point

    Ya

    Titik akhir untuk layanan MaxCompute.

    Atur berdasarkan wilayah dan jenis jaringan yang Anda pilih saat membuat proyek MaxCompute. Untuk daftar titik akhir berdasarkan wilayah dan jaringan, lihat Endpoint.

    Penting
    • Titik akhir ini digunakan untuk layanan MaxCompute. Gunakan titik akhir Tunnel untuk layanan MaxCompute Tunnel. Masukkan titik akhir MaxCompute di sini.

    • Titik akhir yang salah menyebabkan error koneksi. Periksa kembali entri Anda.

    http://service.cn-hangzhou.maxcompute.aliyun.com/api

    log_view_host

    Tidak

    URL LogView. Kami merekomendasikan pengaturan parameter ini. Tanpa parameter ini, Anda tidak dapat dengan cepat menemukan masalah saat pekerjaan gagal.

    Anda dapat menggunakan URL ini untuk melihat informasi runtime pekerjaan secara detail dan memecahkan masalah error. Nilainya tetap: http://logview.odps.aliyun.com.

    http://logview.odps.aliyun.com

    https_check

    Tidak

    Apakah akan mengaktifkan HTTPS untuk mengenkripsi permintaan ke proyek MaxCompute Anda. Nilai yang valid:

    • True: Gunakan HTTPS.

    • False: Gunakan HTTP.

    Default: False.

    True

    data_size_confirm

    Tidak

    Ukuran maksimum data masukan dalam GB. Tidak ada batasan. Kami merekomendasikan 100 GB.

    100

    update_url

    Tidak

    Parameter cadangan. Abaikan untuk saat ini.

    None

    use_instance_tunnel

    Tidak

    Apakah akan menggunakan InstanceTunnel untuk mengunduh hasil kueri SQL. Nilai yang valid:

    • True: Mengunduh hasil eksekusi SQL menggunakan InstanceTunnel.

    • False: InstanceTunnel tidak digunakan untuk mengunduh hasil eksekusi SQL.

    Default: False.

    True

    instance_tunnel_max_record

    Tidak

    Jumlah maksimum catatan yang dikembalikan untuk hasil kueri SQL. Atur jika use_instance_tunnel bernilai True. Maksimum: 10000.

    10000

    tunnel_endpoint

    Tidak

    Titik akhir publik untuk layanan Tunnel.

    • Jika Anda tidak mengatur titik akhir Tunnel, Tunnel secara otomatis merutekan ke titik akhir Tunnel untuk wilayah dan jaringan layanan MaxCompute Anda.

    • Jika Anda mengatur titik akhir Tunnel, Tunnel menggunakan titik akhir tersebut dan tidak melakukan auto-routing.

    Untuk titik akhir Tunnel berdasarkan wilayah dan jaringan, lihat Endpoint.

    http://dt.cn-hangzhou.maxcompute.aliyun.com

    set.<key>

    Tidak

    Atur properti untuk proyek MaxCompute Anda.

    Untuk daftar properti lainnya, lihat Property list.

    set.odps.sql.decimal.odps2=true

    Pastikan semua pengaturan sudah benar. Pengaturan yang salah menyebabkan kegagalan koneksi.

Jalankan client MaxCompute

  1. Buat proyek MaxCompute.

  2. Jika Anda menggunakan Pengguna RAM untuk menjalankan client MaxCompute, tambahkan Pengguna RAM tersebut ke proyek MaxCompute target menggunakan Akun Alibaba Cloud Anda. Untuk detailnya, lihat Berikan izin kepada pengguna lain.

  3. Jalankan client MaxCompute dengan salah satu cara berikut:

    Metode 1: File skrip dalam paket instalasi

    Di folder bin di bawah path instalasi client MaxCompute Anda, klik ganda odpscmd.bat (Windows) atau odpscmd (macOS). Ini akan menjalankan client MaxCompute. Anda akan melihat pesan berikut jika koneksi berhasil.image.png

    Metode 2: Jendela command-line sistem

    Di jendela command-line sistem Anda, buka direktori bin di bawah path instalasi client MaxCompute Anda. Lalu jalankan odpscmd (Windows) atau sh odpscmd (Linux atau macOS). Ini akan menjalankan client MaxCompute. Anda akan melihat pesan berikut jika koneksi berhasil.

    Catatan

    Di Ubuntu, menjalankan sh odpscmd menghasilkan error. Coba gunakan ./odpscmd sebagai gantinya.

    image.png

    Jika Anda menjalankan client MaxCompute dari command line sistem, Anda dapat meneruskan argumen untuk menjalankan perintah. Untuk daftar argumen lengkap, lihat Startup parameters.

Operasi terkait

Dapatkan bantuan untuk semua perintah

Gunakan salah satu metode berikut untuk mendapatkan bantuan cepat untuk perintah client MaxCompute:

Lihat bantuan perintah di client MaxCompute

  • Lihat bantuan untuk semua perintah.

    odps@project_name>help;
    -- Equivalent to:
    odps@project_name>h;
  • Lihat bantuan untuk perintah yang cocok dengan kata kunci tertentu.

    Sebagai contoh, dapatkan bantuan untuk perintah terkait tabel.

    odps@project_name>help table;
    -- Returns:
    Usage: alter table <tablename> merge smallfiles
    Usage: export table <tablename>
    Usage: show tables [in <project_name>] [like '<prefix>']
           list|ls tables [-p,-project <project_name>]
    Usage: describe|desc [<projectname>.]<tablename> [partition(<spec>)]
    Usage: read [<project_name>.]<table_name> [(<col_name>[,..])] [PARTITION (<partition_spec>)] [line_num]
    Penting

    Perintah read menggunakan sintaks SQL. Untuk detail harga, lihat SQL pricing.

Lihat bantuan perintah di jendela command-line sistem

Di jendela command-line sistem Anda, buka folder bin di bawah path instalasi client MaxCompute Anda. Lalu jalankan perintah berikut untuk melihat bantuan semua perintah. Saat Anda menjalankan client MaxCompute dari command line, Anda dapat meneruskan beberapa argumen. Lihat Startup parameters untuk detailnya.

...\odpscmd\bin>odpscmd -h

Dapatkan info pengguna saat ini

Setelah menjalankan client MaxCompute, jalankan perintah ini untuk mengambil informasi pengguna Anda saat ini.

odps@project_name>whoami;

Parameter yang dikembalikan dijelaskan di bawah ini.

  • Name: Nama akun Anda.

  • Source IP: Alamat IP perangkat tempat client MaxCompute dijalankan.

  • End_Point: Titik akhir untuk layanan MaxCompute.

  • Project: Nama proyek MaxCompute Anda.

  • Schema: Skema dalam proyek MaxCompute Anda.

Keluar dari client MaxCompute

Jalankan perintah ini untuk keluar dari client MaxCompute.

odps@project_name>quit;
-- Equivalent to:
odps@project_name>q;

Jalankan perintahtunnel download

  • Pertama kali Anda menjalankan perintah tunnel download di client MaxCompute, client akan membuat folder session untuk menyimpan log. Folder ini terletak di subdirektori plugins/dship dari direktori instalasinya di perangkat Anda.

  • Jika beberapa pengguna berbagi perangkat yang sama untuk menjalankan perintah tunnel download, gunakan salah satu metode berikut untuk menjaga keamanan data:

    • Gunakan kontrol izin folder perangkat Anda untuk mengelola akses ke folder session.

    • Dalam perintah tunnel download, tambahkan parameter -sd <new session folder name> atau -session-dir <new session folder name> untuk mengunduh data ke folder session yang berbeda. Untuk informasi lebih lanjut tentang perintah tunnel download, lihat Download.

Referensi

Setelah login ke client MaxCompute, Anda dapat menjalankan perintah SQL di proyek MaxCompute Anda. Lihat Gunakan MaxCompute dengan client.

Untuk sintaks perintah lengkap, lihat Common commands atau SQL commands and functions.

FAQ

Setelah mengonfigurasi file odps_config.ini dan menjalankan client MaxCompute, error umum meliputi:

Error:no java found

  • Penyebab

    Mesin Anda tidak memiliki Java yang terinstal.

  • Solusi

    Instal Java di mesin Anda dan atur variabel lingkungan. Client MaxCompute v0.28.0 dan versi selanjutnya mendukung JDK 1.9. Versi sebelumnya hanya mendukung JDK 1.8.

Error:Could not find or load main class com.aliyun.openservices.odps.console.ODPSConsole

  • Penyebab

    Anda mungkin telah mengunduh paket client dua kali. Unduhan kedua mengganti nama folder menjadi odpscmd_public (1). Spasi atau karakter khusus dalam nama folder menyebabkan error path.

  • Solusi

    Hapus spasi dan karakter khusus dari nama folder.

Error:Accessing project '<projectname>' failed: ODPS-0420111: Project not found - '<projectname>'.

  • Penyebab

    Nama proyek dalam file odps_config.ini salah.

  • Solusi

    1. Login ke Konsol MaxCompute, lalu pilih wilayah di pojok kiri atas.

    2. Pada panel navigasi di sebelah kiri, pilih Manage Configurations > Projects.

    3. Pada halaman Projects, salin nama proyek yang benar. Lalu perbarui file odps_config.ini.

Error:Accessing project '<projectname>' failed: ODPS-0420095: Access Denied - Authorization Failed [4002], You don't exist in project <projectname>.

Error:Accessing project '<projectname>' failed: { "Code": "InvalidProjectTable", "Message": "The specified project or table name is not valid or missing."}atauAccessing project '<projectname>' failed: connect timed out

  • Penyebab

    Nilai end_point salah. Misalnya, Anda menggunakan titik akhir jaringan klasik untuk koneksi jaringan internal, atau Anda memasukkan titik akhir Tunnel alih-alih titik akhir MaxCompute.

  • Solusi

    Pilih titik akhir yang sesuai dengan wilayah dan jaringan proyek Anda. Lihat dokumentasi Endpoint.

    Parameter end_point harus berisi titik akhir MaxCompute, bukan titik akhir Tunnel.

Error:Accessing project '<projectname>' failed: <endpoint>

  • Penyebab

    Nilai parameter end_point salah. Misalnya, titik akhir publik untuk wilayah China (Hangzhou), http://service.cn-hangzhou.maxcompute.aliyun.com/api, dimasukkan secara salah sebagai http://service.ch-hangzhou.maxcompute.aliyun.com/api.

  • Solusi

    Salin titik akhir yang benar dari dokumentasi Endpoint. Hindari mengetiknya secara manual.

Startup parameters

Di jendela command-line sistem Anda, gunakan parameter startup untuk menjalankan perintah dengan cepat. Sintaks:

Usage: odpscmd [OPTION]...
where options include the following:
    --help                                  (-h)for help
    --config=<config_file>                  specify another config file
    --project=<prj_name>                    use project
    --endpoint=<http://host:port>           set endpoint
    -k <n>                                  will skip begining queries and start from specified position
    -r <n>                                  set retry times
    -f <"file_path;">                       execute command in file
    -e <"command;[command;]...">            execute command, include sql command

Berikut ini penjelasan parameter startup.

Perintah

Deskripsi

Contoh perintah

--help atau -h

Dapatkan bantuan untuk semua perintah client MaxCompute.

odpscmd --help

--config

Tentukan path ke file odps_config.ini. Path default: odpscmd_public/conf/odps_config.ini.

odpscmd --config=D:/odpscmd/conf/odps_config.ini

--project

Tentukan nama proyek MaxCompute yang akan diakses.

odpscmd --project=doc_test

--endpoint

Tentukan titik akhir untuk layanan MaxCompute. Untuk detailnya, lihat Endpoint.

odpscmd --endpoint=http://service.cn-shanghai.maxcompute.aliyun.com/api

-k

Jalankan pernyataan mulai dari posisi tertentu. Jika n≤0, mulai dari pernyataan pertama. Pernyataan dipisahkan oleh titik koma (;).

Lewati dua pernyataan pertama dan mulai dari yang ketiga. odpscmd -k 3 -e "drop table table_name;create table table_name (dummy string);insert overwrite table table_name select count(*) from table_name;"

-r

Atur jumlah percobaan ulang untuk pekerjaan yang gagal.

odpscmd -r 2 -e "select * from sale_detail;select * from table_test;"

-f

Tentukan file yang akan dibaca.

  1. Buat file skrip lokal bernama script.txt di drive D. Isinya:

    drop table if exists test_table_mj;
    create table test_table_mj (id string, name string);
    drop table test_table_mj;
  2. Di jendela command-line sistem Anda, buka folder bin di bawah path instalasi client MaxCompute Anda. Lalu jalankan:

    ..\odpscmd\bin>odpscmd -f D:/script.txt;

-e

Tentukan perintah yang akan dijalankan.

odpscmd -e "select * from sale_detail;"

Di shell atau Windows command prompt, Anda mungkin perlu menangkap nilai kembali dinamis dari odpscmd -e <SQL statement> ke dalam variabel shell. Lalu gunakan variabel tersebut dalam tugas lanjutan. Untuk menghindari output tambahan seperti informasi runtime atau header tabel, atur parameter odps_config.ini use_instance_tunnel ke false. Ini akan menonaktifkan Instance Tunnel. Lalu jalankan set odps.sql.select.output.format={"needHeader":false,"fieldDelim":" "}; untuk menyembunyikan header tabel.

Sebagai contoh, tabel noheader memiliki satu kolom dan tiga baris: 1, 2, dan 3. Jalankan perintah berikut untuk mengarahkan output ke stdout. Hanya data mentah yang muncul, tanpa informasi tambahan:

-- Run in Windows command prompt.
...\odpscmd\bin>odpscmd -e "set odps.sql.select.output.format={""needHeader"":false,""fieldDelim"":"" ""};select * from noheader;" >D:\test.txt
-- Output saves to D:\test.txt.

-- Run in shell.
/Users/.../odpscmd/bin/odpscmd -e "set odps.sql.select.output.format={\"needHeader\":false,\"fieldDelim\":\"\"};select * from noheader;" >/Users/A/temp/test.txt 
-- Output saves to /Users/A/temp/test.txt.
-- Output:
1
2
3

Riwayat versi

Tabel berikut mencantumkan pembaruan terbaru untuk client MaxCompute. Klik tautan setiap versi untuk detail lengkapnya.

Untuk versi dan pembaruan fitur lainnya, lihat GitHub.

Version

Type

Description

v0.52.3-public

New feature

Dukung token STS sebagai kredensial keamanan temporary.

Bug fix

Perbarui library Apache Arrow untuk memperbaiki masalah kompatibilitas dependensi.

v0.52.2-public

New feature

Tambahkan skip_progress untuk mengontrol pelaporan progres pada Pekerjaan MCQA 2.0.

Enhancement

  • Tingkatkan dukungan MCQA V2: Perkuat perintah agar lebih baik dalam menangani mode MCQA V2.

  • Tingkatkan perintah compact dan tambahkan dukungan untuk ID compact tertentu.

v0.51.2-public

Bug fix

Lakukan upgrade dependensi untuk memperbaiki kerentanan CVE.

v0.51.1-public

New feature

Percepat pembuatan volume eksternal: Tambahkan akselerasi untuk pengunduhan volume eksternal.

Enhancement

Refactor DescribeTableCommand, ShowPartitionsCommand, dan ShowTablesCommand agar lebih baik dalam menangani proyek eksternal V2.

v0.51.0-public

New feature

  • Quota caching: Cache informasi kuota di sistem file lokal untuk meningkatkan performa.

  • Perintah compact yang ditingkatkan: Tambahkan ambang batas lokal, mode force, dan validasi parameter yang lebih baik.

  • Perintah tuning SQL: Perkenalkan TUNE untuk menganalisis dan mengoptimalkan rencana kueri SQL. Evaluasi rencana eksekusi kandidat. Tambahkan riwayat tuning dan laporan.

Enhancement

  • Tingkatkan manajemen session MCQA 2.0 dan pemuatan kuota.

  • Konfigurasi timeout jaringan: Rancang ulang network_read_timeout dan network_connect_timeout. Integrasikan timeout dengan konfigurasi REST client.

v0.50.0-public

New feature

  • Dukung pengiriman Pekerjaan MCQA 2.0.

  • Gunakan UseQuotaCommand untuk menentukan kelompok kuota interaktif.

v0.48.0-public

New feature

  • Upgrade odps-sdk dari 0.47.0-public ke 0.48.6-public. Lihat changelog odps-sdk.

  • Tambahkan informasi penyamaran data ke DESC EXTENDED.

Bug fix

Mode MCQA kini mendeteksi perilaku fallback secara lebih akurat dan menghindari tampilan logview ganda.

v0.47.0-public

New feature

  • Tambahkan perintah http untuk mengirim permintaan HTTP sebagai pengguna saat ini.

  • Tambahkan parameter startup --keep-session-variables. Saat diaktifkan, use [project] tidak menghapus flag seperti SET a=b saat berpindah proyek.

Enhancement

  • Dukungan tipe data baru untuk read: Dukung TIMESTAMP_NTZ dan JSON.

  • Peningkatan perintah Tunnel:

    • Tambahkan -qn ke TUNNEL UPLOAD/DOWNLOAD untuk mengatur Tunnel QuotaName.

    • Tambahkan -dfp ke TUNNEL UPLOAD untuk mengatur format teks DATETIME.

  • Tambahkan grep ke HistoryCommand untuk pencarian yang lebih baik.

  • Selaraskan sintaks penghapusan proyek dengan console: Dukung DROP project selain DELETE project.

  • Optimalkan setproject: Dukung string nilai yang lebih panjang dan tipe kompleks seperti JSON.

v0.46.5-public

New feature

Dukung tipe data JSON untuk operasi Tunnel.

v0.46.4-public

New feature

  • Fitur UPSERT untuk operasi data: Implementasikan operasi UPSERT melalui Tunnel dan tambahkan kelas DshipUpdate serta konstanta RESUME_UPSERT_ID untuk mendukung pembaruan data dan resume operasi.

  • Tingkatkan penanganan zona waktu untuk eksekusi SQL: Gunakan SET odps.sql.timezone=UTC;.

  • Tingkatkan perintah konfigurasi keamanan: Perbaiki penanganan konfigurasi keamanan.

  • Tingkatkan parsing dan validasi perintah: Refactor SetCommand untuk parsing dan pencocokan yang lebih baik.

Enhancement

Perluas DescribeTableCommand untuk menampilkan detail lapisan penyimpanan lebih lengkap.

v0.45.1-public

New feature

  • Tampilkan informasi lapisan penyimpanan untuk tabel partisi dan non-partisi di DescribeTableCommand.

  • Tampilkan nama lapisan penyimpanan, waktu modifikasi terakhir untuk partisi, dan ukuran penyimpanan per lapisan penyimpanan pada tabel partisi.

v0.45.0-public

New feature

  • Tambahkan attach_session_timeout untuk mengontrol timeout attach session MCQA.

  • Tingkatkan validasi pola di SetCommand: Pemeriksaan keberadaan dan penanganan error yang lebih baik untuk pola tidak valid.

Enhancement

  • Tambahkan attachTimeout ke konfigurasi session builder untuk timeout yang dapat dikonfigurasi.

  • Tingkatkan perintah dship: Parsing dan eksekusi datetime yang lebih baik.

  • Tingkatkan TopInstanceCommand: Parsing dan penanganan opsi yang lebih baik.

v0.43.2-public

New feature

  • Dukung pembuatan volume eksternal.

  • Dukung perintah show untuk mencantumkan semua fungsi bawaan atau yang sesuai aturan di Proyek MaxCompute Anda.

v0.40.10-public

Bug fix

Hapus dependensi Log4j.

v0.40.8-public

New feature

Dukung penyimpanan proyek berbasis skema. Lihat Operasi skema.

v0.37.5-public

New feature

Dukung tipe data kompleks untuk upload dan download Tunnel.

v0.37.4-public

Enhancement

  • Tingkatkan teks bantuan perintah.

  • desc extended partition mengembalikan informasi properti partisi tambahan.

v0.36.0-public

New feature

Dukung koneksi proyek eksternal ke Data Lake Formation (DLF) untuk fitur danau data terpadu.

Bug fix

Perbaiki penanganan nanosecond (nano) saat mengunduh data TIMESTAMP.