点击蓝字
关注我们
国产数据库的发展中,毫无疑问,通过借鉴先行者的经验,我们可以获得一定的后发优势。经过四十年的探索,国产数据库形成了三大源头:购买闭源代码吸收,依托开源代码迭代,自主研发从头开始。而在开源产品的基础上迭代,又以 MySQL 和 PostgreSQL 居多,那么到底这两条技术路线哪一条更值得长期投入和用户选择呢?
前文回顾 >
重要通告:受疫情影响,2021 数据技术嘉年华 改为线上举行,免费注册,欢迎大家参加第一次在“元宇宙中举行的数据技术嘉年华”。
MySQL 和 PostgreSQL 孰强孰弱?
关于 MySQL 和 PostgreSQL 孰强孰弱的话题,在社区中,两边的拥护者早已火药味十足的论争不休。但是最近(12月5日),Oracle 前首席软件工程师、MySQL 优化器团队成员,Steinar Gunderson从 MySQL 团队离职时,则是向 MySQL 开了一炮,并实名点赞 PostgreSQL,引发了业内剧烈的碰撞讨论。
他在个人博客上这样描述:
“MySQL 是款超烂的数据库,强烈建议大家认真考虑转用 PostgreSQL。
MySQL is a pretty poor database, and you should strongly consider using Postgres instead.使用 MySQL 就像走进了一个平行宇宙,这里有很多人都由内而外笃信着 MySQL 就是最先进的数据库产品。但我不行,我的工作经常需要向观众们讲解优化器的内部工作原理,所以我特别能感受到 MySQL 的种种设计是多么原始。
他还精确的指出了 MySQL 的本质问题:
无论你怎么看,在 Oracle 下的 MySQL 一直没有‘掌舵人’,在内部几乎快被抛弃。
一款缺少掌舵人的数据库,很难被认为是”有灵魂“的。
作者指出:
更令人震惊的是那些坚持认为一切都很好的人(似乎大多数MySQL用户和开发人员并没有真正使用其他数据库)。
这是我深有同感的一点,很多人都旗帜鲜明的声称,某某数据库是宇宙中最好的数据库,但是他们甚至对其他数据库一无所知或满怀偏见。
当然 Steinar 表达的仅仅是一个人的观点,但是可以帮助我们窥豹一斑。对于用户数据库的选择,我的主张,一定是应该客观的,从自身实际场景和需要出发,选择适合应用的、适合自身能力的产品,扬长避短。
国产数据库和 MySQL、PostgreSQL 的渊源
毫无疑问,MySQL仍然是当下全球最流行的开源数据库,自2009年Oracle通过收购SUN获取了 MySQL之后,就独拥全球最强大的两款数据库:商用的 Oracle、开源的 MySQL 。紧随 MySQL 的开源数据库,正是 PostgreSQL,而且其增长趋势迅猛 。
国产数据库和 MySQL
在2021年6月,Oracle官方在公众号发布了一篇文章,题目是:《GPL协议保障MySQL的自由免费开放》。这篇文章中指出:
GPL协议保障MySQL持续开源,满足信创自主安全可控目标,相较于其他数据库,在稳定可靠,持续创新,拥抱开放方面,有着独特的价值优势,充分利用自由开源软件,实现我国信息化产业的独立自主目标。目前在我国信创名单中的数据库厂家中,有多家数据库产品均和原生MySQL兼容。
文章中还追溯了操作系统的国产化历程:
openEuler是一款开源操作系统,内核源于Linux…基于Linux遵循GPL开源许可的“传染性”,openEuler以及其商业发行版同样遵循GPL开源协议。普华基础软件、麒麟软件、中科院软件所、拓林思等越来越多的操作系统厂商发布了基于op