We tested this out extensively. DuckDB + Nvme kicks ass, but if you ingesting and analytzing near real-time quotes/trades, DuckDB doesn't handle well because DuckDB can only support one reader and one writer in read-write mode.
Ok so you have multiple writers in write-only mode and then you switch to read-mode if you need to read? How would that work e.g in an IoT ingest system with lots of telemetry coming in.
It doesn't. That's the issue. DuckDB for us is a pure read-only service pipe. We need other tools to ingest and write to parquet, which has its own limitation.
SQLite does a great job to support single writer and multiple readers. That's what we use for aggregation right now. DuckDB is purely post analytics.