暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

迟到的DTC总结

IT知识刺客 2024-04-16
58

2024 DTC结束了。有好些年没参加DTC了,上一次参加还是在2015年,一晃快10年了。时光真快。

当时我的主题是《调试技术二三例 -- 调试技术在日常运维中的应用》。主要讲了使用动态调试技术(Dtrace、Systemtap),收集性能资料,对Oracle、MySQL的异常问题进行更准确的分析。
对,当时我还没开始搞PG。我的研究领域还是Oracle和MySQL。
我一直认为动态调试技术,非常适合作为MySQL、PG的可观测性利器。不过,systemtap因为未能进入Linux内核,需要额外安装,只适和自行研究使用。以systemtap为基础,做通用的产品,不太适合。eBPF的出现,完美解决了这个问题。
时隔9年,终于有一款产品,使用eBPF+用户态动态跟踪,为MySQL、PG等数据库提供更好的可观测性。
记得当时参会时,DTC还叫“Oracle技术嘉年华”,家还在热议要不要去IOE。时光丛丛,嘉年华去O成功,已经改名“数据技术嘉年华”。而某些国产数据库,更是走在前面,弯道超车、全方面超越:

(图片来自DTC大会中厂商广告词)
传统数据库已经落后,以分布式、云原生等为代表的新一代数据库,在国内外全面开花结果。
许多外星入侵的好莱坞大片,在危机来临前,都喜欢先来一段表现岁月静好的长境头,往往从海边沙难泳装美女开始,镜头逐渐拉高、拉远,海滩、整齐的街道、海边现代建筑,到城市中心的高楼大厦,尽显盛世繁华。

(图片来自电影《独立日》,外星人入侵前)

或者,像电影《独立日》开场,从美帝的阿波罗11号登月时,留在月球表面的登月车和星条旗帜开始:

用登月,彰显我们的科技是如此的遥遥领先。
然后,外星人从天而降。

好了,在国产数据库遥遥领先的今天,数据库界的外星人,要从天而降了:

没错,外星入侵者就是Stonebraker老爷子。
老爷子发现中国老是弯道超车,超的不亦乐乎。老爷子心想:“我他娘的也超一次,就算交警逮着了,我倚老卖老一下还不行吗,超他娘的。”
(以上纯属虚构)
老爷子这次整了个大活,DBOS:

要以分布式数据库为基础,构建操作系统,打造数据库操作系统,并彻底改变云原生架构。
DBOS,颠覆。
这得喝干一瓶二锅头,才能以这样的速度弯道超车。酒架我也不管了,就一个字:干。
数据库界一共4位图灵奖获得者,Stonebraker老爷子是目前唯一还在世的一位。
老爷子不单是学术泰斗,搞企业,也是一把好手。
创办ingres公司,搞出Ingres数据库,在市场上一度把Oracle打的节节败退。
后来Oracle不得不联合IBM整出SQL标准,合两家之力,才打退Ingres数据库。
失败后的Ingres数据库,也并未销声匿迹,而是发展为一系列数据库,PG是其中最成功一个。在如今去O市场上,又开始了和Oracle的正面对决。
(Ingres的一个分支,起名为Postgres,后又改名为PostgreSQL)。
老爷子在2009年又搞出了voltdb,这相当于亲手为新一代数据库揭幕,好几年后,其影响力传导到国内,新一代国产数据库才如雨后春笋,喷涌而出。
那么这一次,在国产还沉浸在遥遥领先的分布式、云原生架构中时,老爷子的数据库操作系统(DBOS)突然杀出,宣告由他开启的新一代数据库,落幕;新新一代数据库(第三代数据库),正式登场。这一次,几年后,国内还能跟的上老爷的节奏吗?
大概率,跟不上了。为什么?
有一个重要的原因,DBOS,不开源。
不开源,这严重影响了我们在技术上的突破,屡试不爽的弯道超车,这次恐怕超不了了。
老爷子的H-Store、Voldb,不乏详细的解读文章,还有国产的二次实现。DBOS呢?
老爷子把DB延伸到OS领域,为什么?
OS是对硬件(CPU、内存等)的虚拟封装,老爷子认为OS的这层封装,已经无法适应如今的云原生架构了。
所以,要想读懂DBOS,从字面意义上的OS入手,是肯定不得其门的。要从处理器入手,但对数据库人来说,这不是超纲不超纲的问题,而是超纲太多,都超到另一个领域了。
比如,我说CPU也是分布式的,你信吗。

不是说多个CPU组成分布式啊,而是如上图一颗CPU内,多个Core,就是分布式的。Why?
如下图:

传统的UMA,是集中式的架构。而NUMA,已经是分布式架构了。每一个Core都有自己的内存,自己的内存叫Local内存,本地内存,访问本地内存快。其他Core的内存叫Remote内存,远端内存。
访问远端内存要走网络,就是图中的QPI/UPI总线,这就慢了。Local内存和Remote内存的性能差距通常在1倍左右。CPU走向NUMA这种分布式,是不得以而为之,从物理层面上,已经无法让每一个Core同等的访问内存了。
我不知道我这样说,你能理解吗?毕竟,对于一个数据库人来说,NUMA也不必要了解太多。
你可以再找找资料,理解一下,相对于UMA,NUMA就是一种CPU内的分布式架构。
那么,我们可以得出结论了:

CPU已经是分布式了,现在又有那个数据库,把一块CPU当分布式来架构、开发数据库啊。
其根本原因,是中间隔了一层OS。OS对CPU做了一层虚拟化,让DB感受不到CPU的分布式。
这相当于什么呢,你带着杜蕾斯,去干CPU。杜蕾斯会为你隔离一些复杂性,但你要损失一些快感。
DBOS就是要去掉OS这层TT,追求极致快感,从底层重构你的快乐体验,让你从下、到上,都能体验到云原生的乐趣,全程如在云端。就问你爽不爽。
DBOS要是真成功了,其他传统数据库、第一代新型数据库还是戴着套玩,只有DBOS不戴套。DBOS是要一统娱乐业啊。
NUMA只是举个例子啊,DBOS还有很多其他炸裂内容。另外,一些DB厂商所说的numa aware和这里所提的不是一回事。一件能让Stonebraker老爷子80高龄还想去做的事情,你不会真认为一些DB厂商举手之间就给搞定了吧。(如果真遥遥领先到这个地步,白宫大门外面早换上五星红旗了)
理解DBOS这种革命并不容易,你要在理解数据库之后,更进一步,理解我们的处理器。我也一直在做这件事,让大家理解我们的处理器。
从去年DTCC开始,我的分享有一个主线。

DTCC时,我的主题是《现代处理器之上的数据库》:

我尽量的在40分钟内,为大家展示了利用处理器(也就是CPU)的特性,对数据库在内的基础软件进行画像,并在此基础上提升能效的可能。
这次分享算是“处理器与数据库”两相结合的入门。
之后10月份在中科院的PG生态大会,我做了主题是《跳出数据库,回看数据库 ---- 谈数据库技术的微创新》的分享:

更进一步的,介绍了处理器的内部特性,以及这对数据库能有什么改变。
当时Stonebraker老爷子的DBOS还没有公布太多资料,面对清华大学正牌教授、杰青、数据库研究者,我这个北大的“校外”教师,自然不敢说处理器的变革,快要传导到基础软件领域了,我只敢说处理器会有一些对数据库的小小改变,叫“微创新”。
2024年,Stonebraker老爷子终于把桌子掀了,老子不戴T了。所谓拳怕少壮,棍怕老郎。不戴T的老爷子已经挥舞大棍,自宣布下一代数据库要诞生了。在DTC上,我的标题也正式变为:《后摩尔定律时代的数据库研发》:

我尽量的想在30分钟时间中,让大家注意到处理器的变革,已经传导到国外的基础软件领域。我介绍了几乎被所有人忽略的案例:Intel Granulate优化器。
颗粒优化器,本是一家独立的公司。他们开发一款神奇的产品,宣称不改动代码,让程序性能大涨40%。
颗粒公司成立于2018年,成立不久就拿到了百万美元的天使,之后又拿到了几轮千万美元级的VC。最后,被Intel以6.8亿刀收入囊中,变为Intel计算基础设施平台的一部分。
它可以使多种应用程序的计算成本大幅下降:

(图片来自Intel官网对颗粒优化器介绍)

其实Granulate产品和云计算组合起来,杀伤力更大。Intel抢先收购了它,对国内的云计算公司来说,是大好事一件。要不然,面对不改代码大幅降低计算成本的魔法,国内的云又要被降维打击了。

这是跨越代际的落后,你根本不知道别人是怎么玩的。仅凭一个程序,不改代码,就能让Java、大数据、go/python等程序性能大大提速、计算成本大幅下降,你知道这是什么魔法吗?

但30分钟时间太短,也只能介绍到这一步了。DBOS没来得急在DTC中提,只来得急用魔法一样的Coding技术说明,变革已经悄悄来到我们身边。

外星人的降维打击要来了,小丑般的遥遥领先,还能领先多久。借用某大厂宣传语:Stonebraker老爷子要做的事情,可不仅仅是替代,更是全方面的超越:

DBOS究竟是个啥,我几乎用一年时间、在好些场大会中铺垫了那么久,最终的揭秘,留给下一场大会吧。如果没有意外,5月份的PG大会,想像Stonebraker老爷子那样不戴T玩吗,敬请期待《分布式词话》:





文章转载自IT知识刺客,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论