2019年如果说计算机领域有什么东西很热闹,除了一直都很热闹的人工智能和区块链以外,当属数据库。仿佛一夜之间,数据库领域就遍地开花,各种各样的数据库层出不穷,如同雨后春笋一样冒了出来。
这两天又读了一篇文章,文章把国产数据库这一年里面的重大事件都列了一下,然后指出来现在是国产数据库的最好时机。而我们已经突破了数据库这座大山了。
我觉得这个说法很有意思。首先数据库到底有没有一座大山,这个问题颇为有待商榷。因为数据库领域不但是最古老的计算机软件领域之一,而且一直以来都非常的有开源氛围。
所以虽然说商业化的产品非常的成熟,但是开源的产品也同样的很成熟。在很多场合下,开源产品也是够用的。当然这种够用对真正意义上的商业和场景,也许就不够用了。
所以在我看来,数据库这个产品,如果别人已经搭好了舞台,结合自己的商业应用场景反复打磨,只要肯花时间仔细去打磨,总是可以做出一款适应自己场景的数据库改版的。
当然,这个适应自己应用场景的数据库改版,乃至魔改版,能不能够作为一个通用的数据库产品在外面服务应用场景完全不一样的其他客户,这就是魔改版和国外成熟商用数据库系统的区别。一个好的数据库,不一定是某个指标特别好的,但一定是四平八稳,在什么样的场景下都能够比较好的支持业务的。
考虑到当下的情况,这篇文章里,我决定一个具体的数据库产品都不提了。毕竟提一个数据库的产品,就多一点危险。万一我一不小心评价了之后,让这个数据库背后的厂商和公关们觉得我胡说八道损坏名誉怎么办。所以我聊聊一些共性的东西。
我很多时候觉得中国人可能更勤奋,但是不一定比其他国家的人都聪明。对于业务逻辑,勤奋可以高产,毕竟代码就是随时要扔掉的。但是对于底层基础架构,比如数据库这种东西的话。勤奋我觉得并不解决问题。最终一个产品怎么样,和投入的资源还是正相关的。
国外著名的Oracle的数据库开发团队,相关的加起来1000多人是至少的。国内的数据库团队呢?有些产品是大几十人做的,有些产品是小几十人做的。还有的产品,尽管吹的特别响亮,团队开发只有个位数的人。
如果一个数据库团队有上百人,那在国内就是大投资了。无论怎么说,人多力量大总是不会错的。所以我们即便加班成疯魔,能够弥补人数上投入的巨大差距吗?
国内数据库产品的第二个共性就是顶层领导是非常看重当前时刻对业务的贡献,给公司的盈利能力的。一个产品如果不能够立即产生钱的结果的话,那这个产品一般活不了多久。
如果一个产品真的能够这样存活下来,那多半就是忙于解决业务需要他们立刻解决的问题,或者上面有人罩着。总而言之,无数多的事实告诉我们,中国人做软件,都是急功近利的。
但是数据库领域真的没办法急功近利。于是,实际上出现的原创数据库,大多数都是基于某个开源数据库魔改。而魔改的主要目的是,先解决具体业务需要解决的问题。这样才能活下来。但是这样开发的后果就是没什么系统设计,没什么整体思考。最后搭出来的系统,多半来说是个四不像,只能针对特定场景活下来。
当然我们都能理解,求生欲的问题都是一样的。中国的环境决定了做基础架构的程序员里面10个要挂掉8个,只有活到最后的才能摘果子。
我比较佩服中国做数据库的人的另外一面是,会抓住某个点开始大宣传特宣传。比如说,AI热就说AI Native。至于实际上有没人工智能,甚至有没有猪工智能,都不重要了。如果说哪天纳米热了估计也会有纳米数据库。
睁着眼睛说瞎话的本事,我最佩服的还是中国做数据库的某些厂商。有云的卖云,有分的跑分。好不容易忽悠了一个客户上贼船了,客户满肚子牢骚,这边到处宣传客户非常非常满意。
无论如何,我觉得亩产万斤,并且还要赚钱,是数据库产业的现状。至于系统只在特定场景下工作的好好的,代码越写越乱,牛皮越吹越大,呵呵。不重要。