HeliosDB-Full vs PostgreSQL 14 — Performance Comparison
Setup (internal tests, HeliosDB Full 7.2.0 vs PostgreSQL 14.20): HeliosDB Full as a compiled binary on port 5435; PostgreSQL in a Docker container on port 25432 Table: 1000 rows, 5 columns (INT, TEXT, TEXT, INT, TEXT) Protocol: PostgreSQL wire protocol (psycopg2)
Results
| Test | Queries | HeliosDB avg | PostgreSQL avg | Winner |
|---|---|---|---|---|
| Point Lookups | 2000 | 75us | 132us | HeliosDB 1.8x FASTER |
| Full Scan SELECT | 200 | 323us | 859us | HeliosDB 2.7x FASTER |
| Aggregates | 198 | 55us | 148us | HeliosDB 2.7x FASTER |
| Single-Row INSERT | 500 | 75us | 481us | HeliosDB 6.4x FASTER |
| UPDATE WHERE | 500 | 83us | 466us | HeliosDB 5.6x FASTER |
| DELETE WHERE | 200 | 70us | 450us | HeliosDB 6.5x FASTER |
| Mixed OLTP | 1000 | 82us | 271us | HeliosDB 3.3x FASTER |
What the Run Exercised
- Primary-key point lookups served from the in-memory primary-key index instead of a table scan
- Group-commit write-ahead log: batched WAL writes (26x faster internal writes in the same tests)
- SQL parse cache: parsed statements reused for repeated query patterns
- Lower SELECT overhead: fewer allocations per returned row
- Finer tracing spans: diagnostic visibility into row processing
Notes
- Both databases accessed via psycopg2 over TCP loopback (127.0.0.1)
- HeliosDB uses LSM-tree storage; PostgreSQL uses heap + B-tree indexes
- PostgreSQL has years of production optimization; HeliosDB is research-grade
- Network round-trip and psycopg2 overhead are included in both measurements
- Both tables have PRIMARY KEY on
id(equal conditions) - HeliosDB point lookups use the in-memory primary-key index (populated during INSERT)
- PostgreSQL uses B-tree index on PRIMARY KEY