正版资源自下而上存储全栈 (TiDB_RockDB_SPDK_fuse_ceph_NVMe)
这套资料的主题是「自下而上存储全栈」,名字里已经把技术栈摊开了:TiDB、RocksDB、SPDK、FUSE、Ceph、NVMe。它的价值不在于堆砌名词,而在于把一条从硬件到 SQL 层的完整链路串起来讲——从 NVMe 设备与用户态驱动,到内核文件系统与用户态文件系统,再到分布式块/对象存储,最后
支付成功后自动发货,可在「我的订单」查看网盘链接;链接失效可联系客服免费补链。
这套资料的主题是「自下而上存储全栈」,名字里已经把技术栈摊开了:TiDB、RocksDB、SPDK、FUSE、Ceph、NVMe。它的价值不在于堆砌名词,而在于把一条从硬件到 SQL 层的完整链路串起来讲——从 NVMe 设备与用户态驱动,到内核文件系统与用户态文件系统,再到分布式块/对象存储,最后落到单机存储引擎和分布式 SQL 层。对做存储、数据库内核、云原生基础设施的开发者来说,这种贯穿式材料比单点文档更难找。
这条链路为什么值得按顺序看一遍
多数人的知识是断层的:会用 TiDB,但说不清一个写入请求最终怎么落到盘上;调过 SPDK,但没想过上层的 LSM-Tree 压缩策略会怎样反过来放大写放大;搭过 Ceph,却对客户端侧的 FUSE 挂载路径和内核态路径的差异只有模糊印象。这门课的结构就是针对这种断层设计的。
自下而上的顺序是有意为之:先搞清楚 NVMe 协议、队列机制和 SPDK 的用户态轮询模型,理解「一次 IO 的真实成本」;再往上到 FUSE,看用户态文件系统如何用一次内核往返换取灵活性,代价是什么;接着是 Ceph 这类分布式存储,为什么它要自己做 CRUSH 而不依赖中心元数据;最后才进入 RocksDB 与 TiDB,看 LSM-Tree 的写路径、Compaction 策略,以及 TiKV 如何在多副本一致性之上把这些能力组合成分布式事务。
各模块的技术看点与可复用点
- SPDK 与 NVMe:重点不在跑分,而在理解轮询(polling)替代中断、无锁队列、大页内存这些设计取舍,以及它在什么负载下反而不划算。这套思路可以直接迁移到你自己的高性能 IO 组件里。
- FUSE:适合拿来对照内核文件系统做实现对比,明白 read/write/lookup 这些回调在用户态如何落地,以及元数据密集型场景下的延迟来源。
- Ceph:关注数据分布算法、副本与纠删码的取舍、PG 与 OSD 的映射关系,这些概念在你排查集群抖动或扩容不均时是必需的。
- RocksDB:MemTable、WAL、SST 分层、Compaction 策略,是理解一切基于 LSM-Tree 的数据库的公共底座。
- TiDB / TiKV:看它如何把 Range 分片、Raft 复制、MVCC 事务组装成一个可水平扩展的 SQL 层,重点在组件之间的边界与通信,而不是语法。
建议的对照实践方式
这类资料最容易犯的错误是「看完就完」。更有效的用法是边看边在本地或测试集群里复现关键路径:用 fio 配合 SPDK 观察不同队列深度下的 IOPS 与延迟曲线;把同一个负载分别走 FUSE 和内核路径做对比;在单机上部署一个最小 TiDB 集群,用慢查询日志和 TiKV 的监控指标反推请求经过了哪些层。每看完一个模块,问自己一句:这个组件向上暴露了什么接口,又向下依赖了什么假设——能把这两点说清楚,才算真正拆开了一层。
适合谁,以及一点提醒
如果你在做存储系统、数据库内核、云平台底层,或者需要为业务选型做技术判断,这份材料可以当作一条可对照的路线图。它不适合当作零基础入门课:涉及内核、分布式协议、C++ 用户态编程,需要读者有一定操作系统和数据库基础。另外,视频体例天然偏「讲原理+演示」,真正的工程细节(参数含义、版本差异、异常路径)还是要回到各项目的官方文档和源码里去核对。把它当成索引和地图,用动手实验去填充,收获会比单纯看视频大得多。
自下而上存储全栈 (TiDB_RockDB_SPDK_fuse_ceph_NVMe)
深入探索TiDB、RockDB等存储技术
编辑点评
全面解析自下而上存储全栈,涵盖TiDB、RockDB、SPDK、FUSE、Ceph等前沿技术,适合对存储系统架构有深入理解需求的学习者。
⭐ 编辑推荐
系统学习TiDB、RockDB等存储技术,掌握自下而上存储全栈架构。
✨ 课程亮点
课程目录
视频34 集
- 024.【KV项目-5】btreehashmapradixtreerbtree之间的选择_.mp4 [272.8 MB]
- 026.【KV项目-7】-为kv存储加上conf文件_.mp4 [232.4 MB]
- 023.【KV项目-4】pagechunk的get与put_.mp4 [161.7 MB]
- 020.【KV项目-1】KV存储拆解 Set,Get,Mod,Del_.mp4 [284.0 MB]
- 025.【KV项目-6】-slab分配slot与释放slot_.mp4 [192.4 MB]
- 022.【KV项目-3】kv service接口 set_get_modify_delete_.mp4 [192.7 MB]
- 019.【SPDK项目6】文件系统的性能测试(2)_.mp4 [195.2 MB]
- 021.【KV项目-2】bdev与blob对于kv存储的选择_.mp4 [264.3 MB]
- 017.【SPDK项目4】文件系统的posix api实现(2)_.mp4 [229.1 MB]
- 015.【SPDK项目2】SPDK的工作原理与文件系统架构分析(2)_.mp4 [173.7 MB]
- 016.【SPDK项目3】文件系统的posix api实现(1)_.mp4 [175.9 MB]
- 018.【SPDK项目5】文件系统的性能测试(1)_.mp4 [148.0 MB]
- 014.【SPDK项目1】 SPDK的工作原理与文件系统架构分析(1)_.mp4 [155.7 MB]
- 012.【fuse1】fuse协同事件 用户态文件系统(1)_.mp4 [203.1 MB]
- 013.【fuse2】fuse协同事件 用户态文件系统(2)_.mp4 [289.8 MB]
- 009.銆恑o_uring2銆戜笌epoll濯茬編鐨刬o_uring(2)_.mp4 [225.6 MB]
- 010.【io_uring3】io_uring的使用场景(1)_.mp4 [153.3 MB]
- 011.【io_uring4】 io_uring的使用场景(2)_.mp4 [262.4 MB]
- 029.【fastdfs2】FastDFS集群部署和同步机制分析_.mp4 [359.7 MB]
- 032.【fastdfs5】文件传输和接口设计_.mp4 [385.1 MB]
- 027.【KV项目-8】-kv存储测试用例与性能测试_.mp4 [190.2 MB]
- 038.【TiDB1】TiDB存储引擎的原理_.mp4 [237.8 MB]
- 031.【fastdfs4】高负载nginxfastcgi_.mp4 [381.9 MB]
- 028.【fastdfs1】fastdfs架构分析和配置_.mp4 [331.5 MB]
- 036.【ceph3】分布式ceph存储集群部署_.mp4 [165.1 MB]
- 033.【fastdfs6】 产品上云公网发布测试用例_.mp4 [342.3 MB]
- 034.【ceph1】 内核级支持的分布式存储ceph_.mp4 [309.2 MB]
- 030.【fastdfs3】 fastdfs存储原理_.mp4 [353.3 MB]
- 039.【TiDB2】TiDB集群方案与Replication原理_.mp4 [238.5 MB]
- 037.【RockDB】不一样的kv存储RocksDB的使用场景_.mp4 [262.3 MB]
- 035.【ceph2】 docker安装ceph分布式存储系统(高可用)_.mp4 [235.6 MB]
- 006.【zerofs5】mkfs.zvvfs实现partition layout的5步曲_.mp4 [185.5 MB]
- 004.【zerofs3】block_device对nvme的读写与sector大小代码实现_.mp4 [197.5 MB]
- 003.【zerofs2】nvme的lba与nblocks的重要性_.mp4 [151.1 MB]
- …(已达 35 条上限,后续省略)
适合人群
- 存储系统架构师
- 数据库工程师
- 系统运维人员
🎯 学习收获
- 理解TiDB存储引擎原理
- 掌握RockDB使用场景
- 学习SPDK文件系统性能测试
🎉 祝您学习愉快!




