~/talk

Adapting from Spark to Dask: what to expect

Talkat PyCon 2018 · on Friday, 2018-05-11· [python, databases]
slides:none on file

Benchmarks show concrete wins: on a laptop 100M rows runs ~3 minutes on Spark versus ~40 seconds with Dask, and 1B rows drops from ~45 minutes to ~16 minutes; on a small EMR cluster the 1B job goes from ~12 minutes (Spark) to ~9–11 minutes (Dask) depending on worker placement. Custom aggregation requires a Scala UDAF for Spark but a Python chunk/aggregate pair for Dask; output JSON writing needs a workaround in Dask; deployment shifts from YARN/bootstrap scripts to Kubernetes and Docker. Dask gives pandas-like API and no Java stack traces, with caveats around complex nested Parquet, limited built-in aggregations, and evolving tooling.

AI-written summary · about

  1. 0:00Intro
  2. 1:15How does this make you feel?
  3. 2:32What is Dask?
  4. 4:22Input Parquet record
  5. 5:03Aggregated JSON record
  6. 6:06Input data structure
  7. 8:20Aggregate with Spark (SQL)
  8. 8:47Spark needs a custom aggregation
  9. 9:30Aggregate with Dask
  10. 10:21Dask needs two custom aggregations
  11. 11:18At this point...
  12. 12:02Transformation
  13. 12:19Transform with Spark
  14. 13:05Transform with Dask
  15. 13:15Transform one record with Dask
  16. 13:46Write JSON with Dask
  17. 15:23Benchmarking setup
  18. 16:06Performance (YARN)
  19. 17:27Cluster deployment with Spark (AWS)
  20. 18:22Cluster deployment with Dask (Kubernetes)
  21. 19:52Speaking of promises
  22. 20:59The bad
  23. 23:08The full code
  24. 23:25Questions?
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.