ReadSigil

Build · Banking data stack · Workshop 1 of 8

The numbers match. The money doesn't.

Harbour Bank · Saturday 17 October, 07:42 · UPI settlement for 16 October is due for sign-off at 09:30.

Finance Control to Data Platform07:42

The overnight check passed, but the settlement GL does not agree with NPCI's net settlement for 16 Oct. I can't sign off a difference I can't explain. I need the cause and the corrections approved before 09:30.

Overnight count checkMatched
NPCI raw file1,800
Ledger UPI postings1,800
Difference0
Settlement position, 16 OctNot agreed
NPCI net settlement, payable
UPI settlement GL, payable
Difference

Where do you start?

Pick a line of inquiry. You can follow all three, in any order.

The workshop series

Eight workshops on one fictional bank's end-of-day pipeline. Each maps the open-source tool to its counterpart on a Cloudera/Hadoop estate.

WorkshopSituationCloudera/Hadoop counterpart
1 · Postgres, DuckDBUPI settlement does not tie to the ledgerCore banking replica; Impala or Hive over HDFS/Ozone
2 · KafkaPost every transaction once, through repeats, crashes and month-end volumeKafka (Cloudera Streams Messaging)
3 · AirflowBackfill a broken week so each night is published onceOozie; Airflow in Cloudera Data Engineering
4 · Iceberg In preparationRestate the March book after a late correctionIceberg tables in CDP
5 · dbt Core In preparationOne definition of CASA ratio across fourteen reportsHive and Impala SQL jobs; dbt-hive and dbt-impala adapters
6 · Spark In preparationThe EOD batch slows because one corporate account fills one partitionSpark on CDP, Cloudera Data Engineering
7 · Metabase In preparationThe MD's morning dashboard, built on reconciled numbers onlyCloudera Data Visualization, Hue
8 · Capstone In preparationRun the whole end-of-day pipeline yourselfDocker on your laptop

Harbour Bank, its accounts and every figure here are fictional. The SQL, the controls and the failure modes are real. Postgres runs through PGlite and DuckDB through DuckDB-WASM, inside your browser. Your progress is kept in this browser only.