Pernyataan ALTER ETL memodifikasi Tugas ETL dengan status RUNNING.
Mesin dan versi
ALTER ETL hanya berlaku untuk mesin aliran. Diperlukan versi 3.1.8 atau yang lebih baru.
Anda dapat melihat dan memperbarui versi minor di Konsol.
Sintaksis
alter_etl_statement ::= ALTER ETL etl_name
[WITH etl_properties]
AS INSERT INTO [[catalog_name.]db_name.]table_name column_list
select_statement
etl_properties ::= '(' property_definition (',' property_definition)* ')'
property_definition ::= property_name '=' property_value
column_list ::= '(' column_name (',' column_name)* ')'Catatan penggunaan
Nama ETL (etl_name)
Diperlukan. Menentukan Tugas ETL yang akan dimodifikasi.
Properti ETL (etl_properties)
Gunakan kata kunci WITH untuk menambahkan properti ETL berikut:
Kurung siku nama properti dengan tanda backtick (`) dan nilai properti dengan tanda kutip tunggal ('). Contohnya, `parallelism` = '2'.
Properti | Tipe data | Deskripsi | Nilai default |
parallelism | INTEGER | Tingkat paralelisme untuk tugas tersebut. | 1 |
sink.ignore-update-before | BOOLEAN | Menentukan apakah akan mengabaikan -U selama operasi sink. | false |
sink.ignore-delete | BOOLEAN | Menentukan apakah akan mengabaikan -D selama operasi sink. | false |
sink.null-mode | STRING | Menentukan apakah akan menulis nilai null selama operasi sink. Nilai valid:
| NO_OP |
udf.xxxx | STRING | Mengonfigurasi fungsi yang ditentukan pengguna (UDF). Anda harus mengunggah file JAR UDF sebelum menggunakan properti ini. Parameter ini menggunakan format | Tidak ada |
stream.xxx | ANY | Parameter untuk pekerjaan mesin aliran. Contohnya, | Tidak ada |
Tentukan tabel sink
Parameter | Diperlukan | Deskripsi |
catalog_name | Tidak | Katalog tabel sink. |
db_name | Tidak | Database tempat tabel sink berada. |
table_name | Ya | Nama tabel sink. |
column_name | Ya | Nama kolom dalam tabel sink. |
Pernyataan pencarian SQL (select_statement)
Menentukan pernyataan pencarian SQL baru.
Contoh
Asumsikan bahwa tabel sumber source dan tabel sink sink di LindormTable memiliki struktur berikut:
-- Tabel sumber: source
CREATE TABLE source(p1 INT, c1 DOUBLE, PRIMARY KEY(p1));
-- Tabel sink: sink
CREATE TABLE sink(p1 INT, c1 DOUBLE, PRIMARY KEY(p1));Pernyataan berikut membuat Tugas ETL bernama filter2 dan menambahkan properti.
CREATE ETL IF NOT EXISTS filter2
WITH (
`parallelism` = '2',
`stream.execution.checkpointing.interval` = '30000'
)
AS
INSERT INTO `lindorm_table`.`default`.`sink` (p1, c1)
SELECT p1, c1 FROM `lindorm_table`.`default`.`source` WHERE c1 > 10;Modifikasi properti Tugas ETL
Pernyataan berikut mengubah properti parallelism menjadi 4.
ALTER ETL filter2
WITH (`parallelism` = '4')
AS
INSERT INTO `lindorm_table`.`default`.`sink` (p1, c1)
SELECT p1, c1 FROM `lindorm_table`.`default`.`source`;Verifikasi Hasilnya
Jalankan pernyataan DESC ETL filter2; untuk melihat ATTRIBUTES dari filter2 dan konfirmasikan bahwa modifikasi berhasil.