失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 当OLTP数据库遇上分布式存储 我选择走一条难而正确的路

当OLTP数据库遇上分布式存储 我选择走一条难而正确的路

时间:2022-10-06 04:55:54

相关推荐

当OLTP数据库遇上分布式存储 我选择走一条难而正确的路

点击上方蓝字,关注我们!

分布式存储可扩展性强、灵活度高,如果能做到集中式存储的低时延,必定会成为主流的存储技术路线。

——黄岩

黄岩是云和恩墨分布式存储总架构师。十几年来,他在存储领域,尤其是NAS和备份中深入钻研,曾担任某NAS产品性能SE,负责产品性能调优工作。,该产品打破了SPESsfs性能测试世界纪录。

为何分布式存储如此受欢迎?

为什么它是未来存储的发展方向?

分布式存储可以用于OLTP数据库吗?

带着这些问题,笔者采访到黄岩老师,且听他细细道来……

尺有所短:

可扩展性差和云端不友好成为集中式存储的瓶颈

“,我进入了企业存储领域。那时候传统的集中式SAN存储(磁盘阵列或阵列)已经很成熟了。EMC、IBM、HDS都在销售相关产品。”黄岩回忆道,“NetApp的集中式NAS(文件服务器)产品也很受欢迎。但是随着业务的不断发展和数字化转型的推进,集中式存储的弊端越来越凸显。”

说起集中式存储的弊端,可扩展性差是绕不开的问题。一般来说,集中式存储的中低端产品可以支持两个控制器,高端产品最多支持32个控制器,面对更多的存储要求时,无法再进行有效扩展。因此,客户在购买集中式存储产品之前,必须根据对未来业务发展情况的预测确定存储性能和容量需求,从而决定自己所选存储产品的类型。

预测未来总是困难的。“预测不准确可能导致所选产品与业务发展不匹配的情况。”黄岩进一步解释道,“根据预测,企业选择了低端产品。但业务成长比预估快,存储性能或者容量无法拓展,限制了企业发展。客户直接选择高端产品,价格高昂不说,如果后期业务没有充分利用这些性能或容量资源,就会造成浪费。”

此外,在数字化转型的过程中,为了应对以“烟囱式架构”为主的系统在资源利用、运维管理等方面的挑战,越来越多的企业开始搭建云平台。“在私有云模式下,企业某个部门如果有建设新IT系统的需求,只需填写电子流申请虚拟机、存储资源、数据库PaaS服务即可。只要电子流审批通过,部门就获得了所需的底层计算和存储资源,不再需要走招标、采购流程来购买新硬件。但实现这一过程的前提是各种资源可以统一调配。显然,集中式存储做不到这一点。”

在私有云平台上,集中式存储的局限性主要体现在存储空间和性能资源的相互隔离。“打个比方,当我们发现电脑C盘空间不足而D盘还有剩余时,是无法把D盘空间划分给C盘使用的。私有云平台也存在类似问题。”黄岩说,“现在平台有两套集中式存储设备,分别给A、B两个部门使用。由于隔离的存在,如果A部门的存储空间或者性能不足,B部门的资源无法分配给A使用。”

乘势而兴:

分布式存储动态扩展、向云而生,满足企业发展需求

有需求就会有解决方案,分布式存储恰好弥补了集中式存储的短板。“企业希望存储做到‘随机应变’,而分布式存储具有很高的可扩展性。”黄岩说,“分布式存储能够添加多个服务器节点,可扩展至几十、几百,甚至几千个,来实现储存容量的线性扩展。这样一来,用户不需要对未来业务发展做出准确的预测,就能做到游刃有余。此外,当扩展了多个节点后,存储数据会转移到新节点,实现负载均衡,这样就不会出现单个储存区域负载过重的情况。”

分布式存储的竞争力不止于此。对于私有云平台来说,分布式存储具有天然优势。“云平台的重要特征之一是帮助用户实现即需即用,灵活高效地利用网络资源。分布式存储资源之间没有隔离,可以帮助企业用户打造统一的容量和性能资源池。”黄岩补充道。

此外,多数分布式存储产品都属于软件定义存储(SDS),不需要配置专用硬件。用户在通用服务器上安装软件,并将这些服务器用网络链接起来,就完成了分布式存储系统的搭建工作。“客户可以分开购买软、硬件,自由选择更合适的通用服务器,不再受存储厂家限制。这种灵活性是集中式存储无法比拟的。”黄岩说。

虽然有效弥补了集中式存储的短板,但是分布式存储存在一个较为明显的缺点——时延高。“集中式存储在两个控制器之间使用了专门设计的高速通信通道,处理写请求复制数据的时候,时延低。分布式存储要通过通用网络,也就是网卡和交换机来复制数据,时延比较高。”黄岩解释到,“同时,集中式存储一般配备电池备电单元,写请求数据放到内存就可以返回成功,而分布式存储使用通用服务器,必须要写硬盘成功才能返回。这是导致其时延高的另外一个原因。”

由于这个局限性,分布式存储主要应用在对时延要求不高的场景中,比如虚拟桌面(VDI)、存储资源池、存储图片、存储视频等场景。“那么,我们能不能降低分布式存储的时延,使其能应用于OLTP场景呢?这是一个机会!”谈到这里,黄岩明显兴奋了很多。

择善而从:

低时延的分布式存储在OLTP数据库中大有可为

据IDC预测,适用于事务型数据库的分布式块存储市场将保持快速增长,仅在中国,2026年这个细分市场会达到接近15亿美元的规模。

“我们清晰地感知到了市场对于数据库专用分布式存储的强烈需求。”黄岩说,“基于现有成熟的基础技术,我们可以开发一款高IOPS、低时延的数据库专用分布式存储产品,它不仅能够满足OLTP应用对用户极致体验的追求,也具有通用分布式存储高可扩展、灵活易用的特点。”

谋定而后动。在云和恩墨确认进军数据库专用分布式存储市场后,黄岩开始牵头研发存储产品 zStorage。他曾经担任某下一代NAS和某备份介质产品架构师,带领团队研发了自研分布式文件系统原型机,在架构设计和主要框架代码编写上具有丰富的经验。“现在zStorage 的3节点原型机随机读写IOPS达到了100万(读写比例7:3),平均时延低于0.8ms。”黄岩说,“据我们了解,目前市场上的大多数分布式存储产品还没有达到这个水平。随着技术创新迭代,时延达到集中式存储的水平也只是时间问题。”

黄岩提到的zStorage 是云和恩墨正在研发的数据库专用分布式存储产品,可以为金融、运营商、政务等高价值数据行业构建稳固的数据基础设施。“左晖曾提出‘做难而正确的事’,而我选择走一条难而正确的路。也就是说,我们要做的与市场上多数Ceph分布式存储产品并不相同。”黄岩说。

Ceph是由学术界在提出的分布式存储系统的解决方案。目前,很多研发分布式存储的厂商都在基于Ceph做产品化。黄岩指出,数据库OLTP应用最重要的需求是低时延,Ceph在这方面并不具备优势,对其进行优化也比较困难

黄岩认为,Ceph优化难的原因在于其编程模式:(1)为了充分利用CPU的多核能力,Ceph在一个进程内部创建很多线程;(2)多线程之间共享工作队列,工作队列必须用锁来保护;(3)大量全局数据结构在多线程之间共享,为避免并发访问造成的数据损坏,也需要锁来保护;(4)线程用同步IO操作访问,网络和硬盘可能发生阻塞,因此创建的线程数量必须远远大于CPU核的数量,这样就会造成多个线程在一个CPU核上频繁切换,性能消耗大,对业务代码的优化无法完全抵消这种消耗。

黄岩说:“Ceph的这种编程模式很难改变。如果非要改变,就必须把所有代码重写,这显然不现实。因此,我们决心换一种模式——zStorage 采用每个CPU核只有一个线程,这个线程上任何一个处理函数中都不允许调用可能发生阻塞的系统函数、不允许访问全局变量、不允许用锁。虽然这种模式编程更困难,工作量更大,但性能更优,能更好地满足企业用户对低时延数据库专用分布式存储的需求。”

谈到对 zStorage 的产品规划时,黄岩感慨地说:“都说台上一分钟,台下十年功。我们既然选择走一条难而正确的路,就意味着研发时间会更长、投入也会更大,但我坚信这是一条通往成功的路,且我们正在按自己的节奏和计划稳步推进中。我希望团队能够在深刻理解用户需求的基础上,充分发挥创造力,不断实现产品灵活、高效、低时延的目标。”

据悉,zStorage 将于今年10月份和大家正式见面,敬请持续关注。

数据驱动,成就未来,云和恩墨,不负所托!

云和恩墨创立于,以“数据驱动,成就未来”为使命,是智能的数据技术提供商。我们致力于将数据技术带给每个行业、每个组织、每个人,构建数据驱动的智能未来。

云和恩墨在数据承载(分布式存储、数据持续保护)、管理(数据库软件、数据库云管平台、数据技术服务)、加工(应用开发质量管控、数据模型管控、数字化转型咨询)和应用(数据服务化管理平台、数据智能、隐私计算数据联邦平台)等领域为各个组织提供可信赖的产品、服务和解决方案,围绕用户需求,持续为客户创造价值,激发数据潜能,为成就未来敏捷高效的数字世界而不懈努力。

如果觉得《当OLTP数据库遇上分布式存储 我选择走一条难而正确的路》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。