Bagikan melalui


Referensi tabel sistem pengoptimalan prediktif

Penting

Fitur ini ada di Pratinjau Publik.

Catatan

Untuk memiliki akses ke tabel ini, Anda harus mengaktifkan storage skema (lihat Mengaktifkan skema tabel sistem) dan wilayah Anda harus mendukung pengoptimalan prediktif (lihat wilayah Azure Databricks).

Artikel ini menguraikan skema tabel riwayat operasi pengoptimalan prediktif dan menyediakan kueri sampel. Pengoptimalan prediktif mengoptimalkan tata letak data Anda untuk performa puncak dan efisiensi biaya. Tabel sistem melacak riwayat operasi fitur ini. Untuk informasi tentang pengoptimalan prediktif, lihat Pengoptimalan prediktif untuk Delta Lake.

Tabel sistem ini terletak di system.storage.predictive_optimization_operations_history.

Pertimbangan pengiriman

  • Data dapat memakan waktu hingga 24 jam untuk diisi.
  • Pengoptimalan prediktif mungkin menjalankan beberapa operasi pada kluster yang sama. Jika demikian, berbagi DBA yang dikaitkan dengan masing-masing dari beberapa operasi diperkirakan. Inilah sebabnya mengapa usage_unit diatur ke ESTIMATED_DBU. Namun, jumlah total DBA yang dihabiskan untuk kluster akan akurat.

Skema tabel pengoptimalan prediktif

Tabel sistem riwayat operasi pengoptimalan prediktif menggunakan skema berikut:

Nama kolom Jenis data Deskripsi Contoh
account_id string ID akun. 11e22ba4-87b9-4cc2-9770-d10b894b7118
workspace_id string ID ruang kerja tempat pengoptimalan prediktif menjalankan operasi. 1234567890123456
start_time rentang waktu Waktu dimulainya operasi. 2023-01-09 10:00:00.000
end_time rentang waktu Waktu di mana operasi berakhir. 2023-01-09 11:00:00.000
metastore_name string Nama metastore tempat tabel yang dioptimalkan berada. metastore
catalog_name string Nama katalog tempat tabel yang dioptimalkan berada. catalog
schema_name string Nama skema tempat tabel yang dioptimalkan berada. schema
table_id string ID tabel yang dioptimalkan. 138ebb4b-3757-41bb-9e18-52b38d3d2836
table_name string Nama tabel yang dioptimalkan. table1
operation_type string Operasi pengoptimalan yang dilakukan. Nilainya adalah COMPACTION atau VACUUM. COMPACTION
operation_id string ID untuk operasi pengoptimalan. 4dad1136-6a8f-418f-8234-6855cfaff18f
operation_status string Status operasi pengoptimalan. Nilainya adalah SUCCESSFUL atau FAILED: INTERNAL_ERROR. SUCCESSFUL
operation_metrics map[string, string] Detail tambahan tentang pengoptimalan spesifik yang dilakukan. Untuk operasi PEMADATAN: (number_of_compacted_files, amount_of_data_compacted_bytes, number_of_output_files, amount_of_output_data_bytes) Untuk operasi VAKUM: (number_of_deleted_files, amount_of_data_deleted_bytes) {"number_of_output_files":"100","number_of_compacted_files":"1000","amount_of_output_data_bytes":"4000","amount_of_data_compacted_bytes":"10000"}
usage_unit string Unit penggunaan yang dikeluarkan operasi ini. Hanya dapat berupa satu nilai: ESTIMATED_DBU. ESTIMATED_DBU
usage_quantity desimal Jumlah unit penggunaan yang digunakan oleh operasi ini. 2.12

Contoh kueri

Bagian berikut menyertakan kueri sampel yang dapat Anda gunakan untuk mendapatkan wawasan tentang tabel sistem pengoptimalan prediktif. Agar kueri ini berfungsi, Anda perlu mengganti nilai dalam tanda kurung kurawal {{}} dengan parameter Anda sendiri.

Artikel ini menyertakan contoh kueri berikut:

Berapa banyak DBA yang memiliki pengoptimalan prediktif yang digunakan dalam 30 hari terakhir?

SELECT SUM(usage_quantity)
FROM system.storage.predictive_optimization_operations_history
WHERE
     usage_unit = "ESTIMATED_DBU"
     AND  timestampdiff(day, start_time, Now()) < 30

Pada tabel mana pengoptimalan prediktif menghabiskan paling banyak dalam 30 hari terakhir?

SELECT
     metastore_name,
     catalog_name,
     schema_name,
     table_name,
     SUM(usage_quantity) as totalDbus
FROM system.storage.predictive_optimization_operations_history
WHERE
    usage_unit = "ESTIMATED_DBU"
    AND timestampdiff(day, start_time, Now()) < 30
GROUP BY ALL
ORDER BY totalDbus DESC

Pada tabel mana pengoptimalan prediktif melakukan operasi terbanyak?

SELECT
     metastore_name,
     catalog_name,
     schema_name,
     table_name,
     operation_type,
     COUNT(DISTINCT operation_id) as operations
FROM system.storage.predictive_optimization_operations_history
GROUP BY ALL
ORDER BY operations DESC

Untuk katalog tertentu, berapa banyak total byte yang telah dikompresi?

SELECT
     schema_name,
     table_name,
     SUM(operation_metrics["amount_of_data_compacted_bytes"]) as bytesCompacted
FROM system.storage.predictive_optimization_operations_history
WHERE
    metastore_name = {{metastore_name}}
    AND catalog_name = {{catalog_name}}
    AND operation_type = "COMPACTION"
GROUP BY ALL
ORDER BY bytesCompacted DESC

Tabel apa yang paling banyak bytenya dikosongkan?

SELECT
     metastore_name,
     catalog_name,
     schema_name,
     table_name,
     SUM(operation_metrics["amount_of_data_deleted_bytes"]) as bytesVacuumed
FROM system.storage.predictive_optimization_operations_history
WHERE operation_type = "VACUUM"
GROUP BY ALL
ORDER BY bytesVacuumed DESC

Berapa tingkat keberhasilan operasi yang dijalankan oleh pengoptimalan prediktif?

WITH operation_counts AS (
     SELECT
           COUNT(DISTINCT (CASE WHEN operation_status = "SUCCESSFUL" THEN operation_id END)) as successes,
           COUNT(DISTINCT operation_id) as total_operations
    FROM system.storage.predictive_optimization_operations_history
 )
SELECT successes / total_operations as success_rate
FROM operation_counts