Properti tabel dan opsi tabel

Berlaku untuk:centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime

Menentukan tag yang ditentukan pengguna untuk tabel dan tampilan.

  • properti tabel

    Properti tabel adalah pasangan kunci-nilai yang dapat Anda inisialisasi saat Anda melakukan CREATE TABLE atau CREATE VIEW. Anda dapat UNSET properti tabel baru atau yang sudah ada SET menggunakan ALTER TABLE atau ALTER VIEW.

    Anda dapat menggunakan properti tabel untuk menandai tabel dengan informasi yang tidak dilacak oleh SQL.

  • opsi tabel

    Tujuan opsi tabel adalah untuk mengirimkan properti penyimpanan ke penyimpanan yang mendasarinya, seperti properti SERDE ke Apache Hive.

    Opsi tabel adalah pasangan kunci-nilai yang dapat Anda inisialisasi saat Anda melakukan CREATE TABLE. Anda tidak dapat melakukan SET atau UNSET pada opsi tabel.

TBLPROPERTIES

Mengatur satu atau beberapa properti tabel dalam tabel atau tampilan baru.

Anda dapat menggunakan properti tabel untuk menandai tabel dengan informasi yang tidak dilacak oleh SQL.

Sintaks

TBLPROPERTIES ( { property_key [ = ] property_val } [, ...] )

property_key
  { identifier [. ...] | string_literal }

Parameter

  • property_key

    Kunci untuk properti. Kunci dapat terdiri dari satu atau beberapa pengidentifikasi yang dipisahkan oleh titik, atau string literal.

    Kunci properti harus unik dan sensitif terhadap huruf besar/kecil.

  • property_val

    Nilai untuk properti. Nilainya harus berupa BOOLEAN, , STRINGINTEGER, atau DECIMAL harfiah.

Contoh

-- Create table with user defined table properties
> CREATE TABLE T(c1 INT) TBLPROPERTIES('this.is.my.key' = 12, this.is.my.key2 = true);
> SHOW TBLPROPERTIES T;
key              value
---------------- -----
...
this.is.my.key      12
this.is.my.key2   true
...

SET TBLPROPERTIES

Mengatur satu atau beberapa properti tabel dalam tabel atau tampilan yang sudah ada.

Sintaks

SET TBLPROPERTIES ( { property_key [ = ] property_val } [, ...] )

property_key
  { identifier [. ...] | string_literal }

Parameter

  • property_key

    Kunci untuk properti. Kunci dapat terdiri dari satu atau beberapa pengidentifikasi yang dipisahkan oleh titik, atau string literal.

    Kunci properti harus unik dan sensitif terhadap huruf besar/kecil.

  • property_val

    Nilai baru untuk properti. Nilainya harus berupa BOOLEAN, , STRINGINTEGER, atau DECIMAL harfiah.

Contoh

-- Alter the a table's table properties.
>  ALTER TABLE T SET TBLPROPERTIES(this.is.my.key = 14, 'this.is.my.key2' = false);
> SHOW TBLPROPERTIES T;
key              value
---------------- -----
...
this.is.my.key      14
this.is.my.key2  false
...

HAPUS PENGATURAN TBLPROPERTIES

Menghapus satu atau beberapa properti tabel dari tabel atau tampilan.

Sintaks

UNSET TBLPROPERTIES [ IF EXISTS ] ( property_key [, ...] )

property_key
  { identifier [. ...] | string_literal }

Parameter

  • JIKA ADA

    Klausa opsional yang mengarahkan Databricks SQL untuk tidak memunculkan kesalahan jika salah satu kunci properti tidak ada.

  • property_key

    Kunci properti yang akan dihapus. Kunci dapat terdiri dari satu atau beberapa pengidentifikasi yang dipisahkan oleh titik, atau string literal.

    Kata kunci properti sensitif terhadap huruf besar atau kecil. Jika property_key tidak ada, maka kesalahan akan muncul kecuali IF EXISTS telah ditentukan.

Contoh

-- Remove a table's table properties.
>  ALTER TABLE T UNSET TBLPROPERTIES(this.is.my.key, 'this.is.my.key2');
> SHOW TBLPROPERTIES T;
key                              value
-------------------------------- -----
... keys other that key and key2 ...

OPSI

Mengatur satu atau beberapa opsi tabel dalam tabel baru.

Tujuan opsi tabel adalah untuk mengirimkan properti penyimpanan ke penyimpanan yang mendasarinya, seperti properti SERDE ke Apache Hive.

Menentukan opsi tabel untuk tabel Delta Lake juga akan menampilkan kembali opsi ini sebagai properti tabel.

Sintaks

OPTIONS ( { property_key [ = ] property_val } [, ...] )

property_key
  { identifier [. ...] | string_literal }

Parameter

  • property_key

    Kunci untuk properti. Kunci dapat terdiri dari satu atau beberapa pengidentifikasi yang dipisahkan oleh titik, atau string literal.

    Kunci properti harus unik dan peka huruf besar/kecil.

  • property_val

    Nilai untuk properti. Nilainya harus berupa BOOLEAN, , STRINGINTEGER, atau DECIMAL harfiah.

    Dalam Databricks SQL dan Databricks Runtime 13.3 LTS ke atas property_val dapat menjadi ekspresi konstan.

Contoh

-- Create table with user defined table option
-- The options appears with an `option.` prefix.
> CREATE TABLE T(c1 INT) OPTIONS(this.is.my.key = 'blue' || 'green');
> SHOW TBLPROPERTIES T;
key              value
---------------- -----
...
option.this.is.my.key bluegreen
...

Kunci untuk properti tabel yang sudah ditetapkan

Azure Databricks mencadangkan beberapa kunci properti untuk penggunaannya sendiri dan menimbulkan kesalahan jika Anda mencoba menggunakannya:

  • external

    Gunakan CREATE EXTERNAL TABLE untuk membuat tabel eksternal.

  • location

    Gunakan klausa LOCATIONALTER TABLE dan CREATE TABLE untuk mengatur lokasi tabel.

  • owner

    Gunakan klausa [SET] OWNER TOALTER TABLE dan ALTER VIEW untuk mentransfer kepemilikan tabel atau tampilan. SET diizinkan sebagai kata kunci opsional di Databricks SQL.

  • provider

    Gunakan klausul USINGCREATE TABLE untuk mengatur sumber data tabel

Anda tidak boleh menggunakan kunci properti yang dimulai dengan pengidentifikasi option. Pengidentifikasi prefiks ini akan disaring di SHOW TBLPROPERTIES. Awalan option juga digunakan untuk menampilkan opsi tabel .

Fungsi TBLPROPERTIES dan OPTIONS yang umum

Properti tabel Delta dan Iceberg

Pengaturan berikut umumnya digunakan dengan tabel Delta Lake dan Apache Iceberg:

  • delta.appendOnly: Atur ke true untuk menonaktifkan operasi UPDATE dan DELETE.
  • delta.dataSkippingNumIndexedCols: Atur ke jumlah kolom terkemuka yang akan dikumpulkan dan dipertimbangkan statistiknya.
  • delta.deletedFileRetentionDuration: Atur ke interval seperti 'interval 7 days' untuk mengontrol kapan VACUUM diizinkan untuk menghapus file.
  • delta.logRetentionDuration: Atur ke rentang waktu seperti 'interval 60 days' untuk mengontrol berapa lama riwayat dipertahankan untuk kueri penelusuran waktu.

Untuk daftar lengkap properti tabel Delta Lake dan Apache Iceberg yang tersedia, termasuk deskripsi, jenis data, dan nilai default, lihat Referensi properti tabel.

OPSI format file

Saat membuat tabel dengan sumber data non-Delta Lake menggunakan CREATE TABLE USING, Anda dapat menggunakan OPTIONS untuk meneruskan properti penyimpanan khusus format file. Kunci opsi yang tersedia bergantung pada format file (CSV, , , JSONPARQUET, AVROORC, TEXT, XML, BINARYFILE). Untuk detail tentang opsi yang tersedia untuk setiap format file, lihat read_files fungsi bernilai tabel.