Real-time data quality monitoring: Kafka stream contracts with syntactic and semantic test
Nov 26, 2025Yuanzhe Liu

Summary
Introduced a real-time data quality monitoring solution for Kafka streams. This system allows users to define data contracts including schema agreements, semantic rules (string patterns, number ranges, constant values), and ownership details. It uses FlinkSQL to execute tests based on these contracts, identifying syntactic (schema mismatches) and semantic (field-level rule violations) issues in real-time. Problematic data is published to a dedicated Kafka topic and sunk to S3 for observability. Alerts are sent to stream owners via Slack through the Genchi platform. LLM-based recommendations are provided to simplify semantic rule definition. The solution has been deployed across 100+ Kafka topics.
More from the Data Production Issue (DPI) Operationalization trail
- Data Mesh at Grab (Part III): Operationalizing data reliability with automated DPIs
- The Hugo evolution: Engineering Grab's unified, one-click data ingestion platform with Apache Flink
- Data Mesh at Grab (Part II): The foundational tools behind certification
- Data mesh at Grab part I: Building trust through certification
- The complete stream processing journey on FlinkSQL