当前位置: 首页 > 科技观察

数据库不再是最难国产化的IT基础设施

时间:2023-03-17 16:23:32 科技观察

近期,美国芯片限制政策问题发酵。前几天有朋友说,他本来以为数据库是最难本地化的,结果发现不是。的确,相对于产业链特别长的芯片等IT部件,数据库等软件相对更容易实现国产化。目前,在信息技术领域,中国多年来受益于世界产业分工和国际合作,发展迅速,但发展重心仍在应用领域。在基础领域,中国一直承担着世界工厂的角色,没有参与先进技术研发和关键装备的研制。这些领域研发投入巨大,研发周期长,单一行业全球产业规模不大。我在网上看到很多完全否定我国IT产业的评论,对IT产业本土化的态度也极为悲观。这些评论很多都是来自某个行业的从业者,所以也很受欢迎。其实,目前我国IT行业本土化面临的问题是多方面的。很多行业不是我们做不到,而是在国际分工合作的模式下。过去不需要投入巨资浪费时间。做。当逆全球化浪潮高涨时,一个国家和民族为了生存,不会在很多方面考虑成本最优方案。我觉得大部分的短板还是可以在三五年内弥补的。或许我们会面临多花钱、用劣质产品的问题,但熬过这个困难时期,在某些领域形成质优价廉的中国方案,也不是没有可能。回到数据库,其实这些年我从来没有想过数据库的本地化是个大问题。过去几年,中国数据库产业的本土化发展并不顺利。最大的问题不是国产数据库发展缓慢,国产数据库技术不够等问题,而是我们对知识产权缺乏尊重。我们国内的关系数据库产业起步于1999年左右,而国外关系数据库产业的大发展是20世纪90年代中期才开始的,起步也不晚。与此同时,韩国开发了Tibero、Altibase等商业数据库产品,日本一些大公司也对PG开源项目进行了巨额投资。事实上,国内第一批数据库厂商出现在我国,大梦、仁达金仓等相继出现。由于我国在知识产权领域缺乏保护,数据库领域横行。80、90年代的大部分银行交易系统都是基于informix数据库的,不说Informix数据库对银行交易系统有多适合。是因为第一批计算机化银行从美国回来时带来的Informix。随着我国IT产业的大发展,那些可以在线下载,不需要实体授权的数据库产品已经成为我们应用的主流。从政府机构到小微企业,所有的数据库都是OracleEnterprise。2000年初,一个外地DBA来深圳找我谈一件事,说他要去一家公司咨询数据库规划。用户居然问他要不要考虑引入一些其他的数据库产品,而不是只用Oracle数据库。他有点惊讶。他在美国的客户只会选择最核心的数据库Oracle,而一些非核心的客户会考虑使用稍微便宜一点的SQLSERVER,或者干脆使用MySQL。国内的一家公司,居然用了几十套Oracle企业版数据库,就连并发性不大的系统,比如办公自动化,都是Oracle企业版。他认为使用Oracle标准就完全足够了。我没有勇气说出为什么,因为那也不是一个好的理由。正是我国在知识产权领域缺乏保护,导致很多用户认为使用国产数据库比使用Oracle更昂贵。不管系统的大小,只要有一套Oracle就可以做到的一切都是非常顺理成章的。当前形势下,我国自主IT产业的发展被迫走上坡路。在此形势下,各种本土化解决方案的落地迫在眉睫。在数据库领域,我目前认为运河已经完成,我们只需要等待水来。无论是自主代码开发的数据库产品,基于开源协议的数据库产品,还是我国自己的数据库开源项目,发展都已经达到了一定的规模。说到数据库本地化,不仅仅是关系数据库。去年我们帮一个客户梳理他们的数据库本地化方案的时候,梳理了他们目前使用的数据库产品类型。最终得出的结论是,除了MongoDB、Redis等少数数据库产品,目前他们使用的大部分数据库的本地化都可以找到合适的解决方案,数据库替换本地化是完全可行的。好消息是,在非关系型数据库领域,其实我们国产数据库的发展比较好,自主率比RDBMS要高很多。但是,现在对数据库本地化的看法大相径庭,我今天说的也只能代表一家之言。很多人认为国产数据库产品每一行代码都必须是原创的,基于开源代码的数据库产品不能作为本地化替代品。我最不同意这个观点。即使在Oracle数据库中,也使用了大量的开源代码。为什么这几年有这么多不同架构的CPU厂商卷入CPU安全漏洞风波?还不是因为INTEL、IBM和一些ARMCPU厂商都使用同一个开源代码就有问题。每一行代码都必须是独立的,并且仅限于某些国家安全级别极高的区域。如果用于商业数据库领域,将是一种资源浪费。只要知识产权不存在瑕疵,充分利用开源代码是加速我国数据库产业发展的最佳途径。可能有朋友要说,你举的CPU例子不就说明开源代码不安全吗?开源代码存在安全问题毋庸置疑,但自研代码是否更安全?可能不会。勇敢拥抱开源,充分利用开源,积极参与数据库开源项目,贡献中国智慧。这应该是一条更适合我国数据库产业发展的路径。非常可喜的是,中国基因已经有数款开源数据库产品,TiDB、Oceanbase、openGauss等中国开源数据库产品甚至具有一定的国际影响力。随着数据库国产化的深入,我们面临的最大问题应该是如何用好国产数据库。这个问题并不像国内数据库产品的更新换代那么乐观。人才匮乏、国内数据库行业生态不完善、周边运维、优化工具匮乏等一系列问题都会影响数据库国产化后IT系统的健康运行。最近在研究SQLServer的运维知识图谱。国庆期间花了一个多星期的时间看了一些微软的文档。我发现国外商业数据库产品的成功确实不是偶然的。申请很有帮助。如果微软的文档算90分的话,那么和国内大部分数据库相比,这方面几乎可以算是接近0分了。数据库不再是最难本地化的IT基础设施。甚至可以说,数据库国产化只等着企业IT决策者打响发令枪。既然本地化替代是不可避免的,不如早点开始,犹豫了就做。