数据库管理230期 2024-08-15
数据库管理-第230期 KING大咖面对面-国产环境的数据库迁移痛点(20240815)
上周六(8月10日)在人大金仓成都研发中心举办的《KING大咖面对面》技术沙龙活动成功举办(https://mp.weixin.qq.com/s/dUcw5n8c6puueG9RoQTAng),我也收到人大金仓的邀请,与熊灿灿、尚雷以及来自于人大金仓的刘艳兵和何甦一起进行了技术演讲与交流。本次活动我的演讲主题是《国产环境的数据库迁移痛点》。
1 国产硬件的差距
下图是我从客户那拿到的信息,不针对具体的产品:
从这里我们可以得到并引申出一个结论——需要达到相同的硬件性能需要更多的CPU/服务器:
- 更多的机柜意味着更多的占地面积
- 更多的发热意味着更多的制冷设备
- 更多的能耗意味着更多的碳排放
- 更多的配套设备
- 更多的设备维护数量
- 更多的硬件维保费用
- …
另一方面一些国产硬件的扩展性也有一些差距:
- 内存:DDR4 vs DDRR5
- 内存:单Socket支持 128G vs 384G
- PCIe: 4.0 vs 5.0
- 架构:X86 vs ARM
- …
其中关于一些涉及内存、PCIe设备的扩展性可能带来进一步的服务器性能差异,而CPU架构的变化则带来了软件开发层面的一些差异。
2 国产数据库的架构变更
这里主要说的是集中式数据库向分布式数据库的架构转变,除了以前文章写到的关于语句和逻辑设计的变更,其实更多的则是把以前放在内存中操作放到了网络,延迟/带宽从ns/50GB/s变到了ms/1.25GB/s(万兆环境为例):
3 数据库的多维度兼容性
这里是一个不断深入循序渐进的过程:
- 数据类型可以支撑全量的数据存储需求
2. SQL兼容性,修改代码是非常昂贵的事情
3. 性能达标
4. 足够稳定
4 数据库双平面的价值
双平面这个概念源自于客户的实际需求,即国产数据库与原有数据库可以并行运行,当因为一些原因或国产数据库出现问题时,业务可以极快甚至是无感切换回原来的数据库,下面是我收集到的常见的两种数据库双平面的方式:
总结
本次活动,我的演讲内容算是对数据库国产化的一点吐槽,但也是实实在在需要注意的一些地方。
在所有嘉宾演讲完成后,还进行了讨论答疑。