All Products
Search
Document Center

AnalyticDB:Pengembangan XIHE BSP SQL

Last Updated:Aug 25, 2026

AnalyticDB for MySQL mendukung pengiriman pekerjaan XIHE BSP SQL melalui Editor pengembangan SQL atau JDBC. Topik ini menjelaskan kasus penggunaan, metode pengiriman, parameter konfigurasi, serta pertanyaan umum (FAQ) terkait pengembangan pekerjaan XIHE BSP SQL.

Prasyarat

  • Kelompok sumber daya pekerjaan telah dibuat untuk kluster AnalyticDB for MySQL Edisi Perusahaan, Edisi Dasar, atau Edisi Data Lakehouse.

  • Akun database telah dibuat untuk kluster AnalyticDB for MySQL Edisi Perusahaan, Edisi Dasar, atau Edisi Data Lakehouse.

Kasus penggunaan

Mesin XIHE BSP mengeksekusi pekerjaan XIHE BSP SQL, yang cocok untuk skenario ETL, kueri besar, dan kueri prioritas rendah yang bersifat bursty. Untuk informasi lebih lanjut tentang mesin XIHE BSP, lihat compute engine.

Skenario ETL

Gambar berikut menunjukkan proses ETL yang khas.

Operasi pembersihan dan transformasi data pada set data besar antara sumber data dan lapisan ADS sering kali membutuhkan waktu lama untuk diselesaikan. Untuk pekerjaan semacam ini, waktu respons bukanlah pertimbangan utama; sebaliknya, keandalan tinggi diperlukan untuk memastikan seluruh proses ELT selesai sebelum tenggat waktu tertentu. Sistem juga harus mendukung fitur seperti retry otomatis. Anda dapat menjalankan kueri ini menggunakan mesin XIHE BSP untuk memanfaatkan throughput tinggi, keandalan tinggi, dan biaya rendahnya.

Kueri pada lapisan ADS biasanya lebih sensitif terhadap waktu respons, sering kali memerlukan tanggapan dalam hitungan detik atau bahkan milidetik. Anda dapat menjalankan kueri ini menggunakan mesin XIHE MPP untuk memanfaatkan kecepatannya yang lebih tinggi.

Kueri besar untuk mesin BSP

Karena keterbatasan XIHE MPP, beberapa kueri besar dapat menyebabkan error out-of-memory (OOM) atau eksepsi kueri lainnya. Untuk menjalankan kueri ini di mesin XIHE MPP, Anda harus melakukan scale-up kluster dengan menambahkan lebih banyak resource, yang tidak efisien dari segi biaya. Dalam kasus ini, Anda dapat menggunakan mesin XIHE BSP untuk menjalankan kueri tersebut. Kueri dijalankan dalam kelompok sumber daya pekerjaan tertentu dan melakukan spill data ke disk, sehingga lebih sesuai untuk kueri besar. Selain itu, sumber daya untuk kelompok sumber daya pekerjaan diminta dan ditagih sesuai kebutuhan (on-demand), yang menurunkan biaya.

Kueri prioritas rendah yang bersifat bursty

Kueri prioritas rendah biasanya tidak sensitif terhadap waktu respons. Namun, jika sejumlah besar kueri ini dikirimkan sekaligus, mereka dapat menghabiskan sumber daya sistem dan memengaruhi eksekusi kueri lainnya. Untuk mengatasi masalah ini, Anda dapat menjalankan kueri prioritas rendah ini dalam kelompok sumber daya pekerjaan menggunakan mesin XIHE BSP. Pendekatan ini mengisolasi sumber daya, mengurangi tekanan sumber daya pada sistem, dan mencegah kueri saling memengaruhi.

Batasan

  • Mesin XIHE BSP tidak mendukung penulisan ke tabel Hudi.

  • Mesin XIHE BSP tidak mendukung pembacaan dari atau penulisan ke tabel Delta.

Mengembangkan pekerjaan XIHE BSP

Anda dapat mengembangkan pekerjaan XIHE BSP menggunakan salah satu metode berikut.

Editor pengembangan SQL

Pada halaman Pengembangan SQL, pilih kelompok sumber daya pekerjaan dan mesin XIHE untuk mengirimkan pekerjaan XIHE BSP.

Prosedur

  1. Masuk ke Konsol AnalyticDB for MySQL. Di pojok kiri atas konsol, pilih wilayah. Di panel navigasi sebelah kiri, klik Clusters. Temukan kluster yang ingin Anda kelola dan klik ID kluster tersebut.

  2. Masukkan Pernyataan SQL dan klik Execute.

  3. Setelah Pernyataan SQL dieksekusi, hasilnya muncul di tab Execution Results.

    Di tab Execution Records, klik Result pada kolom Actions untuk mengunduh hasil eksekusi.

Pengiriman sinkron

Anda dapat mengirimkan pekerjaan XIHE BSP secara sinkron dengan menentukan kelompok sumber daya pekerjaan dalam hint.

Sintaks

/*+ resource_group=<resource_group_name>*/ <SQL Statement>;
  • resource_group_name: nama kelompok sumber daya pekerjaan.

  • SQL Statement: Pernyataan SQL. Anda harus menambahkan hint sebelum setiap pernyataan.

Contoh

/*+ resource_group=bsptest*/SELECT count(*) from test_db.ods_hudi;

Pengiriman asinkron

Anda dapat mengirimkan pekerjaan XIHE BSP secara asinkron dengan menentukan kelompok sumber daya pekerjaan dan jenis pengiriman asinkron dalam hint.

Sintaks

/*+ resource_group=<resource_group_name>, query_submission_type=async*/ <SQL Statement>;
  • resource_group_name: nama kelompok sumber daya pekerjaan.

  • query_submission_type=async: menentukan bahwa pekerjaan dikirimkan secara asinkron.

  • SQL Statement: Pernyataan SQL. Anda harus menambahkan hint sebelum setiap pernyataan.

Contoh

/*+ resource_group=bsptest, query_submission_type=async*/SELECT count(*) from test_db.ods_hudi;

Setelah Anda mengirimkan pekerjaan asinkron, job_id langsung dikembalikan. Setelah pekerjaan selesai, Anda dapat menjalankan pernyataan SHOW job result WHERE job='job_id'; untuk mengkueri hasil eksekusi. Untuk informasi tentang cara mengkueri status pekerjaan asinkron, lihat Query the status of an asynchronous job.

Konfigurasi pekerjaan XIHE BSP

Anda dapat mengonfigurasi sumber daya, timeout default, dan prioritas untuk pekerjaan XIHE BSP.

Metode konfigurasi

Anda dapat menerapkan pengaturan konfigurasi ke satu pekerjaan BSP saja, semua pekerjaan dalam kelompok sumber daya pekerjaan tertentu, atau semua pekerjaan dalam sebuah kluster.

Untuk satu pekerjaan

Agar konfigurasi hanya berlaku untuk satu pekerjaan, tambahkan hint /*+ resource_group=<resource_group_name>,<config_name>*/ ke Pernyataan SQL.

Dalam hint tersebut, resource_group_name adalah nama kelompok sumber daya dan config_name adalah parameter dari daftar Configuration parameters.

Contoh: Untuk membatasi pekerjaan dalam kelompok sumber daya pekerjaan bernama bsptest hingga maksimal 20 ACU:

/*+ resource_group=bsptest,elastic_job_max_acu=20*/SELECT count(*) from test_db.ods_hudi;

Untuk kelompok sumber daya

Agar konfigurasi berlaku untuk semua pekerjaan yang dijalankan dalam kelompok sumber daya pekerjaan, jalankan pernyataan SET adb_config <resource_group_name>.<config_name>.

Dalam pernyataan tersebut, resource_group_name adalah nama kelompok sumber daya dan config_name adalah parameter dari daftar Configuration parameters.

Contoh: Perintah ini membatasi setiap pekerjaan yang dijalankan dalam kelompok sumber daya pekerjaan bernama bsptest hingga maksimal 20 ACU.

SET adb_config bsptest.elastic_job_max_acu=20;

Verifikasi Konfigurasi

Untuk memverifikasi bahwa konfigurasi telah diterapkan ke kelompok sumber daya, jalankan pernyataan SHOW ADB_CONFIG KEY=<resource_group_name>.<config_name>.

Untuk kluster

Agar konfigurasi berlaku untuk semua pekerjaan yang dijalankan dalam kluster, jalankan pernyataan SET adb_config <config_name>. config_name adalah parameter dari daftar Configuration parameters.

Contoh: Perintah ini membatasi setiap pekerjaan yang dijalankan dalam kluster hingga maksimal 20 ACU.

SET adb_config elastic_job_max_acu=20;

Verifikasi Konfigurasi

Untuk memverifikasi bahwa konfigurasi telah diterapkan ke kluster, jalankan pernyataan SHOW ADB_CONFIG KEY=<config_name>.

Parameter

Tabel berikut menjelaskan parameter yang dapat Anda konfigurasikan untuk pekerjaan XIHE BSP.

Kategori

Parameter

Deskripsi

Default

Resource

elastic_job_max_acu

Jumlah maksimum ACU yang dapat digunakan oleh satu pekerjaan XIHE BSP. Ini mencakup AppMaster dan node komputasi.

Nilai ini tidak boleh melebihi jumlah maksimum ACU yang dialokasikan ke kelompok sumber daya.

Catatan

AppMaster adalah node yang mengurai kueri serta menjadwalkan dan mengeksekusi pekerjaan.

9

Timeout

batch_query_timeout

Timeout untuk pekerjaan BSP, dalam milidetik (ms). Jika pekerjaan berjalan lebih lama dari nilai ini, sistem akan membatalkannya secara otomatis.

7200000

Priority

query_priority

Prioritas pekerjaan BSP.

Nilai yang valid: HIGH, NORMAL, LOW, dan LOWEST.

Untuk informasi lebih lanjut tentang priority queue, lihat Priority queue of a job resource group.

NORMAL

FAQ

Lihat status pekerjaan BSP

  • Jika Anda mengirimkan pekerjaan BSP dari Editor pengembangan SQL, buka halaman Job Editor > SQL Development dan lihat status pekerjaan di tab Execution Records.

  • Jika Anda mengirimkan pekerjaan BSP menggunakan metode lain, Anda dapat mengkueri statusnya dari tabel information_schema.kepler_meta_elastic_job_list dengan menjalankan pernyataan berikut:

    SELECT status FROM information_schema.kepler_meta_elastic_job_list WHERE process_id='<job_id>';
    Catatan

    Tabel information_schema.kepler_meta_elastic_job_list menyimpan hingga 1.000 pekerjaan BSP yang dikirimkan dalam 30 hari terakhir. Anda dapat melakukan analisis statistik lebih lanjut, seperti agregasi, pada tabel ini. Contoh berikut menunjukkan cara menghitung jumlah pekerjaan BSP berdasarkan status:

    SELECT status,count(*) FROM information_schema.kepler_meta_elastic_job_list GROUP BY status;

Pengiriman sinkron vs. asinkron

Pengiriman sinkron dan asinkron menyediakan fitur yang sama. Satu-satunya perbedaan adalah apakah client harus menunggu hingga kueri selesai.

Pengiriman asinkron memiliki batasan berikut:

  • Set hasil dapat berisi maksimal 10.000 baris.

  • Maksimal 1.000 set hasil, termasuk tautan unduh file CSV-nya, disimpan selama maksimal 30 hari.

Pengiriman asinkron direkomendasikan untuk kueri yang berjalan lama dan komputasi-intensif yang menghasilkan set hasil kecil, seperti INSERT INTO SELECT, INSERT OVERWRITE SELECT, dan CREATE TABLE AS SELECT.