All Products
Search
Document Center

MaxCompute:Rekomendasi optimasi pengelompokan

Last Updated:Aug 22, 2026

MaxCompute menganalisis pola baca dan tulis terkini dari tabel Anda untuk menghasilkan rekomendasi optimasi pengelompokan. Rekomendasi ini dapat membantu meningkatkan performa pekerjaan dan mengurangi konsumsi CU. Gunakan perkiraan manfaat dan saran detail untuk memutuskan apakah akan menerapkan rekomendasi tersebut.

Batasan

  • Wilayah yang didukung: Tiongkok (Hangzhou), Tiongkok (Shanghai), Tiongkok (Beijing), Tiongkok (Zhangjiakou), Tiongkok (Shenzhen), dan Tiongkok (Chengdu).

  • Rekomendasi optimasi pengelompokan tidak didukung untuk proyek model tiga tingkat.

  • Analisis optimasi pengelompokan mencakup riwayat eksekusi sebagian besar pekerjaan, tetapi mengecualikan pekerjaan yang memiliki beberapa Fuxi Job, sehingga sejumlah kecil pekerjaan mungkin tidak dianalisis.

  • Untuk informasi tentang mengoptimalkan pekerjaan yang menggunakan tabel terkluster, lihat Hash Clustering.

Lihat rekomendasi optimasi pengelompokan

Anda dapat melihat daftar tabel yang direkomendasikan, perkiraan manfaat setelah pengelompokan, serta saran detail untuk semua atau proyek tertentu di wilayah saat ini. Ikuti langkah-langkah berikut:

  1. Masuk ke MaxCompute console dan pilih wilayah di pojok kiri atas.

  2. Pada panel navigasi kiri, pilih Intelligent Optimization > Data Layout Optimization.

  3. Pada tab Clustering Optimization, pilih Estimated Benefits, lalu atur parameter filter untuk melihat apakah ada tabel yang direkomendasikan untuk dikluster.

    Parameter

    Deskripsi

    Project Name

    Pilih proyek MaxCompute dari daftar drop-down. Jika Anda tidak memilih proyek, nilai default-nya adalah All Projects.

    Table Name

    Masukkan nama tabel. Pencarian fuzzy didukung. Pisahkan beberapa nama tabel dengan koma (,).

    Recommendation Generation Date

    Tanggal saat rekomendasi dihasilkan. Hari sebelumnya dipilih secara default.

    • Metrik perkiraan manfaat

      Metrik

      Deskripsi

      Estimated Number of Beneficial Jobs/Day

      Perkiraan jumlah pekerjaan harian yang akan mendapat manfaat jika tabel dikonversi menjadi tabel terkluster.

      Estimated Shuffle Reduction/Day

      Perkiraan pengurangan volume shuffle harian setelah tabel yang direkomendasikan dikonversi menjadi tabel terkluster.

      Mengurangi volume shuffle secara efektif menurunkan konsumsi Jam-CU oleh pekerjaan. Biasanya, pengurangan 1 TB volume shuffle menghemat 2 hingga 4 Jam-CU per hari.

    • Daftar rekomendasi optimasi

      Tinjau nilai yang disarankan untuk parameter dalam daftar dan lihat rekomendasi untuk informasi lebih lanjut tentang optimasi tabel.

      Kolom

      Deskripsi

      Project

      Proyek yang berisi tabel yang direkomendasikan.

      Table Name

      Nama tabel yang direkomendasikan.

      Type

      Jenis pengelompokan yang direkomendasikan untuk tabel. Saat ini, hanya rekomendasi Hash Clustering yang didukung.

      Recommended Clustering Key

      Kunci kluster yang direkomendasikan untuk tabel. Kunci ini terutama memengaruhi Shuffle Removal dan penyaringan data untuk point lookups.

      Recommended Sort Key

      Kunci pengurutan yang direkomendasikan untuk tabel. Kunci ini terutama memengaruhi penyaringan data dan kompresi penyimpanan.

      Bucket Count

      Jumlah bucket yang direkomendasikan untuk tabel. Jumlah ini terutama memengaruhi paralelisme operasi penulisan tabel dan pekerjaan baca tabel yang menggunakan Shuffle Removal.

      Recommendation Index

      Peringkat bintang 1 hingga 5. Semakin banyak bintang, semakin kuat rekomendasi untuk memodifikasi atribut pengelompokan tabel. Peringkat bintang dihitung sebagai berikut:

      Dimensi evaluasi

      Aturan Deduksi

      Denda

      Ketepatan waktu pola yang dapat dioptimalkan

      Jendela pengamatan kurang dari 14 hari

      Kurangi 1 bintang

      Pengurangan volume shuffle saat baca

      Pengurangan kurang dari 1 TB

      Kurangi 1 bintang

      Aktivitas pekerjaan tulis

      Tidak ada pekerjaan tulis yang tercatat pada hari tersebut

      Kurangi 1 bintang

      Jumlah partisi yang dapat dioptimalkan

      • Kurangi 1 bintang jika jumlah partisi yang dapat dioptimalkan lebih dari 3

      • Kurangi 2 bintang jika jumlah partisi yang dapat dioptimalkan lebih dari 31

      Penyesuaian dinamis

      Catatan
      • Jika tidak ada pekerjaan tulis yang tercatat pada hari tersebut, satu bintang dikurangi karena peningkatan biaya penulisan harian tidak dapat diperkirakan.

      • Jika terdapat banyak partisi yang dapat dioptimalkan, optimasi pengelompokan baru berlaku setelah banyak partisi yang ada ditulis ulang dengan data baru atau ditulis ulang secara aktif. Penundaan ini menyebabkan pengurangan bintang.

      Estimated Shuffle Reduction/Day

      Perkiraan pengurangan volume shuffle harian setelah tabel dikonversi menjadi tabel terkluster.

      Observation Interval

      Jumlah hari rekomendasi optimasi yang sama muncul selama periode pengamatan.

      Actions

      Klik rekomendasi untuk membuka halaman Details of Table with Optimization Recommendations. Halaman ini mencakup bagian-bagian berikut:

      • Optimization Recommendations

      • Current Status

      • Overview of Estimated Benefits

        • Estimated Shuffle Reduction/Day

        • Beneficial Table Read Jobs

        • Full Table Write Jobs

        • Full Table Read Jobs

Terapkan rekomendasi optimasi pengelompokan

Terapkan rekomendasi ke tabel asli

  • Gunakan konsol

    Untuk tabel partisi, Anda dapat langsung menerapkan rekomendasi untuk mengonversi tabel asli menjadi tabel terkluster hanya dengan satu klik. Ikuti langkah-langkah berikut:

    1. Pada panel navigasi kiri, pilih Intelligent Optimization > Data Layout Optimization.

    2. Pada tab Clustering Optimization, pilih Estimated Benefits.

    3. Pada kolom Actions untuk tabel target, klik View Details untuk membuka halaman Details of Table with Optimization Recommendations.

    4. Di pojok kanan atas, klik Apply Recommendations untuk menyelesaikan konversi.

  • Gunakan perintah SQL:

    -- Ubah tabel menjadi tabel Hash Clustering.
    ALTER TABLE <table_name> [CLUSTERED BY (<col_name> [, <col_name>, ...])
                           [SORTED BY (<col_name> [ASC | DESC] [, <col_name> [ASC | DESC] ...])]
                           INTO <number_of_buckets> BUCKETS];
  • Setelah konversi, periksa tabel terkluster yang telah dioptimalkan dan jalankan pekerjaan baca terkait untuk memastikan semuanya berjalan sesuai harapan. Jika muncul masalah, segera lakukan rollback dengan menjalankan perintah berikut:

    -- Ubah tabel Hash Clustering kembali menjadi tabel non-terkluster.
    ALTER TABLE <table_name> NOT CLUSTERED;
Penting
  • Setelah Anda mengonversi tabel menjadi tabel terkluster, Anda tidak dapat melakukan penulisan inkremental, seperti INSERT INTO atau unggah data melalui Tunnel.

  • Anda tidak dapat menerapkan rekomendasi pengelompokan langsung ke tabel non-partisi.

  • Setelah atribut pengelompokan dimodifikasi, latensi dan konsumsi CU pekerjaan tulis meningkat. Konsumsi CU pekerjaan baca menurun, sehingga menghasilkan penghematan CU bersih secara keseluruhan.

  • Dalam beberapa skenario, kami merekomendasikan agar Anda menulis ulang partisi dan memverifikasi manfaatnya untuk pekerjaan downstream yang dapat dioptimalkan. Untuk informasi lebih lanjut, lihat Rewrite partition data (Recommended).

Menulis ulang data partisi (Direkomendasikan)

Saat Anda memodifikasi atribut pengelompokan tabel, perubahan tersebut hanya berlaku untuk partisi baru. Untuk menerapkan optimasi ke partisi yang sudah ada, Anda harus menulis ulang datanya. Dalam skenario berikut, Anda perlu menulis ulang partisi dan memverifikasi manfaatnya untuk pekerjaan downstream yang dapat dioptimalkan:

  • Tabel tersebut merupakan dependensi untuk pekerjaan prioritas tinggi yang sensitif terhadap latensi.

  • Tabel memiliki partisi besar di mana operasi penulisan tunggal melebihi 10 TB.

  • Pekerjaan downstream membaca dari beberapa partisi, yang harus ditulis ulang secara bersamaan sebagai partisi terkluster agar optimasi dapat diterapkan.

  1. Untuk tabel besar dalam pekerjaan merge harian full-and-incremental, tulis ulang partisi hari terakhir. Praktik ini mengurangi risiko peningkatan biaya dan waktu eksekusi yang lebih lambat pada eksekusi awal pekerjaan hari berikutnya.

    -- Asumsikan kolom partisi adalah ds, dan partisi baru seperti 20241015 dan 20241016 ditambahkan setiap hari.
    -- Data dalam partisi baru dihasilkan dengan menggabungkan data inkremental dari partisi hari sebelumnya.
    INSERT OVERWRITE TABLE <table_name> PARTITION(ds) 
    SELECT * FROM <table_name> WHERE ds = max_pt('<table_name>');
  2. Jika pekerjaan yang dapat dioptimalkan membaca dari beberapa partisi yang sudah ada, kami merekomendasikan untuk menulis ulang partisi yang ada dalam rentang baca agar optimasi pengelompokan dapat diterapkan lebih cepat.

    -- Asumsikan kolom partisi adalah ds, dan partisi baru seperti 20241015, 20241016, dll., ditambahkan setiap hari.
    -- Rentang baca dimulai dari 20241015.
    INSERT OVERWRITE TABLE <table_name> PARTITION(ds) 
    SELECT * FROM <table_name> WHERE ds >='20241015';
  3. Setelah menulis ulang, kami merekomendasikan untuk menjalankan uji coba pekerjaan yang dapat dioptimalkan guna memverifikasi efektivitas optimasi tersebut.

Terapkan rekomendasi ke tabel baru

Untuk tabel non-partisi, Anda tidak dapat langsung memodifikasi atribut pengelompokan tabel asli. Anda harus menerapkan rekomendasi secara manual dengan membuat tabel terkluster baru. Ikuti langkah-langkah berikut:

  1. Buat tabel terkluster baru.

    -- Periksa pernyataan CREATE TABLE dari tabel yang ada.
    SHOW CREATE TABLE <original_table>;
    -- Buat tabel terkluster baru dengan menyisipkan informasi CLUSTER pada posisi yang tepat dalam sintaks CREATE TABLE.
    CREATE TABLE <new_table> [CLUSTERED BY (<col_name> [, <col_name>, ...])
                              [SORTED BY (<col_name> [ASC | DESC] [, <col_name> [ASC | DESC] ...])]
                              INTO <number_of_buckets> BUCKETS];
  2. Muat data ke tabel baru.

    INSERT OVERWRITE TABLE <new_table>
    SELECT * FROM <original_table>;
  3. Ubah nama tabel asli menjadi tabel cadangan.

    ALTER TABLE <original_table> RENAME TO <original_table_backup>;
  4. Ubah nama tabel baru menjadi nama tabel asli.

    ALTER TABLE <new_table> RENAME TO <original_table>;

Tabel baru, yang kini berganti nama menjadi nama tabel asli, mengkluster data sesuai dengan atribut pengelompokan baru.

Membatalkan penerapan rekomendasi pengelompokan

Periksa tabel terkluster baru untuk memastikan semua pekerjaan berjalan sesuai harapan. Jika muncul masalah, segera lakukan rollback dengan menjalankan perintah berikut:

  1. Hapus tabel baru yang memiliki nama yang sama dengan tabel asli.

    DROP TABLE IF EXISTS <original_table>;
  2. Ubah nama tabel cadangan menjadi nama tabel asli.

    ALTER TABLE <original_table_backup> RENAME TO <original_table>;

Lihat manfaat optimasi pengelompokan

Pada tab Clustering Optimization, klik Actual Benefits untuk melihat manfaat optimasi pengelompokan. Ikuti langkah-langkah berikut:

  1. Masuk ke MaxCompute console dan pilih wilayah di pojok kiri atas.

  2. Pada panel navigasi kiri, pilih Intelligent Optimization > Data Layout Optimization.

  3. Pada tab Clustering Optimization, pilih Actual Benefits.

  4. Filter berdasarkan Project Name dan Analysis Time untuk melihat ringkasan dan detail manfaat yang diperoleh dari tabel terkluster dengan atribut pengelompokan yang telah dimodifikasi.

    • Deskripsi metrik manfaat

      Metrik

      Deskripsi

      Number of Benefited Jobs

      Jumlah pembacaan pada tabel terkluster yang baru saja dimodifikasi selama periode analisis.

      Saved CU-hours

      Penghematan Jam-CU dari semua pekerjaan yang membaca tabel terkluster yang dimodifikasi selama periode analisis, dibandingkan dengan konsumsi sebelum modifikasi.

      Reduced Shuffle Amount

      Pengurangan volume shuffle dari semua pekerjaan yang membaca tabel terkluster yang baru dimodifikasi selama periode analisis, dibandingkan dengan volume shuffle sebelum modifikasi.

      Manfaat optimasi pengelompokan dihitung dengan membandingkan konsumsi rata-rata pekerjaan yang memiliki Signature yang sama sebelum dan sesudah modifikasi. Statistik ini mencakup tabel terkluster yang dimodifikasi berdasarkan rekomendasi dalam 365 hari terakhir.

    • Daftar tabel yang dioptimalkan

      Kolom

      Deskripsi

      Project

      Proyek yang berisi tabel terkluster dengan atribut pengelompokan yang telah dimodifikasi.

      Table Name

      Nama tabel dengan atribut pengelompokan yang telah dimodifikasi.

      Clustering Attribute Modification Time

      Tanggal terakhir atribut pengelompokan tabel dimodifikasi.

      Number of Benefited Jobs

      Jumlah kali tabel dibaca selama periode analisis setelah atribut pengelompokannya dimodifikasi.

      Saved Computing Duration

      Pengurangan durasi komputasi untuk pekerjaan yang membaca tabel ini selama periode analisis, dibandingkan dengan durasi sebelum atribut dimodifikasi.

      Saved CU-hours

      Pengurangan konsumsi Jam-CU untuk pekerjaan yang membaca tabel ini selama periode analisis, dibandingkan dengan konsumsi sebelum atribut dimodifikasi.

      Reduced Shuffle Amount

      Pengurangan volume shuffle untuk pekerjaan yang membaca tabel ini selama periode analisis, dibandingkan dengan volume sebelum atribut dimodifikasi.

      Actions

      Klik rekomendasi untuk membuka halaman Details of Optimized Table. Halaman ini mencakup bagian-bagian berikut:

      • Current Status of Table

        • Clustering Type

        • Cluster key

        • Sort key

        • Number of Buckets

        • Partition Key

      • Benefit Overview

        • Number of Benefited Jobs

        • Saved CU-hours

        • Reduced Shuffle Amount

      • Daftar pekerjaan baca yang mendapat manfaat

        • Signature

        • Saved Computing Duration

        • Saved CU-hours

        • Reduced Shuffle Amount

    Penting
    • Setelah Anda mengonversi tabel menjadi tabel terkluster, statistik manfaat pekerjaan harian diperbarui dengan basis T+1. Untuk hasil optimasi real-time, gunakan alat O&M pekerjaan atau LogView.

    • Statistik manfaat optimasi pengelompokan didasarkan pada data historis eksekusi pekerjaan dengan Signature yang sama dan dipengaruhi oleh faktor-faktor seperti fluktuasi performa pekerjaan harian. Jika Anda menemukan bahwa manfaatnya tidak sesuai ekspektasi, bandingkan detail eksekusi pekerjaan dari tanggal berbeda untuk mengidentifikasi faktor yang memengaruhi.

    • Statistik manfaat optimasi pengelompokan hanya bersifat referensi. Untuk penghematan CU akhir, rujuk tagihan Anda.