现代事务型键值/行存储库。
Sophia 采用先进的事务处理 [MVCC](http://en.wikipedia.org/wiki/Multiversion_concurrency_control) 键值/行存储库。 Sophia 是 RAM 磁盘混合存储,旨在在不降低性能的情况下提供最佳的磁盘性能。 它保证了读取、写入和范围扫描操作的最坏情况复杂度为 *O(1)*。 **功能** * 完全符合 ACID 规范 * MVCC 引擎 * 乐观的、非阻塞的并发机制,支持 N 个写入者和 M 个读取者 * 纯追加模式 * 独特的数据存储架构 * 速度快: 对读取、写入和范围扫描操作而言,最差的时间复杂度为 O(1) * 多线程压缩 * 支持多个数据库(共享单个前置日志) * 多语句和单语句事务(跨数据库) * 序列化快照隔离(SSI) * 优化的存储架构(数值类型具有零成本存储) * 可用于构建二级索引 * Upsert(快速的只写"更新或插入"操作) * 一致性游标 * 前缀搜索 * 自动垃圾收集 * 自动键过期 * 热备份 * 压缩(没有固定大小的块,不存在空洞,支持: lz4、zstd) * 直接 IO 支持 * 使用 mmap 或 pread 访问方法 * 简单易用(最小化的 API、友好于 FFI、合并) * 实现为一个小型 *C 编写* 库,不依赖任何第三方库 * 仔细测试 * 开源 软件,BSD 许可证 --- 项目已经不再开发,但从现代存储引擎设计演进和架构选择的角度来看,它仍然很有意思。[Amelia](https://amelielabs.io) 和 [Monotone](https://monotone.studio) 的存储引擎都受到 Sophia 的深刻启发。 这些区域具有与 B-Tree 页相同的语义含义,但设计方式不同。它们没有树结构或任何内部页与页之间的关系,因此没有元数据开销(特别是只能追加的 B-Tree)。
暂无开放 Issues,或尚未同步最近议题。