瀚高软件CTO郑晓军:以开源之路发展国产数据库符合市场规律

[摘要]对于中国基础软件崛起之难,企业是最深有感触的,但是十几年来行业人士却从来没有放弃。与十几年前的困境相比,如今IT应用环境云化带来了极大机会,中国基础软件也取得的巨大进步,这一切都在证明,中国基础软件发展未来可期,前途光明。

本文作者│刘学习Fiyinghare

中国要不要发展自己的基础软件?中国的基础软件怎样才能异军突起?从十几年前到现在,这些一直是人们争论不休的话题。

而最近几年在中国IT市场,又出现这样一个令人困惑的现象:中国基础软件做得出来,却用不起来。

对于中国基础软件崛起之难,企业是最深有感触的,但是十几年来行业人士却从来没有放弃。与十几年前的困境相比,如今IT应用环境云化带来了极大机会,中国基础软件也取得的巨大进步,这一切都在证明,中国基础软件发展未来可期,前途光明。

瀚高软件CTO郑晓军

"推进开放标准和开源软件可以帮助中国软件产业发展,包括中国基础软件的发展。在这方面,我很认同中国工程院院士倪光南等人的观点。" 瀚高软件CTO郑晓军接受中国软件网记者采访时指出,发展国产基础软件一定不能错过"开源"路线。

2009年,瀚高软件基于开源的PostgreSQL数据库,开始研发国产数据库,品牌为Highgo Database。十年铸一剑,公司2015年成功在新三板上市,经过十几年的发展,瀚高数据库——Highgo DB目前已在众多关系国计民生的关键核心领域和重大工程中得到成功应用。

开源数据库使用比例大幅上升

郑晓军,毕业于复旦大学计算机系,获硕士学位。多年来,他一直专注于分布式数据库和面向对象数据库的技术研究,曾经在全球著名的几大数据库企业中任职,非常具有传奇色彩。他,1992年加入Sybase,任市场总监;1996年加入Informix,任技术咨询总监,参与了多项数据仓库的设计和商业智能系统的实施;2001年,Informix被IBM并购,遂加入IBM,出任IBM中国软件实验室信息管理技术拓展经理和IBM数据仓库Netezza产品的渠道业务经理;2012年加入Oracle,前后担任亚太区Exadata资深技术顾问和Oracle中国区新兴技术解决方案部首席架构师。

作为业内知名大咖,郑晓军加入瀚高软件后出任瀚高软件CTO,主要从事瀚高软件数据库产品的技术研发工作。十多年数据库行业的从业经历,让郑晓军能非常敏锐地洞察到数据库软件和应用环境发生的变化。

郑晓军认为,数据库市场的变化主要有几个方面:

第一,商业数据库市场进一步集中。随着Informix被收购、IBM软件部衰落、DB2市场萎缩、普通商业数据库市场(OLTP及OLTP/OLAP混合模式)进一步集中,Oracle一家独大,许多企业核心及主要的数据库系统基本由Oracle承担。微软虽然推出Linux版本的SQL Server,但其份额很小,主要市场在Windows服务器上。

第二,开源数据库的使用比例大幅度上升。互联网公司、新兴企业,乃至传统大型企业都在考虑开源数据库的解决方案,数据库的应用有向轻数据库应用模式变化的迹象。在开源数据库中,MySQL的份额最大,但其社区被Oracle把控。

第三,数据仓库市场,传统的龙头Teradata发展不大,Oracle的Exadata推出后,拿下了一些单子,其他企业均在萎缩。开源的分布式文件系统(Hadoop、Spark等)大数据项目也瓜分了一部分市场。

同时,对于数据库应用,存在"轻数据库"的现象,对数据库功能的要求有所降低,这跟开源数据库的应用有关。应用环境上,在云(公有云、私有云)上提供数据库/仓库的服务,将成为未来的一个趋势。

中国数据库市场格局未来变局

Gartner发布报告显示,在2016年~2018年,AWS、微软、阿里云、Oracle、谷歌位列全球云数据库市场份额前五,而Oracle数据库服务依然保持了66%的增速。同时,国内的华为、阿里等推出不同类型数据库产品等,在市场引起了巨大反响。而瀚高软件则提出,用开源软件的商业版本改变中国基础软件产业格局,是一条行得通的捷径。

面对市场这些纷繁的变化,目前中国基础软件市场格局特别是数据库市场格局未来会发生怎样的变化呢?

郑晓军认为,Oracle公司虽然裁员,但其传统的业务部门变化不大。由于一些大型单位、企业的区域性许可到期更新,Oracle在中国传统领域的业绩短期内是上升的。Oracle裁员集中在云计算团队,对数据库市场的格局影响不大。

传统企业上规模的交易数据库以前都是运行在高端的IBM小型机上(即常说的IOE),如今的趋势是一般采取x86系列的PC服务器,甚至是ARM作为CPU芯片的服务器。为了提高系统的处理能力,需要采用集群的架构。同时,一些互联网应用并发吞吐量的要求甚至远远高于传统企业集中式的大型系统,因为成本原因,更不可能选用传统的集中式架构了。

阿里、华为等推出了运行在分布式集群环境下的、多个节点组成的、能够比较"优雅"地支持交易处理的数据库系统。在分布式环境下,跨节点的交易处理是最耗时间的,也是系统扩展性的障碍,这是一个理论上的限制。不过,在日常的实践中,用户在数据模型、应用架构设计上有很多空间可以利用、提升。即便用普通的数据库也能够支撑非常大规模的应用系统,如目前的大多数互联网和电子商务应用。

目前,业界的技术焦点在于采用什么样的手段对分布式事务进行排序,是"中心时钟"还是"分布式时钟"?"逻辑时钟"还是"物理时钟"?瀚高数据库已有的方案属于"中心逻辑时钟"类,适合在局域网内构建多节点数据库群集。对于分布式和物理时钟,也正在研究并跟进。目前,掌握基础技术,提供稳定、可靠、对企业级应用的数据库产品是瀚高软件的优先任务。

郑晓军认为,中国数据库市场的格局在未来几年肯定会发生改变。对于应用来说,数据库之间的差距没有想象的那么大,Oracle也没那么神秘和高不可攀。今天,即便是在硅谷,年轻的一代使用Oracle的人数也在大幅度减少。使用Oracle数据库不是好不好的问题,而是有没有必要的问题。

未来,开源的数据库,包括云计算上提供的开源数据库服务,会得到广泛应用。大量的政府部门、生产业务类系统会有更多的国产数据库出现。Oracle的市场会被压缩在一些传统、核心的数据库系统上,并在更长的时间周期中,随着应用架构的更新逐渐被替换。

以开源发展国产数据库系统切实可行

中国的国产数据库发展已经很多年了,实际情况不甚理想。郑晓军认为,究其原因来说,有以下几个方面:

稳定性:数据库,稳定性第一,重于性能。开源软件得到全世界用户的广泛使用,软件研发中的缺陷暴露得彻底,产品稳定性可与商业软件比肩。而很多自研的系统很难走入良性循环,一些有份量的客户会以"不敢用"来推辞。

应用生态:市场的接受度、应用开发商的接受度是数据库软件的生命。开源的产品是"自带"生态的,而闭源产品在扩展生态方面是一个难以逾越的坎儿。

重复发明轮子:数据库软件并非每一行代码都是高深的技术,它是由很多成熟的解决方案和实现逻辑与算法构成的。很多经典的实现,都已被无数计算机专业学生作为习题做过。作为数据库产品,实际上是一个工程,需要严丝合缝地把无数零件组合到一起,并让机器正常运转。因此,对于很多完全掌握了制造方法的零件,没必要重新生产一遍。

开源的社区在技术领先性方面能够保持相当的水准,全世界人民都看着,各种建议、各种评论影响着社区。

 

利用开源为基础发展国产数据库系统,是一个切实可行的发展之路,也是符合市场规律的一个策略。它本质上并不依赖政策的扶植,本身就有明确的市场需求支撑。成效就是以合理的投入,自主地快速成长,而且掌握前沿数据库技术。

郑晓军认为,利用开源发展国产数据库面临三大挑战:

一是开源协议的制约。开源并不是随便用的,尤其是想基于它去发展自己的技术、产品和市场。PostgreSQL是整个数据库(甚至是开源世界)业界唯一的一个BSD协议的开源资源。它本身就是鼓励开放、创新的。在这个平台上已经有好几个成功的商业产品问世,如Greenplum、Netezza、RedShift、Citus等。

二是对开源代码的掌握程度。使用开源不等于抄袭和不劳而获。对于使用的开源代码,需要安排资源掌握,并思考自己未来的改进和创新。

三是技术实现上是否分叉。是不是要分叉、什么时间分叉、怎么分叉?自身的产品发展计划如何与社区的发展吻合?哪些技术要跟踪、哪些应该走自己的路子?

瀚高软件真正对于PostgreSQL的研究始于2009年,大部分时间花在源代码的了解、梳理、掌握上,起初主要为满足本区域客户(山东)的一些需求。近两年,瀚高数据库增加了安全可控的特性,产品已符合相关国家级权威资质认证。

在生态建设上,由于不少用户不理解PostgreSQL与MySQL的本质区别,大家抱着使用者的心态更多一些。

合适的开源商业模式是关键

利用开源,成功实现盈利并发展成为独角兽企业在基础软件领域也不在少数,但是做法多有不同。有的企业通过订阅收费,有些通过提供实施、咨询培训等服务赚钱,有些提供商业组件等实现盈利和发展。这一切的关键在于是否拥有一个合适的开源商业模式。

郑晓军认为,瀚高软件采用的开源商业模式的出发点与众不同:瀚高软件定位于中国本土数据库厂商,并不局限于开源数据库的外围服务,而是以开源技术为基础,致力于发展成为国际领先的数据管理综合解决方案提供商。

瀚高软件最初是以提供Oracle数据库售后服务起家的,在山东拥有大量的Oracle售后服务的客户。同时,瀚高软件也在做数据复制工具HVR的业务。这些业务都在持续推进,并都是可以实现盈利的业务。

瀚高软件也提供开源服务,目前正在为太平保险等企业提供服务,因为强大的技术背景、深厚的数据库服务经验,以及一流的人才队伍,使其服务受到用户的高度认可。

开源软件离不开社区。郑晓军说,瀚高软件参与社区的活动经历了从外围服务、贡献代码到核心参与这一过程。长久以来,瀚高软件承担PostgreSQL社区本土企业的责任,如PostgreSQL资料的中文翻译大多出自瀚高软件,为社区提交数据库日志分析工具xlog等。目前瀚高软件开始向社区投放资源,成立北美研究院,吸引来自中国、加拿大、巴基斯坦的研发人员;积极参与社区的研发规划、参与主要代码的开发;协调国内产品研发与社区主线的协同。

数据库的明天 瀚高的未来

对于基础软件特别是数据库未来的发展方向,郑晓军认为有几个方面值得关注:

1、分布式,发展大规模、跨区域的分布式架构,同时支撑OLTP/OLAP的业务场景。

2、NVRAM,以NVRAM作为主要存储介质,提供快速随机访问。

3、发展多样化存储与接口。接口的丰富性,除了传统SQL,提供图数据库、知识推理、机器学习等各类接口。

4、适应云计算服务模式,以云服务的模式交付市场。

对于瀚高数据库而言,首先支持政策市场,立足价值市场;提供多层次的服务:围绕开源的服务、提供数据库扩展、企业级国产数据库;积极参与社区,参与核心研发,把握发展方向;把自己打造成一个本土的,掌握数据库核心技术的一支力量,做一个有技术含量的中流砥柱。




版权声明:

凡本网注明”来源:中国软件网(http://www.soft6.com)”的所有作品,版权均属于中国软件网或昆仑海比(北京)信息技术有限公司,未经本网书面授权,不得转载、摘编或以其它方式使用上述作品。

任何行业、传播媒体转载、摘编中国软件网(http://www.soft6.com)刊登、发布的产品信息及新闻文章,必须按有关规定向本网站载明的相应著作权人支付报酬并在其网站上注明真实作者和真实出处,且转载、摘编不得超过本网站刊登、转载该信息的范围;未经本网站的明确书面许可,任何人不得复制或在非本网站所属的服务器上做镜像。

本网书面授权使用作品的,应在授权范围内使用,并按双方协议注明作品来源。违反上述声明者,昆仑海比(北京)信息技术有限公司将追究其相关法律责任。