Skip to content

mariadb-duckdb: switch to Parquet ingestion, remove PRIMARY KEY, add 2026-07-13 results#986

Open
mariadb-AlekseiBukhalov wants to merge 1 commit into
ClickHouse:mainfrom
mariadb-AlekseiBukhalov:update-mariadb-duckdb-no-pk
Open

mariadb-duckdb: switch to Parquet ingestion, remove PRIMARY KEY, add 2026-07-13 results#986
mariadb-AlekseiBukhalov wants to merge 1 commit into
ClickHouse:mainfrom
mariadb-AlekseiBukhalov:update-mariadb-duckdb-no-pk

Conversation

@mariadb-AlekseiBukhalov

@mariadb-AlekseiBukhalov mariadb-AlekseiBukhalov commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

MariaDB with DuckDB storage engine (ha_duckdb), CI build 70621.

Changes:

  • Remove PRIMARY KEY → no ART index overhead on load
  • Switch dataset ingestion from TSV (COPY FROM) to Parquet (INSERT via read_parquet())
  • start/stop: use mariadbd-safe / mariadb-admin instead of systemctl
  • start: cap duckdb_max_threads=nproc/2 on machines with >32 logical CPUs (optimal at physical core count; empirically verified 16→32→40→48→64→96 threads on c6a.metal)

Results — 2026-07-13, CI build 70621, no PRIMARY KEY:

Machine vCPU Load Data size Sequential hot total Concurrent QPS Error ratio
c6a.4xlarge 16 100 s 20.5 GB ~24 s 1.530 0.000
c6a.metal 192 125 s 20.6 GB ~5 s 13.947 0.000

Source: https://github.com/MariaDB/server/tree/11.4/storage/duckdb

@mariadb-AlekseiBukhalov mariadb-AlekseiBukhalov force-pushed the update-mariadb-duckdb-no-pk branch from 08c00e3 to 11d972a Compare July 13, 2026 13:47
@mariadb-AlekseiBukhalov mariadb-AlekseiBukhalov marked this pull request as draft July 13, 2026 14:22
… results

- Switch dataset ingestion from TSV to Parquet via run_in_duckdb/read_parquet
- Remove PRIMARY KEY → no ART index overhead on load
- start/stop: use mariadbd-safe / mariadb-admin instead of systemctl
- start: cap duckdb_max_threads=nproc/2 on machines with >32 logical CPUs
  (empirically optimal at physical core count; HT siblings add overhead)

Results (CI build 70621, no PRIMARY KEY):

  c6a.4xlarge (16 vCPU):  load=100 s, concurrent QPS=1.530
  c6a.metal  (192 vCPU):  load=125 s, concurrent QPS=13.947
@mariadb-AlekseiBukhalov mariadb-AlekseiBukhalov force-pushed the update-mariadb-duckdb-no-pk branch from 11d972a to c24fc25 Compare July 13, 2026 18:24
@mariadb-AlekseiBukhalov mariadb-AlekseiBukhalov marked this pull request as ready for review July 13, 2026 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant