📚 Bucket DB

Changelog

All notable changes to this project will be documented in this file.

v0.2.0 (Phase 1-4 Architecture Update)

Features

  • Immutable Block Storage: Transitioned to an entirely immutable physical data structure mapped over Object Storage (S3, Memory, File).
  • Write-Forward Service & Caching: Added an in-memory batched log overlay (committed/ prefix) to support Read-After-Write consistency and background storage merging.
  • B+Tree Indexes: Replaced simple mappings with robust Copy-on-Write (CoW) B+Trees for fast exact-match lookups.
  • Query Optimizer: Added background reservoir sampling to support condition selectivity scoring and execution plan generation with a Mock Query Executor.
  • Timesharing Concurrency: Implemented a MISC clock-driven timesharing mechanism allowing decentralized, lockless writes across multiple concurrent nodes.
  • Managed Blobs: Added native support for binary Blob interception via the db.Blob() wrapper, asynchronous uploading, and tombstone-based Garbage Collection.
  • Snapshots: Introduced zero-cost time-travel snapshots based on Block 0 versioning and time-range bounded garbage collection logic.
  • Blue/Green Migrations: Background block rewrites for safe, zero-downtime schema migrations via the Storage-Level Migration Daemon.

Breaking Changes

  • Replaced the legacy monolithic createDatabase() instantiation logic with a modular, dependency-injected BucketDb() factory.
  • Schemas are now strictly enforced and require a discrete registerSchema() step before any table can be queried or written to.
  • Writes must now occur through the db.batch() API instead of direct table inserts.

v0.1.0 Alpha

Initial Alpha Release