Skip to content
Lubo Bali
All projects

Data pipelinesFinance · Data quality

Bitcoin streaming pipeline

Live Bitcoin trades, cleaned as they arrive, and bad ones kept aside instead of lost

0rows silently dropped: every bad trade kept with a reason

A small test run: 18 trades.

See the code on GitHub (opens in a new tab)

Proof you can check:Code on GitHubLimits said openly

Data pipelines

Bad trades kept aside, never lost

Bronze: every trade18
Silver: clean15
Quarantine3kept with the reason
Gold1-minute price candles

Lubo Bali · lubobali.com

No. 18Clean + quarantine = all rows

The problem

Streaming pipelines usually drop bad records without a trace. Later nobody can say what was lost, or why the numbers don't match.

What I built

Live BTC-USD trades from a WebSocket flow through Bronze, then split: clean trades to Silver, bad ones to a quarantine table with the reason, and Silver feeds 1-minute price candles in Gold.

Tech & why

Delta Live Tables checks every trade (price, size, time, type); clean plus quarantined always equals everything that came in.

  • Databricks
  • Delta Live Tables
  • PySpark
  • Structured Streaming

The result

In the test run, 18 trades came in: 15 clean, 3 held in quarantine with their reason, none lost. Gold builds 1-minute candles from the clean ones.

Similar projects

Have a problem like this? Get your free AI blueprint in about a minute.

Tell me your problem. I'll find a way to build the solution.

Available now

Book a free 30-min call (opens Calendly in a new tab)

No obligation. Pick a time that suits you.

Prefer email?data@lubobali.com