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.
Berlaku untuk:
Databricks SQL
Mengubah metadata yang terkait dengan tampilan.
Memungkinkan Anda melakukan salah satu tindakan berikut:
- Tambahkan jadwal untuk memperbarui tampilan materialisasi yang ada.
- Mengubah jadwal refresh yang ada untuk tampilan materialisasi.
- Hapus jadwal refresh untuk tampilan materialisasi. Jika jadwal dihilangkan, objek perlu di-refresh secara manual untuk mencerminkan data terbaru.
Untuk menambahkan atau mengubah komentar pada tampilan materialisasi, gunakan COMMENT ON.
Catatan
Mengubah dataset yang dibuat oleh pipeline dengan cara yang bertentangan dengan SQL yang mendefinisikannya dapat menyebabkan beberapa perubahan dibatalkan. Lihat Menggunakan ALTER perintah dengan Alur Deklaratif Lakeflow Spark.
Sintaks
ALTER MATERIALIZED VIEW view_name
{
{ ADD | ALTER } schedule |
DROP SCHEDULE |
ALTER COLUMN column_clause |
SET ROW FILTER clause |
DROP ROW FILTER |
SET TAGS clause |
UNSET TAGS clause }
schedule
{ SCHEDULE [ REFRESH ] schedule_clause |
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ] }
schedule_clause
{ EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
CRON cron_string [ AT TIME ZONE timezone_id ] }
column_clause
column_identifier
{ COMMENT clause |
SET MASK clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Parameter
-
Nama tampilan materialisasi untuk mengubah definisi. Nama tidak boleh menyertakan spesifikasi temporal.
jadwal
Tambahkan atau ubah
SCHEDULEpernyataan atauTRIGGERpada tampilan materialisasi.Catatan
Anda tidak dapat mengubah jadwal tampilan materialisasi yang dibuat dengan Alur Deklaratif Lakeflow Spark dengan perintah ini. Gunakan pipeline editor.
SCHEDULE [ REFRESH ] schedule_clauseEVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }Untuk menjadwalkan refresh yang terjadi secara berkala, gunakan sintaks
EVERY. Jika sintaksEVERYditentukan, tabel streaming atau tampilan materialisasi di-refresh secara berkala pada interval yang ditentukan berdasarkan nilai yang disediakan, sepertiHOUR,HOURS,DAY,DAYS,WEEK, atauWEEKS. Tabel berikut ini mencantumkan nilai bilangan bulat yang diterima untuknumber.Unit waktu Nilai bilangan bulat HOUR or HOURS1 <= H <= 72 DAY or DAYS1 <= D <= 31 WEEK or WEEKS1 <= W <= 8 Catatan
Bentuk tunggal dan jamak dari unit waktu yang disertakan setara secara semantik.
CRON cron_string [ AT TIME ZONE timezone_id ]Untuk menjadwalkan refresh menggunakan nilai cron kuarsa . Time_zone_values yang valid diterima.
AT TIME ZONE LOCALtidak didukung.Jika
AT TIME ZONEtidak ada, zona waktu sesi digunakan. JikaAT TIME ZONEtidak ada dan zona waktu sesi tidak diatur, kesalahan akan muncul.SCHEDULEsecara semantik setaraSCHEDULE REFRESHdengan .
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ]Penting
Fitur ini
TRIGGER ON UPDATEada di Beta.Mengatur tampilan materialisasi untuk disegarkan saat sumber data upstram diperbarui, paling banyak sekali setiap menit. Tetapkan nilai untuk
AT MOST EVERYmemerlukan setidaknya waktu minimum antara refresh.Sumber data upstream harus berupa tabel Delta eksternal atau terkelola (termasuk tampilan materialisasi atau tabel streaming), atau tampilan terkelola yang dependensinya terbatas pada jenis tabel yang didukung.
Mengaktifkan peristiwa file dapat membuat pemicu lebih berkinerja, dan meningkatkan beberapa batasan pada pembaruan pemicu.
trigger_intervaladalah pernyataan INTERVAL yang setidaknya 1 menit.TRIGGER ON UPDATEmemiliki batasan berikut- Tidak lebih dari 10 sumber data hulu per tampilan materialisasi saat menggunakan TRIGGER ON UPDATE.
- Maksimum 1000 tabel streaming atau tampilan materialisasi dapat ditentukan dengan TRIGGER ON UPDATE.
- Klausa
AT MOST EVERYdefault ke 1 menit, dan tidak boleh kurang dari 1 menit.
DROP SCHEDULEMenghapus jadwal dari tampilan materialisasi.
ALTER COLUMN clauseLihat klausa ALTERCOLUMN.
-
Penting
Fitur ini ada di Pratinjau Publik.
Menambahkan fungsi filter baris ke tampilan materialisasi. Semua kueri berikutnya ke tampilan terwujud menerima subset baris di mana fungsi dievaluasi menjadi boolean
TRUE. Ini dapat berguna untuk tujuan kontrol akses menurun di mana fungsi dapat memeriksa identitas atau keanggotaan grup pengguna yang memanggil untuk menentukan apakah akan memfilter baris tertentu.Filter baris ditambahkan setelah pembuatan hanya disebarkan ke tabel hilir setelah pembaruan berikutnya. Untuk alur berkelanjutan, ini memerlukan mulai ulang alur.
DROP ROW FILTERPenting
Fitur ini ada di Pratinjau Publik.
Menghilangkan filter baris dari tampilan materialisasi, jika ada. Kueri di masa mendatang akan mengembalikan semua baris dari tabel tanpa pemfilteran otomatis.
SET TAGS ( { tag_name = tag_value } [, ...] )Penting
Fitur ini ada di Pratinjau Publik.
Terapkan tag ke tampilan terwujud / "materialized view" Anda perlu memiliki izin
APPLY TAGuntuk menambahkan tag ke tampilan materialisasi.tag_nameSebuah makna harfiah
STRING.tag_nameharus unik dalam tampilan atau kolom yang terwujud.tag_valueSebuah makna harfiah
STRING.
UNSET TAGS ( tag_name [, ...] )Penting
Fitur ini ada di Pratinjau Publik.
Hapus tag dari tampilan materialisasi. Anda harus memiliki
APPLY TAGizin untuk menghapus tag dari tampilan yang telah materialisasi.tag_nameSebuah makna harfiah
STRING.tag_nameharus unik dalam tampilan atau kolom yang terwujud.
Klausa ALTER COLUMN
Penting
Fitur ini ada di Pratinjau Publik.
Mengubah properti atau lokasi kolom.
Sintaks
ALTER COLUMN
column_identifier
{ COMMENT comment |
SET MASK mask_clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Parameter
-
Nama kolom yang akan diubah.
COMMENT commentMengubah deskripsi kolom
column_name.commentharus berupa nilai literalSTRING.SETKlausa MASKMenambahkan fungsi masker kolom untuk menganonimkan data sensitif. Semua kueri berikutnya dari kolom tersebut akan menerima hasil evaluasi fungsi tersebut di atas kolom sebagai pengganti nilai asli kolom. Ini dapat berguna untuk tujuan kontrol akses terperinci di mana fungsi dapat memeriksa identitas atau keanggotaan grup pengguna yang memanggil untuk menentukan apakah akan menyunting nilai tersebut.
Masker kolom yang ditambahkan setelah dibuat hanya akan dipropagasi ke tabel penerus setelah pembaruan berikutnya. Untuk alur berkelanjutan, ini memerlukan mulai ulang alur.
DROP MASKMenghapus masker kolom untuk kolom ini, jika ada. Kueri di masa mendatang dari kolom ini akan menerima nilai asli kolom.
SET TAGS ( { tag_name = tag_value } [, ...] )Terapkan tag ke kolom. Anda harus memiliki
APPLY TAGizin untuk menambahkan tag ke kolom.tag_name
Sebuah makna harfiah
STRING.tag_nameharus unik dalam tabel atau kolom.tag_value
Sebuah makna harfiah
STRING.
UNSET TAGS ( tag_name [, ...] )Hapus tag yang diberikan dari kolom. Anda harus memiliki
APPLY TAGizin untuk menghapus tag dari kolom.tag_name
Sebuah makna harfiah
STRING.tag_nameharus unik dalam tabel atau kolom.
Contoh
-- Adds a schedule to refresh the materialized view whenever its upstream data gets updated.
> ALTER MATERIALIZED VIEW my_mv
ADD TRIGGER ON UPDATE;
-- Alters the schedule to refresh the materialized view when its upstream data
-- gets updated, and make sure the update frequency is no more than 1 update
-- per hour.
> ALTER MATERIALIZED VIEW my_mv
ALTER TRIGGER ON UPDATE AT MOST EVERY INTERVAL 1 hour;
-- Alters the schedule to run every two hours for a materialized view
> ALTER MATERIALIZED VIEW my_mv
ALTER SCHEDULE EVERY 2 HOURS;
-- Alters the schedule to refresh a materialized view once a day
-- at midnight in Los Angeles
> ALTER MATERIALIZED VIEW my_mv
ALTER SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';
-- Drops the schedule for a materialized view
> ALTER MATERIALIZED VIEW my_mv
DROP SCHEDULE;
-- Adds a column comment
> ALTER MATERIALIZED VIEW my_mv
ALTER COLUMN my_column_name COMMENT 'test'