向东
网易杭州研究院架构师
向东目前担任网易杭州研究院架构师,有10年的存储系统开发经验,专注于对象存储/块存储/视频云等方向,熟悉分布式存储系统的架构与设计。对于分布式系统的一致性协议、性能瓶颈分析与优化有深入的理解。目前主要参与开源分布式存储CURVE(opencurve.io)项目的相关工作。
演讲主题
Curve分布式存储架构与设计
在 CURVE 的选型初期由于 CEPH 的代码量大,框架与架构复杂以及性能方面也不太符合应 用的需求导致我们选择自行研发 CURVE 分布式存储系统,CURVE 是一个分布式的存储系统, 它包含两部分 CurveBS 分布式块存储系统和 CurveFS 分布式文件存储系统,目前 CurveBS 已经在公司内部广泛应用,CurveFS 在开发演进当中。 CurveBS 使用 RAFT 协议来维持一致性,数据和副本以 copyset 为单位来分布在不同的存储 服务器上,并由元数据来集中管理数据分布。CurveBS 采用了 ChunkFilePool,DataStrip,改 进的 RAFT 协议来实现高性能,在性能/易运维方面相对 ceph 而言有优势。 CurveFS 开发目标是为了支持底层多种存储设备(块设备,S3 存储等),目前在开发中,内部版本大概在 11 月份可以完成。目前 Curve 系统在网易内部大量应用于生产环境。未来我们会继续在性能/云原生/CurveFS 来进行迭代,不停提升 CURVE 的性能和对云原生的支持。 演讲提纲 1. CURVE 简介 a) CURVE 是什么? i. CurveBS 分布式块存储 ii. CurveFS 分布式文件存储 b) 为什么不选择 CEPH i. Ceph 的劣势(代码量大/结构复杂)完全掌握比较难,不可控因素多 ii. Ceph 使用与运维的劣势 c) CURVE 目前进展 2. CurveBS a) CurveBS 的框架 b) CurveBS 的特点/设计目标 i. 高性能 1. Chunk File Pool 降低元数据开销 2. DataStrip 提升吞吐率 3. 无锁队列设计 4. 零拷贝 5. RAFT 并行提交 ii. 易运维与 Ceph 的对比 iii. 云原生进展及目标 c) 与 Ceph 的性能对比 3. CurveFS 设计目标 a) CurveFS 框架底层支持多底层设备(S3/CurveBS/块设备) b) POSIX 兼容 c) 目前进展 4. 目前在网易的应用 5. Roadmap a) 性能 i. Multi RAFT I/O 并发 ii. 进一步提升 zero copy 程度 iii. 降低写放大 b) 云原生 c) CurveFS i. Cache 模块 ii. 云原生支持