All Products
Search
Document Center

Realtime Compute for Apache Flink:Realtime Compute for Apache Flink: Pengenalan Pola

Last Updated:Mar 26, 2026

Memodifikasi atribut pengenalan pola dalam pekerjaan Flink SQL akan memutus kompatibilitas antara pekerjaan tersebut dan data state-nya yang sudah ada.

Cara kerja

Realtime Compute for Apache Flink mengimplementasikan pengenalan pola melalui klausa MATCH_RECOGNIZE, yang secara internal menggunakan Pemrosesan Peristiwa Kompleks (Complex Event Processing/CEP). Mesin CEP membangun mesin keadaan hingga (finite state machine) berdasarkan definisi pola dan menyimpan urutan event yang sedang diproses sebagai data state yang terikat pada struktur mesin keadaan tersebut.

Data state CEP merupakan snapshot dari mesin keadaan yang sedang berjalan dan sangat bergantung pada pola yang menghasilkannya. Jika pola diubah, mesin keadaan baru akan memiliki struktur yang berbeda sehingga data state yang telah ada tidak lagi sesuai. Akibatnya, Flink tidak dapat memigrasikan state operator CEP ketika terjadi perubahan pola.

Atribut yang memutus kompatibilitas state

Modifikasi salah satu atribut berikut dalam pernyataan SQL pengenalan pola akan membuat pekerjaan tidak kompatibel dengan data state-nya yang sudah ada:

AttributePeran dalam pengenalan pola
patternMenentukan urutan event yang akan dicocokkan
measuresMenentukan kolom output yang diekstraksi dari suatu match
afterMengontrol posisi awal pencocokan berikutnya
PARTITION BYMempartisi aliran input untuk pencocokan independen per kunci
ORDER BYMenentukan urutan evaluasi event