h2database / h2database/h2database

H2 Much Faster than DuckDB for small inserts / selected

Open
#4,055 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
4.6k
Forks
1.3k
Avg merge
1d 2h
Merged PRs (30d)
9

Description

Hi,

Today I've been running benchmarks and on small data sets H2 is inserting then selecting a subset 14x quicker than DuckDB.

I've got a data engine written in java that uses H2 as a backend. It allows performing selects against streaming data and other databases. So my use case is unique in that I create lots of small tables 100s of time per second, query them, then drop the table. I wanted to look at using DuckDB as the parquet querying is really useful to my users but H2 is so much faster I wouldn't change.

To be fair to DuckDB they are targeted at much larger data, are having to cross the java memory barrier and I wasn't using their custom appender.

Anyway just wanted to share the news and say Thanks.
👍

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The report contains benchmark observations but names no H2 source files, tests, or reproducible failing case. Start by reviewing the reported small-table insert/select workload and the comparison with DuckDB; done is not defined because the issue requests no specific change.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
databases
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
10/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.