语言
<< 返回文章列表

数据库一体机简史:从德维特的Gamma系统到开放集成的zData实践

2026年3月23日
,
z
D
a
t
a
X
,
,
,
盖国强
6

在上一篇《从Britton-Lee到zData,专用硬件和通用硬件之抉择》中,我们提到了数据库领域的先驱之一保拉·霍索恩(Paula Hawthorn)。有朋友对这对伉俪的携手经历很感兴趣,我在迈克尔·斯通布雷克(Michael Stonebraker)的书中找到了一张照片,这张照片是Illustra团队的合影(如图1所示)。图中,前排中间的是保拉·霍索恩,中排左一为迈克·乌贝尔(Michael Ubell)。这个团队中每个人都有一个绰号,霍索恩的外号是“老妈(Mom)”、乌贝尔的外号是“小个子(Short One)”。她们妇夫二人在Britton-Lee之后,追随斯通布雷克的第二次创业历程,共同发起了Illustra,致力于将Postgres商业化。当然,照片前排左一正是大家所熟知的Ingres传奇的缔造者迈克尔·斯通布雷克,他也是数据库领域第四位图灵奖得主

图1 Illustra团队核心成员

 

 

图2 戴维·德维特(1948.7.20 —)

我们言归正传。保拉·霍索恩当年投身数据库机领域,其实并非受斯通布雷克的影响,事实上他甚至反对这一想法。真正对霍索恩产生影响的是另一位数据库领域的大师——戴维·德维特(David DeWitt,见图2)。德维特出生于1948年,比斯通布雷克小了5岁。当他1970年进入密歇根大学开始研究生学习时,斯通布雷克正在攻读博士学位,并且成为了德维特计算机体系结构入门课程的助教。斯通布雷克的博士论文是关于“马尔可夫链”的算法研究,然而在撰写论文期间,他就意识到这不是一个值得投身的领域。斯通布雷克后来回忆并评价这段经历时说:“我当时认为,而且至今仍然认为,大多数博士论文都是在浪费时间,我也认为我的论文是在浪费时间。”然而当时正值越南战争1期间,斯通布雷克面临的情况是,如果毕业离开研究生院,他就会被征召入伍。从斯通布雷克面对的越南战争到当下进行中的2026伊朗战争,和平总是最宝贵的期待。

1971年春天,斯通布雷克在阿奇·内勒(Arch Naylor)的指导下完成了论文。研究生中流传着传言,说斯通布雷克与内勒就论文爆发了史诗般的争执(甚至有人说他们师徒动了手)。德维特说:“我从来没有听说过这些争论是关于内容还是风格(内勒在写作方面非常严苛)”。不过,作为导师的内勒可能被斯通布雷克伤了心,从那时起到1994年退休,内勒再也没有带过研究生——尽管如此,他仍将斯通布雷克视为自己最得意的门生。

越南战争(Vietnam War,1955年—1975年),简称越战,是冷战时期在越南、老挝和柬埔寨进行的一场大规模局部战争,主战场位于越南。该战争是第二次世界大战后美国参战人数最多的海外军事冲突,对战后国际格局影响深远。

斯通布雷克在1971年毕业后来到加利福尼亚大学伯克利分校,担任助理教授。他迫切地希望找到新的研究方向,发表论文,从而拿到终身教职,但他一时毫无头绪。每个人身边都可能有一位“点火者”,而斯通布雷克就触发了一次伟大的变革。

图3 王佑曾

一切都是偶然。伯克利的华裔教授王佑曾2(Eugene Wong,见图3)正在研究关系型数据库的新进展,他建议斯通布雷克阅读一下科德3(Edgar F. Codd)的论文。就这样,他们开始了数据库领域相关论文的研究,并深深被其吸引。后来,他们共同开启了数据库领域的传奇项目——Ingres。王佑曾出生于1934年的中国南京,后躲避战乱辗转到美国学习。他比斯通布雷克年长9岁,成为了后者的领路人。

王佑曾(Eugene Wong)分别于1955年、1958年和1959年在普林斯顿大学获得电子工程学士、硕士和博士学位。在加入加州大学伯克利分校之前,他是剑桥大学的国家科学基金会博士后研究员(1959-1960),并在纽约的IBM研究中心担任研究员(1960-1962)。他于1962年加入EECS(电气工程与计算机科学)系,从事数据库管理系统、优化算法、随机过程和神经网络方面的研究工作。1985-1989年,他担任系主任,在此期间领导该系经历了发展最快的时期,使其成为伯克利校园最大的学术部门,也是该领域排名最高的部门之一。王教授于1994年从该系退休,成为名誉教授。1980年,他与Michael Stonebraker和Lawrence A. Rowe共同创建了Relational Technology公司,后更名为INGRES公司,该公司是数据库软件产品的领先供应商。他于1988年因其在Ingres方面的工作获得ACM软件系统奖,并于2005年被授予IEEE创始人奖章。

3 埃德加·科德(Edgar F. Codd,1923 - 2003)是英国计算机科学家、关系数据库模型的提出者。他于牛津大学获得数学与化学学位,二战期间曾在英国皇家空军服役。战后移居美国,加入IBM从事计算机系统研究。1970年,他在Communications of the ACM发表论文A Relational Model of Data for Large Shared Data Banks,首次系统性地提出关系模型,主张以数学中的关系代数为基础组织和查询数据,奠定了现代关系数据库系统的理论基础。尽管其思想最初在IBM内部未被立即采纳,但随后对整个数据库产业产生了深远影响,催生了包括System R在内的一系列关系数据库系统原型。科德因其开创性贡献于1981年获得图灵奖。他晚年继续从事数据库理论研究,并提出了著名的“科德十二定律(Codd’s 12 Rules)”,用于定义关系数据库管理系统的标准。

德维特毕业后一度想到加利福尼亚大学伯克利分校工作,未果。但他与斯通布雷克保持了非常密切的合作关系。斯通布雷克为德维特提供了早期的Ingres版本,供其在课堂上使用,并邀请他参加了1977年5月在伯克利举行的第二届“分布式数据管理和计算机网络研讨会”。斯通布雷克在这里发表了他的第一篇关于分布式Ingres的论文。在这次会议上,德维特受到斯通布雷克的启发,将自己的博士论文研究方向调整为构建并行数据库系统,并于1978年初启动了DIRECT项目。在DIRECT项目的实施过程中,德维特决定尽可能复用Ingres的代码。斯通布雷克更加调动了Ingres团队帮助德维特解决有关Ingres工作原理的问题,其中就包括鲍勃·爱泼斯坦和保拉·霍索恩。

图4 《数据库机架构的性能评估》论文封面

1981年,霍索恩与德维特合作撰写了《数据库机架构的性能评估》(A Performance Evaluation of Data Base Machine Architectures)一文(如图4所示),探讨影响数据库机性能的关键因素。这篇论文就是Britton-Lee数据库机创始的理论基础。

 

图5 Gamma系统进程结构

1984年,德维特在威斯康星大学麦迪逊分校启动了Gamma数据库机项目(Gamma Database Machine Project,如图5所示),并持续到1992年。Gamma运行在使用标准网络技术连接的计算机集群上(最初为DEC VAX 11/750),其主要贡献包括:设计并实现了多种分区技术(轮询、范围和散列)并将其用于在多台计算机和磁盘上分布数据,以及在集群环境中执行关系查询的并行算法和流水线算法。通过广泛的基准测试,Gamma成为了首个发布测试结果、证明具备实际“线性可扩展性”的并行DBMS。尽管Gamma项目从未商业化,但它通过发表大量技术论文,证明了不使用专用硬件亦能实现可扩展性,从而对数据库领域产生了深远影响。业界几乎所有成功的Shared-Nothing并行数据库系统都采用了Gamma项目所开发和评估的思想与算法。

既然通用硬件亦可实现数据库加速,那么剩下的问题就是如何集成。Oracle Exadata提出的概念是“Engineered Systems”4,其本质定义是基于通用硬件的软硬件集成系统——Engineering Database Hardware and Software Together,可谓直指本原。只不过Exadata是基于Oracle的共享存储集群技术(Oracle RAC),而非Gamma类系统所采用的Shared-Nothing架构。

 Engineered Systems(工程化系统)是Oracle提出的软硬件一体化设计理念,指通过对数据库软件、操作系统、存储、网络及服务器硬件进行协同设计与深度优化,从而实现高性能、高可靠性和高效率的系统整体交付。该概念的核心代表产品是Oracle Exadata。Oracle官方将其定义为“hardware and software engineered together”,强调通过端到端集成优化来获得优于通用系统简单组合的性能与效率。

云和恩墨zData数据库一体机的缘起正是Engineered Systems理念的一个典型实践。2013年6月,EMC以2~3亿美元收购了以色列的一家初创软件定义存储公司ScaleIO;2014年5月,希捷以4.5亿美元现金购入了Avago旗下LSI的加速解决方案事业部及存储器组件事业部。云和恩墨创立于2011年,是中国市场上数据库解决方案的领导厂商。当时EMC与希捷找到云和恩墨,希望通过三方合作来整合一套工程系统——将LSI的闪存、EMC的ScaleIO,通过云和恩墨的解决方案能力集成为数据库一体机,这便是zData的由来。时至今日,云和恩墨初代的zData仍运行在部分用户的生产环境中,稳定运行已逾十载。

图6 性能、成本、可靠性三者的权衡

zData探索至今,云和恩墨初心不改。zData的目标是从根本上实现以开放硬件支持通用数据库,支持软硬解耦,为用户提供稳定可靠、极致性能的统一“数据库运行平台”,并确保成本可控。数据库一体机作为用户核心数据系统的关键载体,云和恩墨希望破解“不可能三角”(如图6所示),在保障极致可靠性(Reliability)与极致性能(Performance)的前提下,同时保持人人可承受的优化的成本(Cost)。而在中国企业国产化数据库创新应用时代,用户正在这三方面面临更严峻的新挑战。

面对不同场景,zData在满足可靠性与性能需求的前提下,推出了不同架构的产品以满足不同用户的成本控制需求。目前,zData以存算分离架构满足电信、金融、能源等行业的大型核心应用需求;以存算融合架构(如图7所示)满足制造业、医疗、教育等行业的中等规模核心场景需求,在可靠性、性能和成本之间求解最佳模型。

图7 zData的存算融合部署架构

2023年,云和恩墨zData上线某省电力营销2.0系统,高效支撑了该省3000万户的供电服务,是zData服务核心客户的里程碑事件之一。该系统全面采用国产化设备,1000用户并发下的TPS(每秒事务处理量)稳定达到62843,较传统架构提升近3倍;随机写IOPS高达2172K,顺序读吞吐量达到23.7GB/s;1.98秒即可完成上亿条记录的检索运算,将复杂查询响应时间压缩至原架构的1/10。zData的上线为该省电力营销系统的实时服务提供了坚实支撑(如图8所示)。

图8 zData在某省电力营销2.0系统的应用实践

在数据库一体机的历史上,从Exadata到zData,这些系统都受到了Gamma数据库机项目开创性研究的影响。在新的时代里,通用硬件和软件优化成为行业不断努力的目标。戴维·德维特的Gamma系统还深刻影响了一系列数据库产品的构建,这其中包括IBM DB2 Parallel Edition、Informix Version 8、Tandem Non-stop SQL、Vertica、Netezza、DATAAllegro、Greenplum、Aster Data和ParAccel等。因在Gamma系统中的贡献,德维特于1995年当选ACM会士,“Gamma并行数据库系统”亦于2008年荣获ACM软件系统奖。

话说戴维·德维特可能是拉里·埃里森最痛恨的人之一。1983年,德维特发布了首个科学的数据库评测基准——威斯康星基准。该基准不再只看单一任务,而是通过复杂的SQL组合来测试系统的性能瓶颈。德维特用该基准测试发现Oracle性能不佳并公开了结果,这激怒了拉里·埃里森。埃里森甚至试图施压威斯康星大学解雇德维特。Oracle后来在其软件许可协议中加入了一条:禁止用户在未经允许的情况下发布性能评测结果。这一条款被业界戏称为“德维特条款”,至今仍出现在许多数据库巨头的合同中。

图灵奖得主、数据库领域的另一位传奇人物吉姆·格雷(Jim Gray)曾多次在公开场合和论文中引用德维特的工作作为并行计算的黄金标准。

1992年,吉姆·格雷和戴维·德维特联合发表了并行数据库领域的里程碑论文:Parallel Database Systems: The Future of High Performance Database Systems。在这篇论文中,他们系统性地提出了并行数据库的定义。由于德维特主导了Gamma系统的绝大部分工程实现,格雷在后来的访谈中多次将并行数据库的实用化归功于德维特,德维特也被很多人称为“并行数据库之父”。

2008年,微软聘请德维特成立麦迪逊实验室,称其为“数据库领域的传奇”,并强调他将把“并行数据库的基因”带入微软产品线。当时微软斥巨资收购了并行数据库公司DATAllegro,德维特的任务是带领团队将DATAllegro的MPP(大规模并行处理)架构与微软的SQL Server核心进行深度融合,这便是后来PDW(SQL Server Parallel Data Warehouse)的雏形。在PDW的演进过程中,德维特意识到结构化数据(SQL)与非结构化数据(Hadoop/HDFS)不应是两个孤岛,因而主导开发了PolyBase。这项技术允许用户使用标准的T-SQL语句直接查询存储在Hadoop或Azure Blob Storage中的数据,而无需了解MapReduce或复杂的编程。同时,他将并行数据库的“谓词下推(Predicate Pushdown)”和“并行数据移动”算法应用到了异构数据源之间,极大地提升了混合数据环境下的查询效率。PDW后来演变为SQL Server APS(Analytics Platform System),并最终发展为目前微软云业务的核心——Azure Synapse Analytics。

 

 

图9 Wei Hong

作为本篇的一个延展,图1中后排右二是一位华人,他的名字是Wei Hong5(见图9),斯通布雷克在图灵奖获奖演说中亲切地称其为“EMP1(首位员工)”。Wei Hong是Ingres团队中率先加入Illustra的两位明星之一,也是该公司的第一位员工。他的数据库生涯受到开源的深刻影响。据Wei Hong回忆,1985年他在清华大学首次接触到Ingres代码的打印件。当时,他们将代码手工逐行输入到计算机中,最终成功使其运行,由此开启了对数据库技术的深入研究。1989年夏天,Wei Hong加入了斯通布雷克在加州大学伯克利分校的研究小组,并在那里获得博士学位。从他的经历中我们可以看到,开源技术真的改变了很多人的人生。

 Wei Hong现任谷歌数据基础设施与分析(DIA)团队工程总监,负责流式数据处理领域,包括构建和维护谷歌广告与商业部门中一些最关键收入数据管道的相关基础设施。加入谷歌之前,他曾联合创办并领导三家初创公司:与斯通布雷克在数据库系统领域共同创立的Illustra和Cohera,以及在物联网领域的Arch Rock。他还曾在Informix、PeopleSoft、Cisco和Nest担任高级工程领导职位。他曾是英特尔研究院伯克利分院的资深研究员,从事传感器网络和流式数据库系统的研究工作,并荣获ACM SIGMOD时间检验奖(Test of Time Award)。他是80项专利的共同发明人,拥有加州大学伯克利分校的博士学位,以及清华大学的硕士和学士学位。

又及,INGRES公司于1988年上市。IPO前,三位联合创始人的持股比例分别为:Lawrence Rowe 5.3%、斯通布雷克5.3%、王佑曾5.1%。INGRES公司IPO前后的主要股东持股情况如图10所示。王佑曾退休后参与了中国的很多科技建设。1994年至1996年间,他曾经担任香港科技大学副校长,并于2001年出任董建华任期内的香港创新科技顾问委员会主席。

图10  INGRES公司IPO前后的主要股东持股情况

 

 

参考文献:

https://awards.acm.org/award_winners/dewitt_1251768

Making Databases Work

https://en.wikipedia.org/wiki/David_DeWitt

https://www2.eecs.berkeley.edu/Faculty/Homepages/wong.html

https://academicians.sinica.edu.tw/index.php?r=academician-n%2Fshow&id=185

 

关注云和恩墨公众号,回复关键词“简史1”“简史2”下载精编版PDF~