D
databricks-spark-structured-streaming
About databricks-spark-structured-streaming
databricks-spark-structured-streaming is a guide for building and operating production Spark Structured Streaming pipelines. It collects patterns for Kafka, stream joins, multi-sink writes, state management, and real-time mode.
Key features
- 01Kafka streaming patterns
- 02Real-Time Mode setup and monitoring
- 03Stream-stream and stream-static joins
- 04Multi-sink writes and MERGE tuning
- 05Checkpoint and stateful-operation configuration
- 06Production checklist
Use cases
- 01Stream Kafka data into Delta
- 02Process events with low latency
- 03Join streaming data with static data
- 04Write streaming records to multiple tables
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ databricks/ databricks-agent-skills --skill databricks-spark-structured-streamingAfter installing, type/databricks-spark-structured-streamingin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
agents/openai.yamlassets/databricks.svgreferences/checkpoint-best-practices.mdkafka-streaming.mdlakebase-sink-python.mdmerge-operations.mdmulti-sink-writes.mdreal-time-mode.mdstateful-operations.mdstream-static-joins.mdstream-stream-joins.mdstreaming-best-practices.mdtrigger-and-cost-optimization.mdDetails
From the project READMESpark Structured Streaming
Production-ready streaming pipelines with Spark Structured Streaming. This skill provides navigation to detailed patterns and best practices.
Quick Start
from pyspark.sql.functions import col, from_json
# Basic Kafka to Delta streaming
df = (spark
.readStream
.format("kafka")
.option("kafka.bootstrap.servers", "broker:9092")
.option("subscribe", "topic")
.load()
.select(from_json(col("value").cast("string"), schema).alias("data"))
.select("data.*")
)
df.writeStream \
.format("delta") \
.outputMode("append") \
.option("checkpointLocation", "/Volumes/catalog/checkpoints/stream") \
.trigger(processingTime="30 seconds") \
.start("/delta/target_table")
Core Patterns
| Pattern | Description | Reference |
|---|---|---|
| Kafka Streaming | Kafka to Delta, Kafka to Kafka, Real-Time Mode | See references/kafka-streaming.md |
| Real-Time Mode (RTM) | Sub-second E2E latency — cluster setup, slot math, supported ops (incl. stream-stream inner join on DBR 18+), transformWithState, observability, error classes, delivery semantics | See references/real-time-mode.md |
| Lakebase Sink | Write streaming records into Lakebase Postgres with transactional upserts. Native format("postgresql") sink (DBR 18.3+) and manual foreach sink as a fallback | See references/lakebase-sink-python.md |
| Stream Joins | Stream-stream joins, stream-static joins | See references/stream-stream-joins.md, references/stream-static-joins.md |
| Multi-Sink Writes | Write to multiple tables, parallel merges | See references/multi-sink-writes.md |
| Merge Operations | MERGE performance, parallel merges, optimizations | See references/merge-operations.md |
Configuration
| Topic | Description | Reference |
|---|---|---|
| Checkpoints | Checkpoint management and best practices | See references/checkpoint-best-practices.md |
| Stateful Operations | Watermarks, state stores, RocksDB configuration | See references/stateful-operations.md |
| Trigger & Cost | Trigger selection, cost optimization, RTM | See references/trigger-and-cost-optimization.md |
Best Practices
| Topic | Description | Reference |
|---|---|---|
| Production Checklist | Comprehensive best practices | See references/streaming-best-practices.md |
Production Checklist
- Checkpoint location is persistent (UC volumes, not DBFS)
- Unique checkpoint per stream
- Fixed-size cluster (no autoscaling for streaming)
- Monitoring configured (input rate, lag, batch duration)
- Exactly-once verified (txnVersion/txnAppId)
- Watermark configured for stateful operations
- Left joins for stream-static (not inner)
Comments
Markdown supported