Wooble
Back to Rajkumar's profile
Verified on Wooble

IPL Crunch '26: End-to-End Sports Telemetry Pipeline & Match-Winning Insights Engine

Processed 293,764 nested JSON ball-telemetry data points via a custom Python pipeline to automate multi-sheet executive dashboards revealing T20 match-winning d

Rajkumar AhirwarIPL Crunch '26: End-to-End Sports Telemetry Pipeline & Match-Winning Insights Engine

293K+

Telemetry points parsed

100%

Pipeline automation rate

0

ProducData loss on nesttion-ready assets

Overview

Raw IPL tracking data from over 1,200 matches is locked in deeply nested JSON files. For sports analysts, this creates a major bottleneck: standard tools drop crucial metadata or crash entirely due to inconsistent data formats across seasons. I needed to bridge this gap by building an automated Python pipeline. The goal was to clean and flatten 293,764 individual ball deliveries with zero data loss, fix formatting shifts between seasons, and instantly generate executive-ready dashboards that debunk common T20 myths for team strategists. Process I started by trying standard Pandas JSON flatteners, but they crashed or dropped the top-level match metadata entirely because the files were too deeply nested. Realizing a generic approach wouldn't work, I built a custom two-stage Python parsing loop. Stage one grabs the structural match details; stage two maps that down to all 293K individual ball-delivery rows, ensuring zero data loss. To handle variable names shifting across seasons (like "striker" becoming "batter"), I integrated a dynamic mapping layer instead of writing rigid, brittle code. Finally, I grouped the data into explicit game phases using Pandas. Instead of manually building charts, I automated everything through code to instantly export styled, executive-ready Excel ledgers. Results The custom Python ETL pipeline successfully processed 293,764 nested data points across 1,200+ match files with 100% automation and zero data loss. It completely replaced manual report compilation by instantly generating three presentation-ready assets (2 analytical trend charts and a multi-sheet structured Excel ledger). Next time, I would scale this by migrating the local script to an AWS Lambda function triggered by an S3 bucket upload, and use Apache Spark instead of Pandas to handle live, real-time match streams instead of static batch files. Reflection While the local Python pipeline works perfectly for historical files, it isn't built for a live production environment. Next time, I would move the script into the cloud by hosting the ETL code on AWS Lambda, triggered instantly whenever new telemetry is uploaded to an S3 bucket. I'd also swap Pandas for Apache Spark to handle real-time match streaming streams smoothly during live games. Finally, instead of static Excel files, I would wire the clean data core into a live Tableau or PowerBI dashboard for real-time strategy tracking.

Links & files

Artifacts

5

Gallery

7