Skip to content

SnapDB v0.3.2 — Bit-Packed Booleans & Package Reorganization

Choose a tag to compare

@hussain-alsaibai hussain-alsaibai released this 28 Jun 04:43
· 30 commits to main since this release

SnapDB v0.3.2 — Bit-Packed Booleans & Package Reorganization

What's New

🚀 Performance

  • Bit-packed boolean storage — Python int bitmask replaces array.array('B'), delivering ~8× memory reduction for boolean columns
  • Precompiled struct format — single struct.pack/unpack per row (1.6–1.9× faster encode/decode)

📦 Packaging

  • Proper Python packagesnapdb/ directory with __init__.py
  • pyproject.toml — PEP 621 compliant packaging config
  • Test suite — moved to tests/ directory
  • Benchmarks — moved to benchmarks/ directory
  • Modular architecturecore.py, columnar.py, metrics.py, index.py, query.py, wal.py, document_store.py

📊 Benchmarks

  • Comprehensive 5-engine comparison: SnapDB vs DuckDB vs SQLite vs Pure Dict
  • DuckDB DataFrame batch insert added
  • Bit-packed boolean benchmarks included

✅ Correctness

  • 47/47 tests passing
  • All v0.2.0 and v0.3.x features verified

Full Changelog

  • 7bc35da v0.3.2: Bit-packed booleans, package reorganization, pyproject.toml
  • 12881c0 v0.3.2: Precompiled struct format, hash index, lookup optimization
  • b708e9c benchmark: Add DuckDB comparison, comprehensive 5-engine suite
  • 19a605b v0.3.1: Batch insert, optimized columnar, comprehensive benchmarks
  • c30d757 v0.3.0: Columnar engine, metrics, CDC

Roadmap

See open issues for upcoming features.