作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Pro: Database(Oracle与MySQL)
PostgreSQL ACE Partner
10年数据库行业经验,现主要从事数据库服务工作
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP、认证技术专家、年度墨力之星,ITPUB认证专家、专家百人团成员,OCM讲师,PolarDB开源社区技术顾问,HaloDB外聘技术顾问、OceanBase观察团成员,青学会(青年数据库学习互助会)外部顾问
圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著 名社恐(社交恐怖分子)
公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭
也许看到本期文章的题目,会觉得,得嘞,又一个黑国产硬件的来了,但是我今天真不是来黑国产硬件的,而是吐槽一下硬件采购,下面举几个栗子。
为了提升数据库各节点的网络交互能力,在几年前的采购意向填写中,就加入对25GE、40GE网络环境的需求。然而当硬件采购下来之后,令人欣喜的是,服务器网卡支持25GE和40GE,交换机也支持40GE,但所有光模块和光纤都是10GE的,把硬件的向下兼容做到了极 致。
在分布式存储场景下,共享存储的性能就被限制在了10GE;如果有负载较大的分布式数据库场景,网络也会限制整体性能的上限,有时候也会造成分片不能太大从而浪费单机性能。
“众所周知”,其实很多国产数据库对磁盘IO要求是挺高的,往往都要求服务器配置SSD,而目前一般使用的SSD主要有3大类接口(或称总线):
这里还需要注意:
那么从实际需求来看,选择SAS SSD是一个相对折中的不错的选择。但是从实际服务器到货情况来看,有两个极端:要么只有2块480GB用于操作系统的SAS SSD,因为这类服务器往往是高性能CPU+大内存,用于计算,本来的计划是使用高性能共享存储来存放数据;另一种就是CPU和内存配置很一般,但有大量的SATA SSD,这种服务器更多是规划用于做类似于分布式存储或者对象存储的。
然而数据库场景即是计算密集型也是IO密集型,这就造成了采购的服务器要么没磁盘没IO,要么IO一般般计算能力还不够。
近几年的硬件发展不可谓不快,如前面提到的PCIe NVMe SSD,一块硬盘可以超过十几年前一个集群的性能;高带宽RDMA交换机的出现,100GE只是起步,800GE也不是上限;内存也从DDR4来到了DDR5,性能有带来了翻天覆地的进步…
其实前两节说的问题,都是硬件采购过程因种种原因时间较长,采购量又非常大,负责采购的人往往也不了解硬件;同时规划覆盖时间长到货周期也长,并没有考虑硬件进步速度。到下一次采购时又会出现相同的问题,周而复始,让可用的硬件一直落后于时代发展。另一方面,随着时代在进步,尤其是数据量的海量膨胀,长周期的硬件采购到后期经常出现硬件资源不足的情况,且不易缓解。
这也是为什么很多时候国产数据库测试时,特别是在测试结果不尽如人意时,会听到厂商吐槽提供的硬件不行。这个时候也许真不是数据库产品的问题,而是硬件确实很拉胯。
本期吐槽了下硬件采购的种种问题。
老规矩,不知道写了些啥。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31466763/viewspace-3018703/ ,如需转载,请注明出处,否则将追究法律责任。