Built a synthetic banking dataset generator to practice data engineering and data quality work at a realistic scale rather than on toy data. The generator produces around 45 million rows across 13 related tables: customers with KYC and risk segmentation, accounts, credit cards, loans, merchants, and multiple years of account and card transactions with realistic temporal patterns and fraud flags mixed in.
Generation is split across Pandas for the smaller dimension tables and PySpark for the high-volume transaction data, with a defined schema and a loading pipeline into PostgreSQL. A data quality verification step checks the loaded data before it's considered usable, the same discipline I'd apply to a real production dataset, just applied here to data I generated myself.
I later built an analytics application on top of this dataset. See that project here.
Demo project built to showcase the approach, using synthetic data rather than a live production dataset.
Comments
Loading comments...