Hasty Briefsbeta

Show HN: TidesDB – Fast, transactional storage optimized for flash and RAM

13 days ago
  • #key-value-store
  • #LSM-tree
  • #database-library
  • TidesDB is a fast and efficient key-value storage engine library written in C, based on LSM-tree.
  • Supports ACID transactions with read committed isolation and serialized writers per column family.
  • Non-blocking operations: writers don't block readers, and readers don't block other readers.
  • Isolated key-value stores with individual configurations for each column family.
  • Bidirectional iterators with heap-based merge-sort and efficient seek operations (O(log n)).
  • Durability through WAL (write ahead log) and automatic recovery on startup.
  • Optional features: background compaction, bloom filters, compression (Snappy, LZ4, ZSTD), TTL, custom comparators.
  • Two sync modes: NONE (fastest) and FULL (most durable).
  • Per-column-family configuration for memtable size, compaction, compression, bloom filters, etc.
  • Clean C API with cross-platform support for Linux, macOS, and Windows.
  • Optional succinct trie block indexes for fast sstable lookups with reduced memory footprint.
  • Efficient deletion via tombstone markers and configurable LRU cache for open file handles.
  • Storage engine thread pools for background flush and compaction.
  • Licensed under Mozilla Public License Version 2.0, with dependencies under BSD and Apache 2.0 licenses.