DuckCon #7

Effortlessly modernize your legacy

Nicolas Renkamp · DuckCon #7
7
sections
8
slides
DuckDBPySparkSQLFrameSQLGlotData MigrationEnterprise
Watch on YouTube ↗
01 / The Enterprise Pirate

Bringing DuckDB into a large enterprise

frame_01m00s.png
frame_01m00s.png
02 / Do We Even Need Distribution?

The legacy platform and the single-node question

frame_03m09s.png
frame_03m09s.png
More detail

The two challenges to solve: (1) run DuckDB instead of Apache Spark, and (2) convert the existing PySpark code to SQL that DuckDB can execute.

03 / Narrowing the Attack Surface

Simplified infra and two focus areas

frame_04m33s.png
frame_04m33s.png
More detail

The metrics panel showed one job class with ~70 days aggregate runtime, 8h duration, 5.7 TB disk spillage and 5.1 TB shuffle write across all tasks, despite modest input and output sizes.

04 / SQLFrame + SQLGlot

Translating PySpark to DuckDB SQL

frame_05m57s.png
frame_05m57s.png
frame_06m54s.png
frame_06m54s.png
05 / The Blueprint

Separation of concerns between platform and data teams

frame_07m21s.png
frame_07m21s.png
06 / Production Impact

Measured results on real workloads

frame_09m15s.png
frame_09m15s.png
07 / Take the DuckDB Pill

Why it worked and what to take home

frame_11m33s.png
frame_11m33s.png

Key Takeaways