数据库性能我理解应该分为计算、存储和网络,这里主要讲讲计算和存储:
一、计算性能
在OLTP场景下,对于大并发,每秒事务数极高业务,CPU是很容易出现瓶颈。超融合架构的计算用的是vmware或者kvm等虚拟化技术,hypervisor多少都会损耗一些计算能力。所以针对大并发场景可以采用
1、使用cpu透传技术,将物理cpu直接透传给虚拟机,好处是虚拟机获得物理cpu的计算能力,劣势cpu资源被虚拟机独占。
2、通过numa绑定技术,将虚拟机在调度到某个物理cpu,优先使用cpu的本端内存(对于双路服务器,物理cpu旁边就是cpu插槽,如果cpu访问对端cpu附近的内存,则会走总线,增加访问延时)
3、开启大叶内存,增加cache池
二、存储性能
针对不同的业务场景,对存储的需求不一样,对OLTP系统要求高IOPS,而对OLAP系统则要求高吞吐,在超融合架构中有两点可以提升存储性能
1、使用全闪存存储,土豪的玩法,优点肯定是性能好,缺点就是费钱,只要在比较关键的业务系统上才会使用。
2、使用分布式存储,比较常见的方式是SSD+机械盘,数据先到SSD缓存,然后再写到机械盘,对上层应用来说不感知底层存储实现,在此基础上结合分片、条带化技术,把数据打散均匀的写到各个磁盘中,并发利用各个机械盘的io能力,提升存储的iops和吞吐能力。
我来补充,超融合对数据库能力弱,主要是因为存储,传统架构是用san网络的光纤存储,但超融合用了分布式存储取代,分布式存储有可能会导致IO性能下降,但这也并非绝对,如果用全闪磁盘,或用multi raft架构可以提高IO性能。
收起超融合针对数据库这块确实能力比较弱,目前国内只有华为等基于ceph分布式存储深度定制的超融合产品还可以,可以支持OracIeRAC、IBMDB2、SybaseIQ、Mysql、IBMinfonmx等各种主流商用数据库。华为的产品还通过了SAPHANA认证,可以部署HANA数据库。
在性能性,超融合节点需要部署SSD数据盘+高速互联网络,最好是infiniband交换机网络,保证数据交换的性能。
另外,超融合产品还需要有数据一致性组等保障措施,避免分布式架构带来的数据不一致问题。
hut51的回答比较偏技术层面了,我想从另外一个维度来回答这个问题。您提出的问题其实就是想知道超融合架构能否满足oracle的性能需求,毕竟虚拟化以后计算资源肯定是会有损失的,这个问题最好的答案不能仅仅是从理论的角度分析,更多的还是要进行实测。可以先收集目前数据基于物理机运行的性能指标,然后与超融合平台部署数据库进行对比测试,这样真实测试出来的数据更具有说服力。另外一个层面来说,有些超融合厂商还专门针对主流的数据库oracle和db2做了优化,而且每家的场景和需求不同,因此笔者的建议还是真实测试的结果更具有说服力。
收起