You could store your data in a SQLite database, but that's not really interoperable in the way a bunch of Parquet files are. Source: tried it.
I know this because I needed this functionality in Ada code, which links statically with SQLite, and I didn't want to also link with PCRE library just to get regexp(), especially since GNATCOLL already, sort of has regexp... except it doesn't have the "fancy" features, s.a. lookaheads / lookbehinds / Unicode support etc.
So, a table that uses regexp() in its constraint definition isn't portable. But, if you only use the table data without the schema you lose a lot of valuable information...
----
Also, come to think about it: unlike server-client databases (eg. MySQL, PostgreSQL etc) SQLite doesn't have a wire-transfer format. Its interface returns values in the way C language understands them. The on-disk binary format isn't at all designed for transfer because it's optimized for access efficiency. This, beside other things, results in SQLite database file typically having tons of empty space, it doesn't use efficient (compressed) value representation etc.
So, trying to use SQLite format for transferring data isn't going to be a good arrangement. It's going to be wasteful and slow.
These other formats easily support using clusters to process your data.
I’m glad it’s had an uptick in interest recently but I haven’t yet seen it mentioned for analytics yet.
I assume it’s row rather than column oriented?
But it doesn't rely on the JVM and a typical JVM ecosystem. It is a big benefit for some use-cases, like dealing with numerical data on the edge.
It seems to be a bit early to rely on it to store data in an object store, but I will do some tests to compare with SQLite:
> The DuckDB internal storage format is currently in flux, and is expected to change with each release until we reach v1.0.0.
Iceberg and Sqlite might be interesting if you wanted to colocate two tables in the same file, for example. A smart enough data access layer with an appropriate execution engine could possibly see the data for both.