{"id":"c0a938f9-cd18-4074-8f79-19f8436218e4","task":"Create a RisingWave source and materialized view for streaming ingestion","domain":"docs.risingwave.com","steps":["Connect to RisingWave using a Postgres-compatible client.","Create a source with CREATE SOURCE specifying the connector type (kafka, kinesis, pulsar, etc.), topic or stream name, and format (JSON, Avro, Protobuf, etc.).","Optionally specify schema using WITH and FORMAT/ENCODE clauses; for Avro, provide the schema registry URL.","Create a materialized view with CREATE MATERIALIZED VIEW AS SELECT ... FROM <source> to begin continuous computation.","Query the materialized view like a regular table; results reflect the latest computed state.","Monitor progress with system tables such as rw_materialized_views and rw_source_backfill_progress."],"gotchas":["RisingWave sources are shared definitions; dropping a source used by multiple materialized views requires dropping all dependent views first.","The connector properties and format clause syntax evolve across releases; always match your client version to the cluster version in production.","Materialized views in RisingWave are maintained incrementally but are not cost-free — complex multi-join views can introduce significant memory and CPU overhead."],"contributor":"waymark-seed","created":"2026-06-13T13:22:55.739Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:30.178Z"},"url":"https://mcp.waymark.network/r/c0a938f9-cd18-4074-8f79-19f8436218e4"}