Ceph开发每周谈Vol 21 | ZetaScale | CMP/WriteSame

2016年05月 · 麦子迈

这是Ceph开发每周谈的第二十一篇文章,记录从16年4月25号到16年5月1号的社区开发情况。笔者从前年开始做Ceph的技术模块分析到今年中告一段落,想必有挺多人期待下一篇Ceph技术分析。考虑到Ceph的发展已经从前年的一穷二白到现在的如火如荼,但对于社区的方向和实况仍有所脱节,笔者考虑开始Ceph开发每周谈这个系列。每篇文章都会综述上周技术更新,围绕几个热点进行深度解析,如果正好有产业届新闻的话就进行解读,最后有读者反馈问题的话并且值得一聊的话,就附上答疑部分。

上周综述

ZetaScale

vol21

ZetaScale 是 SanDisk 为高速 Flash 设备研发的 KV 库,能够充分并行化并且利用好物理设备的特性。在上次的 Linux Vault 上 SanDisk 介绍了他们利用 ZetaScale 结合 BlueStore 来替换 RocksDB 的方案。通过展示的性能报告来看,能够至少提高 50% 的基准性能。

实际上,为了避免传统的 Kernel IO 栈,高速设备厂商都在试图利用新的 IO 路径来做试验,主要是三条线:

  1. Kernel: 自身的性能提高,并行化如 Multi-Queue,IO Polling
  2. SPDK: 跳出内核的 IO 框架
  3. Customize: 针对自身设备定制

CMP/WriteSame

为了支持 VMWare VASA API 和 SCSI 命令,Rados 层新增两个 OP 分别是 Compare 和 Write Same,前者用来实现原子比较和写入,后者用一条命令来实现部分区域的写入,主要是避免网络传输。