SlideShare a Scribd company logo
1 of 20
Download to read offline
谢型果
新型高性能对象存储引擎——BlueStore
© ZTE Corporation. All rights reserved
2
目录
缘由01
目标02
途径03
架构04
实现细节05
总结与展望06
© ZTE Corporation. All rights reserved
3
1
缘由
Chapter
© ZTE Corporation. All rights reserved
4
FileStore
(1) 元数据瓶颈:数据和元数据分离不彻底
(2) IO 路径过长:强烈依赖本地文件系统;缺省 XFS 仍然过于重量级
(3) 目录层级复杂:针对 PG 中的对象进行顺序遍历非常困难
(4) 写放大严重:日志叠加日志,写性能受制约
(5) 流控不完整:IOPS 和带宽抖动
(6) 资源消耗大:频繁 syncfs 系统调用导致居高不下的 CPU 利用率
缘由
© ZTE Corporation. All rights reserved
5
2
目标
Chapter
© ZTE Corporation. All rights reserved
6
目标
(1) 性能提升: 2 倍写性能提升和至少同等读性能
(2) 新硬件支持:新设备支持(NVMe SSD、NVRAM)
(3) 新特性支持:新特性支持(数据校验、数据压缩)
© ZTE Corporation. All rights reserved
7
3
途径
Chapter
© ZTE Corporation. All rights reserved
8
途径
(1) 分离元数据:元数据全部使用数据库存储,并支持使用独立的块设备存储
(2) 缩短 IO 路径:绕过本地文件系统,直接接管裸设备
(3) 新的数据库引擎:RocksDB + BlueFS
(4) 新的块设备接口:NVMe SSD、NVRAM…
(5) 技术改造:新的磁盘数据结构、新的缓存技术、新的磁盘空间管理技术…
© ZTE Corporation. All rights reserved
9
4
架构
Chapter
© ZTE Corporation. All rights reserved
10
架构
© ZTE Corporation. All rights reserved
11
5
实现细节
Chapter
© ZTE Corporation. All rights reserved
12
磁盘数据结构
(1) PG
(2) 对象:稀疏段支持
(3) 全局命名空间:轻松搞定 PG 分裂
(4) 数据校验:静默数据错误抵御能力
(5) 数据压缩:有效提升空间利用率
(6) 数据共享:范围(轻量级)的克隆操作支持,EC 必须
© ZTE Corporation. All rights reserved
13
磁盘数据结构
© ZTE Corporation. All rights reserved
14
缓存管理
(1) LRU
(2) LFU
(3) ARC
(4) 2Q
© ZTE Corporation. All rights reserved
15
磁盘空间管理
(1) 段
(2) 位图
(3) 段 + 位图?
(4) 如何处理 PG 之间的并行分配?
© ZTE Corporation. All rights reserved
16
BlueFS
目的
完美适配 RocksDB
形态
简易用户态事务(日志)文件系统
特点
(1) 扁平目录
(2) 增量日志
(3) 支持数据和日志分开存储
(4) 支持 .sst 和 .wal 分开存储
© ZTE Corporation. All rights reserved
17
file1
directory2
(“/var/db”)
file2
file3
file_map
file1
directory3
(“/var/log/ceph”)
file2
file3
file_map
file1
directory1
(“/root”)
file2
file3
file_map
dir_map
BlueFS
© ZTE Corporation. All rights reserved
18
6
总结与展望
Chapter
© ZTE Corporation. All rights reserved
19
总结与展望
收益
(1) 基本实现 2 倍写性能提升
(2) 具备静默数据错误抵御能力(依赖数据校验)
(3) 新型块设备支持能力
TODO
(1) 随机性能仍然不够理想
(2) 对象级的压缩策略性价比太低(多副本模式下存在重复)
(3) 内存消耗巨大
(4) 与已有版本兼容性问题(潜在的升级风险)
谢谢!

More Related Content

What's hot

大规模数据处理
大规模数据处理大规模数据处理
大规模数据处理Kay Yan
 
Linux memory introduction
Linux memory introductionLinux memory introduction
Linux memory introduction静 丁
 
提案书_STC-DNAF_Infra提案_160315
提案书_STC-DNAF_Infra提案_160315提案书_STC-DNAF_Infra提案_160315
提案书_STC-DNAF_Infra提案_160315M.R Ashokkumarr
 
诗檀软件 Oracle数据块损坏知识
诗檀软件 Oracle数据块损坏知识诗檀软件 Oracle数据块损坏知识
诗檀软件 Oracle数据块损坏知识maclean liu
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践Wensong Zhang
 
了解集群
了解集群了解集群
了解集群Feng Yu
 
IoTDB OptimizeAndCaseStudy
IoTDB OptimizeAndCaseStudyIoTDB OptimizeAndCaseStudy
IoTDB OptimizeAndCaseStudyJialinQiao
 
利用新硬件提升数据库性能
利用新硬件提升数据库性能利用新硬件提升数据库性能
利用新硬件提升数据库性能Feng Yu
 

What's hot (10)

大规模数据处理
大规模数据处理大规模数据处理
大规模数据处理
 
Linux memory introduction
Linux memory introductionLinux memory introduction
Linux memory introduction
 
網路概論
網路概論網路概論
網路概論
 
提案书_STC-DNAF_Infra提案_160315
提案书_STC-DNAF_Infra提案_160315提案书_STC-DNAF_Infra提案_160315
提案书_STC-DNAF_Infra提案_160315
 
诗檀软件 Oracle数据块损坏知识
诗檀软件 Oracle数据块损坏知识诗檀软件 Oracle数据块损坏知识
诗檀软件 Oracle数据块损坏知识
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践
 
了解集群
了解集群了解集群
了解集群
 
IoTDB OptimizeAndCaseStudy
IoTDB OptimizeAndCaseStudyIoTDB OptimizeAndCaseStudy
IoTDB OptimizeAndCaseStudy
 
利用新硬件提升数据库性能
利用新硬件提升数据库性能利用新硬件提升数据库性能
利用新硬件提升数据库性能
 
IoTDB Ops
IoTDB OpsIoTDB Ops
IoTDB Ops
 

Similar to Ceph Day Beijing - BlueStore and Optimizations

Hadoop con 2015 hadoop enables enterprise data lake
Hadoop con 2015   hadoop enables enterprise data lakeHadoop con 2015   hadoop enables enterprise data lake
Hadoop con 2015 hadoop enables enterprise data lakeJames Chen
 
浅谈电商网站数据访问层(DAL)与 ORM 之适用性
浅谈电商网站数据访问层(DAL)与 ORM 之适用性浅谈电商网站数据访问层(DAL)与 ORM 之适用性
浅谈电商网站数据访问层(DAL)与 ORM 之适用性Xuefeng Zhang
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲84zhu
 
7 3常見儲存裝置管理範例
7 3常見儲存裝置管理範例7 3常見儲存裝置管理範例
7 3常見儲存裝置管理範例慧鈴 鍾
 
作業系統 7 3常見儲存裝置管理範例
作業系統 7 3常見儲存裝置管理範例作業系統 7 3常見儲存裝置管理範例
作業系統 7 3常見儲存裝置管理範例慧鈴 鍾
 
The Best Practice of Integrating Apache Flink with Apache Iceberg.pdf
The Best Practice of Integrating Apache Flink with Apache Iceberg.pdfThe Best Practice of Integrating Apache Flink with Apache Iceberg.pdf
The Best Practice of Integrating Apache Flink with Apache Iceberg.pdfZheng Hu
 
分布式爬虫
分布式爬虫分布式爬虫
分布式爬虫drewz lin
 
浅析分布式存储架构—设计自己的存储- 58同城徐振华
浅析分布式存储架构—设计自己的存储- 58同城徐振华浅析分布式存储架构—设计自己的存储- 58同城徐振华
浅析分布式存储架构—设计自己的存储- 58同城徐振华zhuozhe
 
Track1dongsiying4
Track1dongsiying4Track1dongsiying4
Track1dongsiying4drewz lin
 
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao ZhangBuilding the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao ZhangCeph Community
 
虎扑基础设施架构探讨
虎扑基础设施架构探讨虎扑基础设施架构探讨
虎扑基础设施架构探讨hoopchina
 
賽門鐵克 Storage Foundation 6.0 簡報
賽門鐵克 Storage Foundation 6.0 簡報賽門鐵克 Storage Foundation 6.0 簡報
賽門鐵克 Storage Foundation 6.0 簡報Wales Chen
 
大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011Yiwei Ma
 
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法Jazz Yao-Tsung Wang
 
百度分布式数据库 刘斌 Sacc2010
百度分布式数据库 刘斌 Sacc2010百度分布式数据库 刘斌 Sacc2010
百度分布式数据库 刘斌 Sacc2010Chuanying Du
 
大规模网站架构
大规模网站架构大规模网站架构
大规模网站架构drewz lin
 
Ceph in UnitedStack
Ceph in UnitedStackCeph in UnitedStack
Ceph in UnitedStackRongze Zhu
 
利用统一存储获得无与伦比的速度,简化系统,并节省更多
利用统一存储获得无与伦比的速度,简化系统,并节省更多利用统一存储获得无与伦比的速度,简化系统,并节省更多
利用统一存储获得无与伦比的速度,简化系统,并节省更多ITband
 

Similar to Ceph Day Beijing - BlueStore and Optimizations (20)

Hadoop con 2015 hadoop enables enterprise data lake
Hadoop con 2015   hadoop enables enterprise data lakeHadoop con 2015   hadoop enables enterprise data lake
Hadoop con 2015 hadoop enables enterprise data lake
 
浅谈电商网站数据访问层(DAL)与 ORM 之适用性
浅谈电商网站数据访问层(DAL)与 ORM 之适用性浅谈电商网站数据访问层(DAL)与 ORM 之适用性
浅谈电商网站数据访问层(DAL)与 ORM 之适用性
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲
 
7 3常見儲存裝置管理範例
7 3常見儲存裝置管理範例7 3常見儲存裝置管理範例
7 3常見儲存裝置管理範例
 
作業系統 7 3常見儲存裝置管理範例
作業系統 7 3常見儲存裝置管理範例作業系統 7 3常見儲存裝置管理範例
作業系統 7 3常見儲存裝置管理範例
 
The Best Practice of Integrating Apache Flink with Apache Iceberg.pdf
The Best Practice of Integrating Apache Flink with Apache Iceberg.pdfThe Best Practice of Integrating Apache Flink with Apache Iceberg.pdf
The Best Practice of Integrating Apache Flink with Apache Iceberg.pdf
 
分布式爬虫
分布式爬虫分布式爬虫
分布式爬虫
 
浅析分布式存储架构—设计自己的存储- 58同城徐振华
浅析分布式存储架构—设计自己的存储- 58同城徐振华浅析分布式存储架构—设计自己的存储- 58同城徐振华
浅析分布式存储架构—设计自己的存储- 58同城徐振华
 
File api
File apiFile api
File api
 
File api
File apiFile api
File api
 
Track1dongsiying4
Track1dongsiying4Track1dongsiying4
Track1dongsiying4
 
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao ZhangBuilding the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
 
虎扑基础设施架构探讨
虎扑基础设施架构探讨虎扑基础设施架构探讨
虎扑基础设施架构探讨
 
賽門鐵克 Storage Foundation 6.0 簡報
賽門鐵克 Storage Foundation 6.0 簡報賽門鐵克 Storage Foundation 6.0 簡報
賽門鐵克 Storage Foundation 6.0 簡報
 
大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011
 
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
 
百度分布式数据库 刘斌 Sacc2010
百度分布式数据库 刘斌 Sacc2010百度分布式数据库 刘斌 Sacc2010
百度分布式数据库 刘斌 Sacc2010
 
大规模网站架构
大规模网站架构大规模网站架构
大规模网站架构
 
Ceph in UnitedStack
Ceph in UnitedStackCeph in UnitedStack
Ceph in UnitedStack
 
利用统一存储获得无与伦比的速度,简化系统,并节省更多
利用统一存储获得无与伦比的速度,简化系统,并节省更多利用统一存储获得无与伦比的速度,简化系统,并节省更多
利用统一存储获得无与伦比的速度,简化系统,并节省更多
 

More from Danielle Womboldt

Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA ArchitectureCeph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA ArchitectureDanielle Womboldt
 
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...Danielle Womboldt
 
Ceph Day Beijing- Ceph Community Update
Ceph Day Beijing- Ceph Community UpdateCeph Day Beijing- Ceph Community Update
Ceph Day Beijing- Ceph Community UpdateDanielle Womboldt
 
Ceph Day Beijing - Storage Modernization with Intel and Ceph
Ceph Day Beijing - Storage Modernization with Intel and CephCeph Day Beijing - Storage Modernization with Intel and Ceph
Ceph Day Beijing - Storage Modernization with Intel and CephDanielle Womboldt
 
Ceph Day Beijing - Welcome to Beijing Ceph Day
Ceph Day Beijing - Welcome to Beijing Ceph DayCeph Day Beijing - Welcome to Beijing Ceph Day
Ceph Day Beijing - Welcome to Beijing Ceph DayDanielle Womboldt
 
Ceph Day Beijing - Leverage Ceph for SDS in China Mobile
Ceph Day Beijing - Leverage Ceph for SDS in China MobileCeph Day Beijing - Leverage Ceph for SDS in China Mobile
Ceph Day Beijing - Leverage Ceph for SDS in China MobileDanielle Womboldt
 
Ceph Day Beijing - Our journey to high performance large scale Ceph cluster a...
Ceph Day Beijing - Our journey to high performance large scale Ceph cluster a...Ceph Day Beijing - Our journey to high performance large scale Ceph cluster a...
Ceph Day Beijing - Our journey to high performance large scale Ceph cluster a...Danielle Womboldt
 
Ceph Day Beijing - Small Files & All Flash: Inspur's works on Ceph
Ceph Day Beijing - Small Files & All Flash:  Inspur's works on Ceph Ceph Day Beijing - Small Files & All Flash:  Inspur's works on Ceph
Ceph Day Beijing - Small Files & All Flash: Inspur's works on Ceph Danielle Womboldt
 
Ceph Day Beijing - SPDK for Ceph
Ceph Day Beijing - SPDK for CephCeph Day Beijing - SPDK for Ceph
Ceph Day Beijing - SPDK for CephDanielle Womboldt
 
Ceph Day Beijing - Ceph RDMA Update
Ceph Day Beijing - Ceph RDMA UpdateCeph Day Beijing - Ceph RDMA Update
Ceph Day Beijing - Ceph RDMA UpdateDanielle Womboldt
 

More from Danielle Womboldt (10)

Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA ArchitectureCeph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
 
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
 
Ceph Day Beijing- Ceph Community Update
Ceph Day Beijing- Ceph Community UpdateCeph Day Beijing- Ceph Community Update
Ceph Day Beijing- Ceph Community Update
 
Ceph Day Beijing - Storage Modernization with Intel and Ceph
Ceph Day Beijing - Storage Modernization with Intel and CephCeph Day Beijing - Storage Modernization with Intel and Ceph
Ceph Day Beijing - Storage Modernization with Intel and Ceph
 
Ceph Day Beijing - Welcome to Beijing Ceph Day
Ceph Day Beijing - Welcome to Beijing Ceph DayCeph Day Beijing - Welcome to Beijing Ceph Day
Ceph Day Beijing - Welcome to Beijing Ceph Day
 
Ceph Day Beijing - Leverage Ceph for SDS in China Mobile
Ceph Day Beijing - Leverage Ceph for SDS in China MobileCeph Day Beijing - Leverage Ceph for SDS in China Mobile
Ceph Day Beijing - Leverage Ceph for SDS in China Mobile
 
Ceph Day Beijing - Our journey to high performance large scale Ceph cluster a...
Ceph Day Beijing - Our journey to high performance large scale Ceph cluster a...Ceph Day Beijing - Our journey to high performance large scale Ceph cluster a...
Ceph Day Beijing - Our journey to high performance large scale Ceph cluster a...
 
Ceph Day Beijing - Small Files & All Flash: Inspur's works on Ceph
Ceph Day Beijing - Small Files & All Flash:  Inspur's works on Ceph Ceph Day Beijing - Small Files & All Flash:  Inspur's works on Ceph
Ceph Day Beijing - Small Files & All Flash: Inspur's works on Ceph
 
Ceph Day Beijing - SPDK for Ceph
Ceph Day Beijing - SPDK for CephCeph Day Beijing - SPDK for Ceph
Ceph Day Beijing - SPDK for Ceph
 
Ceph Day Beijing - Ceph RDMA Update
Ceph Day Beijing - Ceph RDMA UpdateCeph Day Beijing - Ceph RDMA Update
Ceph Day Beijing - Ceph RDMA Update
 

Ceph Day Beijing - BlueStore and Optimizations

  • 2. © ZTE Corporation. All rights reserved 2 目录 缘由01 目标02 途径03 架构04 实现细节05 总结与展望06
  • 3. © ZTE Corporation. All rights reserved 3 1 缘由 Chapter
  • 4. © ZTE Corporation. All rights reserved 4 FileStore (1) 元数据瓶颈:数据和元数据分离不彻底 (2) IO 路径过长:强烈依赖本地文件系统;缺省 XFS 仍然过于重量级 (3) 目录层级复杂:针对 PG 中的对象进行顺序遍历非常困难 (4) 写放大严重:日志叠加日志,写性能受制约 (5) 流控不完整:IOPS 和带宽抖动 (6) 资源消耗大:频繁 syncfs 系统调用导致居高不下的 CPU 利用率 缘由
  • 5. © ZTE Corporation. All rights reserved 5 2 目标 Chapter
  • 6. © ZTE Corporation. All rights reserved 6 目标 (1) 性能提升: 2 倍写性能提升和至少同等读性能 (2) 新硬件支持:新设备支持(NVMe SSD、NVRAM) (3) 新特性支持:新特性支持(数据校验、数据压缩)
  • 7. © ZTE Corporation. All rights reserved 7 3 途径 Chapter
  • 8. © ZTE Corporation. All rights reserved 8 途径 (1) 分离元数据:元数据全部使用数据库存储,并支持使用独立的块设备存储 (2) 缩短 IO 路径:绕过本地文件系统,直接接管裸设备 (3) 新的数据库引擎:RocksDB + BlueFS (4) 新的块设备接口:NVMe SSD、NVRAM… (5) 技术改造:新的磁盘数据结构、新的缓存技术、新的磁盘空间管理技术…
  • 9. © ZTE Corporation. All rights reserved 9 4 架构 Chapter
  • 10. © ZTE Corporation. All rights reserved 10 架构
  • 11. © ZTE Corporation. All rights reserved 11 5 实现细节 Chapter
  • 12. © ZTE Corporation. All rights reserved 12 磁盘数据结构 (1) PG (2) 对象:稀疏段支持 (3) 全局命名空间:轻松搞定 PG 分裂 (4) 数据校验:静默数据错误抵御能力 (5) 数据压缩:有效提升空间利用率 (6) 数据共享:范围(轻量级)的克隆操作支持,EC 必须
  • 13. © ZTE Corporation. All rights reserved 13 磁盘数据结构
  • 14. © ZTE Corporation. All rights reserved 14 缓存管理 (1) LRU (2) LFU (3) ARC (4) 2Q
  • 15. © ZTE Corporation. All rights reserved 15 磁盘空间管理 (1) 段 (2) 位图 (3) 段 + 位图? (4) 如何处理 PG 之间的并行分配?
  • 16. © ZTE Corporation. All rights reserved 16 BlueFS 目的 完美适配 RocksDB 形态 简易用户态事务(日志)文件系统 特点 (1) 扁平目录 (2) 增量日志 (3) 支持数据和日志分开存储 (4) 支持 .sst 和 .wal 分开存储
  • 17. © ZTE Corporation. All rights reserved 17 file1 directory2 (“/var/db”) file2 file3 file_map file1 directory3 (“/var/log/ceph”) file2 file3 file_map file1 directory1 (“/root”) file2 file3 file_map dir_map BlueFS
  • 18. © ZTE Corporation. All rights reserved 18 6 总结与展望 Chapter
  • 19. © ZTE Corporation. All rights reserved 19 总结与展望 收益 (1) 基本实现 2 倍写性能提升 (2) 具备静默数据错误抵御能力(依赖数据校验) (3) 新型块设备支持能力 TODO (1) 随机性能仍然不够理想 (2) 对象级的压缩策略性价比太低(多副本模式下存在重复) (3) 内存消耗巨大 (4) 与已有版本兼容性问题(潜在的升级风险)