Pengoptimalan prediktif untuk Delta Lake

Penting

Fitur ini ada di Pratinjau Publik.

Pengoptimalan prediktif menghapus kebutuhan untuk mengelola operasi pemeliharaan secara manual untuk tabel Delta di Azure Databricks.

Dengan pengoptimalan prediktif diaktifkan, Azure Databricks secara otomatis mengidentifikasi tabel yang akan mendapat manfaat dari operasi pemeliharaan dan menjalankannya untuk pengguna. Operasi pemeliharaan hanya dijalankan seperlunya, menghilangkan eksekusi yang tidak perlu untuk operasi pemeliharaan dan beban yang terkait dengan pelacakan dan performa pemecahan masalah.

Operasi apa yang dijalankan pengoptimalan prediktif?

Pengoptimalan prediktif menjalankan operasi berikut secara otomatis untuk tabel Delta yang diaktifkan:

Operasi Deskripsi
OPTIMIZE Meningkatkan performa kueri dengan mengoptimalkan ukuran file. Lihat Ringkas file data dengan pengoptimalan di Delta Lake.
VACUUM Mengurangi biaya penyimpanan dengan menghapus file data tidak lagi direferensikan oleh tabel. Lihat Menghapus file data yang tidak digunakan dengan vakum.

Catatan

OPTIMIZE tidak berjalan ZORDER saat dijalankan dengan pengoptimalan prediktif.

Peringatan

Jendela retensi untuk VACUUM perintah ditentukan oleh delta.deletedFileRetentionDuration properti tabel, yang defaultnya menjadi 7 hari. Ini berarti VACUUM menghapus file data yang tidak lagi dirujuk oleh versi tabel Delta dalam 7 hari terakhir. Jika Anda ingin menyimpan data lebih lama (seperti mendukung perjalanan waktu untuk durasi yang lebih lama), Anda harus mengatur properti tabel ini dengan tepat sebelum mengaktifkan pengoptimalan prediktif, seperti dalam contoh berikut:

ALTER TABLE table_name SET TBLPROPERTIES ('delta.deletedFileRetentionDuration' = '30 days');

Di mana pengoptimalan prediktif berjalan?

Pengoptimalan prediktif mengidentifikasi tabel yang akan mendapat manfaat dari OPTIMIZE operasi dan VACUUM dan mengantrekannya untuk dijalankan menggunakan komputasi pekerjaan. Akun Anda ditagih untuk komputasi yang terkait dengan beban kerja ini menggunakan SKU khusus untuk Databricks Managed Services. Lihat harga untuk layanan terkelola Databricks. Azure Databricks menyediakan tabel sistem untuk pengamatan ke dalam operasi pengoptimalan prediktif, biaya, dan dampak. Lihat Menggunakan tabel sistem untuk melacak pengoptimalan prediktif.

Catatan

Pengoptimalan prediktif tidak menjalankan OPTIMIZE perintah pada tabel yang menggunakan pengklusteran cairan.

Prasyarat untuk pengoptimalan prediktif

Anda harus memenuhi persyaratan berikut untuk mengaktifkan pengoptimalan prediktif:

  • Ruang kerja Azure Databricks Anda harus berada di paket Premium di wilayah yang mendukung pengoptimalan prediktif. Lihat Wilayah Azure Databricks.

  • Anda harus menggunakan gudang SQL atau Databricks Runtime 12.2 LTS atau lebih tinggi saat Anda mengaktifkan pengoptimalan prediktif.

  • Hanya tabel terkelola Unity Catalog yang didukung.

  • Jika Anda memerlukan konektivitas privat untuk akun penyimpanan, Anda harus mengonfigurasi konektivitas privat tanpa server. Lihat Mengonfigurasi konektivitas privat dari komputasi tanpa server.

Mengaktifkan pengoptimalan prediktif

Anda harus mengaktifkan pengoptimalan prediktif di tingkat akun.

Anda harus memiliki hak istimewa berikut untuk mengaktifkan atau menonaktifkan pengoptimalan prediktif pada tingkat yang ditentukan:

Objek Katalog Unity Hak Istimewa
Akun Admin akun
Katalog Pemilik katalog
Skema Pemilik skema

Catatan

Saat Anda mengaktifkan pengoptimalan prediktif untuk pertama kalinya, Azure Databricks secara otomatis membuat perwakilan layanan di akun Azure Databricks Anda. Azure Databricks menggunakan perwakilan layanan ini untuk melakukan operasi pemeliharaan yang diminta. Lihat Mengelola prinsipal layanan.

Mengaktifkan pengoptimalan prediktif untuk akun Anda

Admin akun harus menyelesaikan langkah-langkah berikut untuk mengaktifkan pengoptimalan prediktif untuk semua metastor di akun:

  1. Akses konsol akun.
  2. Navigasi ke Pengaturan, lalu Pengaktifan fitur.
  3. Pilih Diaktifkan di samping Pengoptimalan prediktif.

Catatan

Metrik di wilayah yang tidak mendukung pengoptimalan prediktif tidak diaktifkan.

Mengaktifkan atau menonaktifkan pengoptimalan prediktif untuk katalog atau skema

Pengoptimalan prediktif menggunakan model pewarisan. Saat diaktifkan untuk katalog, skema mewarisi properti . Tabel dalam skema yang diaktifkan mewarisi pengoptimalan prediktif. Untuk mengambil alih perilaku pewarisan ini, Anda dapat secara eksplisit menonaktifkan pengoptimalan prediktif untuk katalog atau skema.

Catatan

Anda dapat menonaktifkan pengoptimalan prediktif di tingkat katalog atau skema sebelum mengaktifkannya di tingkat akun. Jika pengoptimalan prediktif kemudian diaktifkan pada akun, pengoptimalan tersebut akan diblokir untuk tabel dalam objek ini.

Gunakan sintaks berikut untuk mengaktifkan atau menonaktifkan pengoptimalan prediktif:

ALTER CATALOG [catalog_name] {ENABLE | DISABLE} PREDICTIVE OPTIMIZATION;
ALTER {SCHEMA | DATABASE} schema_name {ENABLE | DISABLE} PREDICTIVE OPTIMIZATION;

Periksa apakah pengoptimalan prediktif diaktifkan

Bidang Predictive Optimization adalah properti Katalog Unity yang merinci apakah pengoptimalan prediktif diaktifkan. Jika pengoptimalan prediktif diwarisi dari objek induk, ini ditunjukkan dalam nilai bidang.

Gunakan sintaks berikut untuk melihat apakah pengoptimalan prediktif diaktifkan:

DESCRIBE (CATALOG | SCHEMA | TABLE) EXTENDED name

Menggunakan tabel sistem untuk melacak pengoptimalan prediktif

Azure Databricks menyediakan tabel sistem untuk melacak riwayat operasi pengoptimalan prediktif. Lihat Referensi tabel sistem pengoptimalan prediktif.

Batasan

Pengoptimalan prediktif tidak tersedia di semua wilayah. Lihat Wilayah Azure Databricks.

Pengoptimalan prediktif tidak menjalankan OPTIMIZE perintah pada tabel yang menggunakan pengklusteran cairan atau urutan Z.

Pengoptimalan prediktif tidak melakukan operasi pemeliharaan pada tabel berikut: