Live data from Hacker News

DuckDB – An embeddable SQL database like SQLite, but supports Postgres features

duckdb.org

61–70 of 167 posts

Re: DuckDB – An embeddable SQL database like SQLite, but supports Postgres features

#63

Earlier quoted context omitted.

One of the authors here - portability of the storage is indeed one of our goals. We test that the same file can be loaded everywhere on different systems, including between ARM and x86. I should mention the storage is still very much a work-in-progress. We are actively working on redesigning the storage to add compression and other extra features, meaning the storage format can change and be incompatible between diff…

Thanks for the confirmation on portability, I didn't see Go support in the home page; Is there an official Go driver support planned as well?

And Dart bindings? That could be really interesting for Flutter developers.

Re: DuckDB – An embeddable SQL database like SQLite, but supports Postgres features

#64
The performance of DuckDB's predecessor, MonetDBLite, was/is stellar. DuckDB, when I tried in 6 months ago, was a bit behind in terms of csv parsing or aggregation by groups and didn't seem much faster than regular sqlite so I didn't really jump at it. Does anyone here know if the performance improved since then and how it compares to MonetDBLite?

Re: DuckDB – An embeddable SQL database like SQLite, but supports Postgres features

#66
post #51

Earlier quoted context omitted.

I would just create a per-test-file database (and delete it the next time the test runs). The overhead is very small (compared to booting Postgres) and it works exactly like production because it is exactly production. In general, I am not comfortable using an "almost equivalent" database for tests. Every database engine has its quirks, and if you don't know what they are, your program that passes its tests only "alm…

And if you need to run expensive migrations, use a template database. https://www.postgresql.org/docs/current/manage-ag-templatedb...

While PostgreSQL templates allow to scaffold new databases (one per test-spec) quite fast, it's even faster to have a warmed up pool of databases ready: https://github.com/allaboutapps/integresql#background

Disclaimer: author.

Re: DuckDB – An embeddable SQL database like SQLite, but supports Postgres features

#67

Earlier quoted context omitted.

And MonetDB took some inspiration back from DuckDB to develop an embedded version also: https://github.com/MonetDBSolutions/MonetDBe-Python/ Disclaimer: i'm working on this.

Could you elaborate on some of the similarities and differences between DuckDB and MonetDB?

Disclaimer: i am working on MonetDB and I established the CWI database architectures group

DuckDB is designed as an experimental system after heavy exposure to the technniques deployed in MonetDB (open-source), Hyper, and Vectorwise.

The properties of the embedded version of MonetDB can be found here https://monetdbe.readthedocs.io/en/latest/introduction.html#

Some difference between MonetDB and DuckDB can be found here https://monetdbe.readthedocs.io/en/latest/migrations.html

and the blogpost mentioned above is covered in https://twitter.com/MonetDB/status/1282412295235280901?s=20

Re: DuckDB – An embeddable SQL database like SQLite, but supports Postgres features

#68
post #22

I spent a while looking at this today. It's really interesting. It's not based on SQLite at all (except for borrowing the SQLite shell implementation) but it looks very much like SQLite, in particular: - It's designed to work as an embedded library, eliminating the network overhead you usually get when talking to a database - Each database is a single file on disk - It ships as an "amalgamation" build - a single gian…

[deleted]

Re: DuckDB – An embeddable SQL database like SQLite, but supports Postgres features

#69

Earlier quoted context omitted.

One of the authors here - portability of the storage is indeed one of our goals. We test that the same file can be loaded everywhere on different systems, including between ARM and x86. I should mention the storage is still very much a work-in-progress. We are actively working on redesigning the storage to add compression and other extra features, meaning the storage format can change and be incompatible between diff…

Couldn't you have used an already existing format for storage, e.g. Apache ORC?

Another DuckDB developer here, we support reading table data from Parquet files directly.

Re: DuckDB – An embeddable SQL database like SQLite, but supports Postgres features

#70

The performance of DuckDB's predecessor, MonetDBLite, was/is stellar. DuckDB, when I tried in 6 months ago, was a bit behind in terms of csv parsing or aggregation by groups and didn't seem much faster than regular sqlite so I didn't really jump at it. Does anyone here know if the performance improved since then and how it compares to MonetDBLite?

We are currently actively working on performance optimization, and have recently finished implementing parallelization. Expect more performance improvements soon :)
Post reply on HN