Member-only story
DuckDB 2.0 Broke My Mental Model of DuckDB
DuckDB became popular by running right inside your application. Version 2.0 reaches beyond that model — and brings Python changes you should check before upgrading.
DuckDB became popular partly because you didn’t need a database server.
Install the Python package, open a notebook or script, point DuckDB at a few Parquet files, and start querying. No separate database service to deploy. No network connection between your Python code and the query engine.
DuckDB simply runs inside your application.
That model isn’t going away with DuckDB 2.0.
But it is no longer the whole story.
A DuckDB instance can now serve data and computation to another DuckDB instance over HTTP. And beyond that growing server story, DuckDB 2.0 brings asynchronous I/O, deeper support for semi-structured data, a new SQL parser, and several Python API changes.
There is one important catch: the server protocol is still beta.
So no, this isn’t the moment to replace PostgreSQL with DuckDB everywhere.
But DuckDB is clearly growing beyond the boundaries that originally defined it.
If you only want to know whether you should upgrade, scroll down to What to do now.










