All Products
Search
Document Center

Realtime Compute for Apache Flink:LastRow Merge Engine

Last Updated:Aug 11, 2026

Topik ini menjelaskan cara menggunakan LastRow Merge Engine.

Detail LastRow Merge Engine

  • Merge policy

    Kebijakan merge LastRow digunakan secara default. Ketika primary key data baru cocok dengan catatan yang sudah ada, catatan lama akan ditimpa. Hanya catatan terbaru berdasarkan processing time yang dipertahankan.

  • Konfigurasi

    Jika parameter 'table.merge-engine' tidak secara eksplisit ditentukan dalam properti tabel saat membuat tabel dengan primary key, sistem secara otomatis mengaktifkan LastRow Merge Engine default.

  • Jenis operasi yang didukung

    INSERT, UPDATE, dan DELETE.

  • Dukungan partial update

    Engine ini mendukung pembaruan sebagian kolom, memungkinkan Anda memperbarui hanya kolom tertentu alih-alih seluruh baris.

Contoh penggunaan

Contoh-contoh berikut mencakup skenario umum berikut:

  • Sinkronisasi data Real-time: Dalam skenario data streaming, LastRow Merge Engine memastikan bahwa catatan untuk suatu primary key selalu mencerminkan status terbaru.

  • Pembaruan inkremental: Engine ini mendukung partial column updates, yang ideal untuk memproses data inkremental secara efisien.

  • Pembersihan data: Anda dapat menggunakan operasi DELETE untuk membersihkan data yang kedaluwarsa atau tidak valid secara berkala serta mengoptimalkan ruang penyimpanan.

CREATE TABLE T (
 k INT,
 v1 DOUBLE,
 v2 STRING,
 PRIMARY KEY (k) NOT ENFORCED
);
-- Insert
INSERT INTO T(k, v1, v2) VALUES (1, 1.0, 't1');
INSERT INTO T(k, v1, v2) VALUES (1, 1.0, 't2');
SELECT * FROM T WHERE k = 1;
-- Outputs:
+----+-----+----+
| k | v1 | v2 |
+----+-----+----+
| 1 | 1.0 | t2 |
+----+-----+----+
-- Update
INSERT INTO T(k, v1, v2) VALUES (2, 2.0, 't2');
UPDATE T SET v1 = 4.0 WHERE k = 2;
SELECT * FROM T WHERE k = 2;
 -- Outputs:
+----+-----+----+
| k | v1 | v2 |
+----+-----+----+
| 2 | 4.0 | t2 |
+----+-----+----+
-- Partial update
INSERT INTO T(k, v1) VALUES (3, 3.0); -- Set v1 to 3.0
SELECT * FROM T WHERE k = 3;
-- Outputs:
+----+-----+------+
| k | v1 | v2 |
+----+-----+------+
| 3 | 3.0 | null |
+----+-----+------+
INSERT INTO T(k, v2) VALUES (3, 't3'); -- Set v2 to 't3'
SELECT * FROM T WHERE k = 3;
-- Outputs:
+----+-----+----+
| k | v1 | v2 |
+----+-----+----+
| 3 | 3.0 | t3 |
+----+-----+----+
-- Delete (Batch delete is not currently supported)
DELETE FROM T WHERE k = 2;
SELECT * FROM T;
-- Outputs:
+----+-----+----+
| k | v1 | v2 |
+----+-----+----+
| 1 | 1.0 | t2 |
+----+-----+----+
| 3 | 3.0 | t3 |
+----+-----+----+