Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Pelacakan baris memungkinkan Azure Databricks melacak silsilah baris dalam tabel. Beberapa pembaruan inkremental untuk tampilan materialisasi memerlukan fitur ini.
Semua tabel Apache Iceberg v3 menyertakan pelacakan baris. Lihat Menggunakan fitur Apache Iceberg v3. Untuk tabel Delta Lake, Anda harus secara eksplisit mengaktifkan pelacakan baris.
Penting
Pelacakan baris tersedia di Databricks Runtime 14.1 ke atas.
Pelacakan baris adalah fitur tabel yang menggunakan protokol penulisan tabel yang lebih canggih dibandingkan beberapa klien. Versi protokol tabel tidak dapat diturunkan, dan tabel dengan pelacakan baris yang diaktifkan tidak dapat ditulis oleh klien yang tidak mendukung semua fitur penulis protokol tabel yang diaktifkan. Lihat Kompatibilitas dan protokol fitur Delta Lake.
Mengaktifkan pelacakan baris pada tabel Delta
Untuk mengaktifkan pelacakan baris pada tabel Delta Lake, atur properti delta.enableRowTracking = true tabel selama pembuatan tabel:
CREATE TABLE table_name
TBLPROPERTIES (delta.enableRowTracking = true)
AS SELECT * FROM source_table;
Untuk mengaktifkan pelacakan baris pada tabel Delta Lake yang sudah ada, gunakan contoh berikut:
ALTER TABLE table_name SET TBLPROPERTIES (delta.enableRowTracking = true);
Penting
Mengaktifkan pelacakan baris pada tabel yang ada secara otomatis menerapkan ID baris dan versi komit baris ke semua baris yang sudah ada dalam tabel. Proses ini dapat mengakibatkan pembuatan beberapa versi baru tabel dan dapat memakan waktu yang signifikan.
Mengkloning tabel membuat riwayat terpisah, sehingga ID baris dan versi penerapan baris pada tabel kloning tidak cocok dengan yang ada di tabel asli.
Apa skema bidang metadata pelacakan baris?
Pelacakan baris menambahkan dua bidang metadata tersembunyi ke tabel. Anda bisa secara eksplisit menambahkan bidang ini ke kueri Anda untuk mengembalikan nilai.
| Nama kolom | Jenis | Nilai | Penjelasan |
|---|---|---|---|
_metadata.row_id |
Long | Pengidentifikasi baris yang unik. | Baris menyimpan ID yang sama setiap kali dimodifikasi menggunakan pernyataan MERGE atau UPDATE. |
_metadata.row_commit_version |
Long | Log Delta atau versi tabel tempat baris terakhir disisipkan atau diperbarui. | Baris diberikan versi baru setiap kali dimodifikasi menggunakan pernyataan MERGE atau UPDATE. |
Beberapa operasi menyimpan bidang metadata ini menggunakan log transaksi. Menjalankan perintah OPTIMIZE atau REORG pada tabel dengan pelacakan baris diaktifkan menulis ulang file data untuk menyimpan elemen-elemen ini.
Menonaktifkan pelacakan baris pada tabel Delta
Untuk menonaktifkan pelacakan baris pada tabel Delta Lake, atur properti tabel ke false.
ALTER TABLE table_name SET TBLPROPERTIES (delta.enableRowTracking = false);
Penting
Menonaktifkan pelacakan baris tidak menghapus fitur tabel yang sesuai dan tidak menurunkan versi protokol tabel. Ini juga tidak menghapus bidang metadata dari tabel target.
Dengan pelacakan baris dinonaktifkan, ID baris yang dihasilkan tidak lagi dapat diandalkan untuk melacak baris unik.
Batasan
ID baris dan bidang metadata versi penerapan baris tidak dapat diakses saat membaca umpan data perubahan. Lihat Gunakan umpan data perubahan Delta Lake pada Azure Databricks.