~/talk

Changing Data With Confidence using DuckDB

Talkat PyData Global 2024 · 2024-12-03..12-05· [databases, developer-experience]
slides:none on file

DuckDB provides ACID all-or-nothing semantics so updates either fully commit or automatically roll back on error or crash; a demo shows a failed insert undone and a crash leaving only fully committed rows durable. It runs in-process with Python so in-process pandas zero-copy reads and Arrow interchange avoid socket overhead. Installer is ~15 MB pip package; it reads/writes Parquet/CSV, talks to S3/Postgres, and its MVCC concurrency lets concurrent dashboard reads and background writes proceed with low contention. Benchmarks show fast CSV load (≈1 GB test) and cheap updates even at 1–100% affected rows.

AI-written summary · about

  1. 0:00Welcome to DuckDB
  2. 1:08DuckDB's mission
  3. 2:56DuckDB features
  4. 4:00Batteries-included design
  5. 5:26Performance and vectorized engine
  6. 6:53Licensing and funding
  7. 7:41Python integration
  8. 9:05Data change problems in Python
  9. 12:14ACID properties
  10. 13:38Atomicity in DuckDB
  11. 15:23Atomicity in analytics
  12. 17:11Consistency constraints
  13. 18:36Isolation and concurrency
  14. 19:39Durability and crash safety
  15. 21:49Performance myths
  16. 22:30Reading performance
  17. 23:35Update performance
  18. 25:03Summary
  19. 25:23Q&A on AI/ML workflows
  20. 27:14Q&A on testing
  21. 29:44Closing
~/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.