Memperbarui materialized view.
Ikhtisar Perintah
Berikut adalah operasi yang dapat dilakukan untuk memperbarui materialized view:
Perbarui sebuah materialized view
Jika Anda melakukan operasi seperti insert, overwrite, update, atau delete pada tabel atau partisi yang terkait dengan materialized view, materialized view tersebut menjadi tidak valid dan tidak dapat digunakan untuk penulisan ulang kueri. Anda dapat memeriksa status materialized view. Jika materialized view tidak valid, Anda harus memperbaruinya. Untuk informasi lebih lanjut tentang cara menanyakan status materialized view, lihat Tanyakan Status Materialized View.
Catatan Penggunaan
Anda hanya dapat melakukan pembaruan penuh pada materialized view. Pembaruan bertahap tidak didukung.
Anda dapat memicu pembaruan terjadwal melalui konsol DataWorks. Untuk informasi lebih lanjut tentang cara mengonfigurasi penjadwalan di konsol DataWorks, lihat Konfigurasi Penjadwalan.
Sintaksis
ALTER MATERIALIZED VIEW [<project_name>.]<mv_name> REBUILD [PARTITION (<ds>=max_pt(<table_name>),<expression1>...)];Parameter
Parameter
Diperlukan
Deskripsi
project_name
Tidak
Nama proyek MaxCompute tempat materialized view berada. Jika Anda tidak mengonfigurasi parameter ini, proyek MaxCompute saat ini akan digunakan. Untuk melihat nama proyek MaxCompute, lakukan langkah-langkah berikut: Masuk ke konsol MaxCompute. Di bilah navigasi atas, pilih wilayah. Lihat nama proyek MaxCompute di halaman Projects.
mv_name
Ya
Nama materialized view yang ingin Anda perbarui.
ds
Tidak
Nama bidang partisi dalam materialized view.
max_pt
Tidak
Nilai partisi maksimum dari tabel atau materialized view yang ditentukan oleh table_name.
expression
Tidak
Ekspresi yang digunakan untuk menentukan partisi yang ingin Anda perbarui. Jika Anda ingin memperbarui materialized view yang dipartisi, Anda harus mengonfigurasi parameter ini.
Contoh
Contoh 1: Perbarui materialized view yang tidak dipartisi. Contoh pernyataan:
-- Buat tabel yang tidak dipartisi. CREATE TABLE count_test(a BIGINT, b BIGINT); -- Buat materialized view yang tidak dipartisi. CREATE MATERIALIZED VIEW count_mv LIFECYCLE 7 AS SELECT COUNT(*) FROM count_test; -- Perbarui materialized view yang tidak dipartisi. ALTER MATERIALIZED VIEW count_mv rebuild;Contoh 2: Perbarui partisi dari materialized view yang dipartisi. Contoh pernyataan:
ALTER MATERIALIZED VIEW mv REBUILD PARTITION (ds='20210101');Contoh 3: Perbarui partisi yang memenuhi kondisi tertentu dari materialized view yang dipartisi. Contoh pernyataan:
ALTER MATERIALIZED VIEW mv REBUILD PARTITION(ds>='20210101', ds<='20210105');
Ubah siklus hidup dari materialized view yang ada
MaxCompute memungkinkan Anda mengubah siklus hidup dari materialized view yang ada.
Sintaksis
ALTER MATERIALIZED VIEW [<project_name>.]<mv_name> SET LIFECYCLE <days>;Parameter
Parameter
Diperlukan
Deskripsi
project_name
Tidak
Nama proyek MaxCompute tempat materialized view berada. Jika Anda tidak mengonfigurasi parameter ini, proyek MaxCompute saat ini akan digunakan. Untuk melihat nama proyek MaxCompute, lakukan langkah-langkah berikut: Masuk ke konsol MaxCompute. Di bilah navigasi atas, pilih wilayah. Lihat nama proyek MaxCompute di halaman Projects.
mv_name
Ya
Nama materialized view yang ingin Anda perbarui.
days
Ya
Siklus hidup baru dari materialized view. Satuan: hari.
Contoh
-- Ubah siklus hidup dari materialized view yang ada menjadi 10 hari. ALTER MATERIALIZED VIEW mv SET LIFECYCLE 10;
Aktifkan atau nonaktifkan fitur siklus hidup untuk materialized view yang ada
MaxCompute memungkinkan Anda mengaktifkan atau menonaktifkan fitur siklus hidup untuk materialized view yang ada.
Sintaksis
ALTER MATERIALIZED VIEW [<project_name>.]<mv_name> [<pt_spec>] enable|disable LIFECYCLE;Parameter
Parameter
Diperlukan
Deskripsi
project_name
Tidak
Nama proyek MaxCompute tempat materialized view berada. Jika Anda tidak mengonfigurasi parameter ini, proyek MaxCompute saat ini akan digunakan. Untuk melihat nama proyek MaxCompute, lakukan langkah-langkah berikut: Masuk ke konsol MaxCompute. Di bilah navigasi atas, pilih wilayah. Lihat nama proyek MaxCompute di halaman Projects.
mv_name
Ya
Nama materialized view untuk mana Anda ingin mengaktifkan atau menonaktifkan fitur siklus hidup.
pt_spec
Tidak
Informasi partisi dari materialized view untuk mana Anda ingin mengaktifkan atau menonaktifkan fitur siklus hidup. Format:
(partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...). partition_col menunjukkan nama bidang partisi. partition_col_value menunjukkan nilai partisi.enable|disable
Ya
Opsi
enablemenentukan bahwa fitur siklus hidup diaktifkan untuk materialized view atau partisi dari materialized view. Opsidisablemenentukan bahwa fitur siklus hidup dinonaktifkan untuk materialized view atau partisi dari materialized view. Jika Anda menonaktifkan fitur siklus hidup, manajemen siklus hidup tidak diperlukan untuk materialized view atau partisi.Contoh
Contoh 1: Aktifkan fitur siklus hidup untuk materialized view. Contoh pernyataan:
ALTER MATERIALIZED VIEW mv PARTITION (ds='20210101') enable LIFECYCLE;Contoh 2: Nonaktifkan fitur siklus hidup untuk materialized view. Contoh pernyataan:
ALTER MATERIALIZED VIEW mv PARTITION (ds='20210101') disable LIFECYCLE;
Hapus partisi dari materialized view yang ada
MaxCompute memungkinkan Anda menghapus satu atau lebih partisi dari materialized view yang ada.
Sintaksis
ALTER MATERIALIZED VIEW [<project_name>.]<mv_name> DROP [IF EXIXTS] PARTITION <pt_spec> [PARTITION <pt_spec>, PARTITION <pt_spec>....];Parameter
Parameter
Diperlukan
Deskripsi
project_name
Tidak
Nama proyek MaxCompute tempat materialized view berada. Jika Anda tidak mengonfigurasi parameter ini, proyek MaxCompute saat ini akan digunakan. Untuk melihat nama proyek MaxCompute, lakukan langkah-langkah berikut: Masuk ke konsol MaxCompute. Di bilah navigasi atas, pilih wilayah. Lihat nama proyek MaxCompute di halaman Projects.
mv_name
Ya
Nama materialized view yang dipartisi dari mana Anda ingin menghapus satu atau lebih partisi.
IF EXISTS
Tidak
Jika Anda tidak menentukan IF EXISTS dan materialized view tidak ada, kesalahan akan dikembalikan.
pt_spec
Ya
Partisi yang ingin Anda hapus. Anda harus menentukan setidaknya satu partisi. Format:
(partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...). partition_col menunjukkan nama bidang partisi. partition_col_value menunjukkan nilai partisi.Contoh
Contoh 1: Hapus partisi dari materialized view yang dipartisi. Contoh pernyataan:
ALTER MATERIALIZED VIEW mv DROP PARTITION (ds='20210101');Contoh 2: Hapus partisi yang memenuhi kondisi tertentu dari materialized view yang dipartisi. Contoh pernyataan:
ALTER MATERIALIZED VIEW mv DROP PARTITION (ds>='20210101' AND ds<='20210105');
Pernyataan terkait
CREATE MATERIALIZED VIEW: Membuat materialized view yang mendukung pengelompokan atau partisi berdasarkan data untuk skenario materialized view.
DESC TABLE/VIEW: Melihat informasi tentang materialized view di proyek MaxCompute.
SELECT MATERIALIZED VIEW: Menanyakan status materialized view.
DROP MATERIALIZED VIEW: Menghapus materialized view yang ada.