【数据库研究前沿】持久内存退场之后:ZNS SSD 与下一代非易失内存
Intel Optane / 3D XPoint 产品线 EOL 之后,SOFORT、FPTree、RECIPE 等 PM 数据库的成果如何迁移?ZNS SSD 对 LSM-Tree 的意义、RocksDB 的 ZNS 适配、PMDK 兼容层的取舍,以及把 CXL memory 作为下一代非易失载体的可能性——本文给出一份面向工程师的'后 Optane 时代'清单。
发布来自土法炼钢兴趣小组的知识、笔记、进展和应用。主题包括数据结构和算法、编程语言、网络安全、密码学等。
共 7 篇文章 · 返回首页
Intel Optane / 3D XPoint 产品线 EOL 之后,SOFORT、FPTree、RECIPE 等 PM 数据库的成果如何迁移?ZNS SSD 对 LSM-Tree 的意义、RocksDB 的 ZNS 适配、PMDK 兼容层的取舍,以及把 CXL memory 作为下一代非易失载体的可能性——本文给出一份面向工程师的'后 Optane 时代'清单。
从 Column Family、Write Buffer、Block Cache、Compaction、Rate Limiter 到 Direct I/O 和监控,系统拆解 RocksDB 在生产环境中的关键配置与故障模式,并给出 SSD 场景下的配置模板和 db_bench 基准测试方法。
当我们提到"数据库"时,多数人首先想到的是 MySQL、PostgreSQL 这类以独立进程运行的数据库服务器。客户端通过网络协议连接到服务器,服务器管理存储、索引、事务和并发控制。然而,还有一类存储系统以库(Library)的形式直接链接到应用进程中,不需要独立的服务器进程,不需要网络通信,不需要序列化和反序列化——…
数据库存储引擎的核心之争——原地更新还是追加写入?B+tree 与 LSM-tree 代表了两种截然不同的设计哲学,理解它们的取舍,就是理解现代存储系统设计的根基。
Compaction 是 LSM-tree 的心脏,也是它最大的痛点。
从零理解 LSM-Tree 存储引擎的设计哲学:B-Tree 与 LSM-Tree 的本质差异,写放大/读放大/空间放大的三角权衡,以及 WAL、MemTable、SSTable、Compaction、Bloom Filter 各组件的角色与协作关系。从零写一个 LSM-Tree 存储引擎系列第 1 篇。
五篇长文,从 LSM-Tree 的设计哲学讲到完整 KV 引擎实现,最后用 Rust 重写并三方 benchmark 对比。每篇含完整 C 代码、架构图、数学推导。