数据库管理-第191期 “细思极恐”的数据库概念(20240517)

数据库管理-第191期 “细思极恐”的数据库概念(20240517)

作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Associate: Database(Oracle与MySQL)
PostgreSQL ACE Partner
10年数据库行业经验,现主要从事数据库服务工作
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP、认证技术专家、年度墨力之星,ITPUB认证专家、专家百人团成员,OCM讲师,PolarDB开源社区技术顾问,OceanBase观察团成员
圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著名社恐(社交恐怖分子)
公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭

这几天在小群里又聊到“上古神器”Paxos和Raft,为何称之为“上古”,因为这两个分布式一致性算法(也可称之为协议),就比另一个“上古神器”诞生于1996年的LSM Tree晚出生那么一丢丢(Paxos诞生于1998年,Raft诞生于2013年)。当然上述这几位比诞生于1970年的B-Tree对比起来,还是相当先进年轻的。
首先前面四个名词涉及的技术网上的文章非常多,我这里就不再赘述了,一是没必要重复,二是我写大概率是班门弄斧,三是篇幅所限…。PLUS:这一期不分节也不总结,写到哪算哪。
其实为啥突然想着写这么一篇,主要是在本次聊天过程中又想起了很早以前客户对我的一个线上面试:

客户:MySQL MGR用的同步技术是啥?
我:基于日志的半同步复制
客户:不对,是Paxos!
我:Paxos是分布式一致性算法,不是同步技术
客户:…(键盘声)…好吧!

为什么翻出这么一个典故,纯粹是因为,我很好奇为什么客户会对数据库的概念有这样一个认知。在我的认知中,无论适用于高可用还是分布式,就数据库本身的(不包含硬件或操作系统层面的)的同步的一般的技术体系是:基于日志的逻辑/物理复制技术,半同步复制方式(这个估摸出现在2009年),使用Paxos/Raft的算法和协议来确保一致性。
这里其实有三个部分,技术、方式、算法,半同步复制是为了减少基于日志的同步带来的性能影响,最终通过算法确保一致性并减少延迟。三个部分相辅相成互相配合协同运行的。
image.png
继续,为什么要写这些,众所周知,基于日志的复制技术,是很多数据库在有高可用架构诞生之初就已然出现,这个时间可以回溯的比较早的时间点,而且至今仍然是主流。
下面的内容可能会得罪一些地方,这也回到了我上面提到的那个典故,其实现在很多人对一些数据库的高可用/分布式同步的技术体系认知,似乎就只剩下了“牛逼轰轰”的Paxos和Raft,同时似乎还存在一种鄙视链,即先用这些技术的要比后用的好,用后出现的技术的要比用老技术的好。
为什么会有这些现象出现,我认为有以下两点:

  • 突出宣传领先的技术点
  • 压力巨大的竞争环境

这个月Oracle重新调整了23版本为23ai,相当于重新发布了一下基于Raft的全球分布式数据库架构,然后就有人开始沾沾自喜的说,Oracle开始落后于国产分布式数据库了。即使Oracle在12.2开始就引入了分布式架构Oracle Sharding,但是很多人还是说以前是用的什么来同步?ADG还是OGG,那都是落后的东西,但是ADG是基于日志的物理复制,OGG是基于日志的逻辑复制,而且Oracle 23ai使用Raft还是得用到log-based replication,到头来,还是“落后”啊(反正我也不管全球分布式数据库架构到底解决了些啥)。
最近和好几个地方客户沟通,客户对千篇一律的“遥遥领先”的PPT已经略显麻木了,而当将稍微深入点的实际的技术情况跟客户交流时,其实他们非常感兴趣,这样他们才能为即将到来的一些东西做好哪怕仅仅是心理层面的准备。
又想起了首席那个案例,当年单表100TB,用的是15K的HDD做的RAID 10,再看看现在的硬件需求,动不动全闪(最好是NVMe的)。所谓的技术新旧,真正成为了领先的数据生产力了么?
本期内容还是挺乱的,算是不知道写了些啥,我还是希望启发一下大家。

  • 25
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胖头鱼的鱼缸(尹海文)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值