What this does: Joins a live Kafka event stream with reference data synced from a PostgreSQL database via CDC. The JOIN is maintained incrementally — when reference data changes, the enriched output updates automatically. When to use this: You need to augment high-volume event streams with context from an operational database (user profiles, product catalog, account data) before delivering downstream.Documentation Index
Fetch the complete documentation index at: https://docs.risingwave.com/llms.txt
Use this file to discover all available pages before exploring further.
Setup
1. Ingest events from Kafka
2. Sync reference data from PostgreSQL via CDC
3. Create an enriched materialized view
The JOIN is maintained incrementally. When a user’s segment changes in PostgreSQL, the enriched output updates automatically.4. Deliver enriched events downstream
Key points
- The JOIN between a streaming source and a CDC table is maintained incrementally — no periodic recompute
- When a row in
userschanges in PostgreSQL, theenriched_clicksMV updates to reflect the new value - For late-arriving events or joins where the reference data may not exist yet, use a
LEFT JOINto avoid dropping records - Use
force_append_only = 'true'on Kafka sinks from materialized views that contain aggregations or joins
Next steps
- Lakehouse ingestion recipe — full CDC + Kafka → enrichment → Iceberg pipeline
- PostgreSQL CDC recipe — CDC source setup in detail