2020开源数据库行业状态报告

公先生 译 2020-05-17 10:00:00
作者介绍

Matt Yonkovit,Matt是Percona的CEO。自1990年代中期以来,他一直作为DBA和系统管理员来研究关系数据库。在加入Percona之前,Matt在MySQL和Sun Microsystems担任解决方案架构师,帮助为《财富》 500强公司和Alexa评级最高的公司构建架构。

 

本文翻译、整理自 Matt Yonkovit 撰写的博客文章,原文共分为四部分:

 

  • Baseline Data and the Size of the Market

  • Migrating from Proprietary Software to Open Source

  • The Most Popular Open Source Databases 2020

  • When is Open Source Not Really Open

 

以下是前3篇的主要内容。

 

数据库市场

 

首先看下Gartner去年的数据:

 

  • 全球数据库管理系统收入约为460亿美元

  • 总体同比增长约18%

  • 云数据库占了这一增长的68%

 

这里的 “云数据库”  定义可能有些争议:有些人用 “云数据库” 来指代在云服务上运行的任何数据库,有些仅指在云提供商的数据库即服务(DBaaS)中运行的数据库。但无论哪种方式,这种增长与趋势都说明:数据库行业的游戏规则已经变了。

 

在未来五年甚至十年内,即使用最激进的方式估算,全部业务都运行在云上是不现实的。实际上如果以行业增长为模型,即使未来5年内20%的内部数据库是自建部署的,而80%的数据都在云中(已经是一个很激进的数字),这仍是一个250亿美元的市场。

 

混合与多云环境

 

很多公司并未采用单一的云厂商,他们的大多数业务都运行在混合环境和多云环境中。调查数据显示,有61%的企业已经拥有混合环境。

 

 

很多公司的业务部署,都采用了可移植性的战略,以确保它们可以在不同的环境中运行。Run Anywhere/Run Everywhere 已成为未来应用程序设计的必要条件。

 

开源数据库市场增长

 

数据库是一个很大的市场,并且会越来越大。云和开源数据库的增长速度甚至超出了行业平均水平,由于公开信息很少,目前很难得到具体的相关数字。Gartner对整个市场发表了一些报告,却并未具体讨论规模和成长。像Oracle这样的公司也并未透露其与开源数据库有关的特定收入。

 

通过不同的公司、云提供商、分析师等提供的可用市场数据来估计,这一细分市场的年收入在7-8亿美元之间。这包括从云提供商处购买开源软件数据库。

 

开源数据库的增长率远高于行业平均水平,总体看来约为45-50%。一些供应商增长更迅速,MongoDB报告在第三季度,他们的Atlas DBaaS占其总收入的40%(去年同期为21%)。Atlas在最近一个季度的收入增长了185%以上。

 

从商用到开源

 

开源数据库增长的两个重要因素:

 

  • 新应用程序的开发

  • 来自传统商用数据库的迁移

 

目前很多公司的大型复杂业务仍运行在传统商用数据库上,考虑到导致迁移风险与成本,商用与开源共存的现象很普遍。

 

比如:SQL Server+MySQL或Oracle+MySQL。

 

 

值得注意的是,并非所有的迁移都是简单的后端数据库替换,更多的是关于整个技术堆栈的替换,并且涉及从上到下的重做。

 

例如,从Oracle迁移到MongoDB 可能需要使用完全重新设计的云原生应用来替换整个原有架构,这里可以看到对复杂应用程序所做了更大的调整。

 

谁在推动当前的开源和云数据库增长?

 

一句话答案:开发人员。

 

 

 

过去,DBA或基础架构团队通常会努力整合,并降低所使用技术的复杂性。这使许多公司过于依赖单一的商用数据库产品(比如 Oracle 或者 SQL Server全家桶)但现在这种情况已经成为历史,更多优秀专业的数据库产品被设计出来。开发人员和架构师越来越多的倾向于选择这些新技术,多数据库的趋势日益明显。

 

 

在当前的数据库环境中,开发人员有着比以往更多的选择。我们已经在很多大型公司中看到了相同的模式。

 

 

各个开发团队选择了不同的技术。而DBA、SRE、SA等角色将接管并长期支持这些技术。当然这会使公司内部形成极其复杂的技术矩阵。

 

随着使用的熟练和效率的提升,基础架构团队逐渐成为“产品开发团队”,构建自动化的工具和架构,以支持变化迅速的技术堆栈。复杂的环境可能导致许多问题,而且难以整合到单个数据库技术中,但这是未来一个重要趋势。

 

2020年最受欢迎的开源数据库

 

下表对比了3个来源的数据:Percona调查问卷、DB-Engines排名、Stack-Overflow调查问卷。

 

尽管存在一些差异,但在不同的调查和来源中,最受欢迎的开源数据库排名大致相似。

 

 

DB-engines显示,开源与商业数据库的差距正在缩小:

 

 

根据DB-engines的数据,以下是根据总体受欢迎程度的排名。截至2020年3月,MySQL的流行度仍是PostgreSQL和MongoDB的2倍。

 

 

Stack-Overflow 每年都会进行大型开发人员调查(2019年有90,000名受访者)。以下是开源数据库 2018-2019年之间的使用率差异。

 

 

1、MySQL数据库速览
 

 

 

MySQL可以用一字概括,稳:

 

  • 具有最大的安装基础,DB-Engines排名比下一名高出2倍以上,如果算上所有分支版甚至可以超过oracle,无愧为最流行的开源数据库。

  • 尽管占有率很大,但许多公司都在运行各种不同的MySQL。

  • Oracle本身有数量可观的MySQL Enterprise(与Community社区版相比有一些功能差异,并且是付费的)。

  • Percona也具有适用于MySQL自己的版本,该版本100%的开源,并且包含增强功能和企业功能。

  • 也有许多公司运行自己的定制版本。

 

 

MySQL的优点:

 

  • 庞大的安装基础

  • 易于上手

  • 长期的追溯与完善

  • 第三方服务的全面覆盖

  • 替代方案丰富

  • 良好的社区贡献

 

适用的场景:

 

  • 大量用于后端的第三方应用程序

  • Web应用程序

  • 电子商务:零售客户群通过MySQL支撑了爆发式增长的业务

  • 新应用程序开发一直是MySQL的最佳选择

 

MySQL社区:

 

  • 自从MySQL被收购Oracle之后,在稳定性和功能上都大大增强

  • Percona之类的公司已经在性能、可扩展性和功能方面为MySQL带来了全新的改进

  • Facebook、阿里巴巴、腾讯和其他公司为社区贡献了许多代码和功能

  • 生态系统中的新公司也在积极参与贡献力量。例如,PlanetScale等公司提供的Vitess横向扩展方案。

 

对MySQL未来的看法:

 

  • 会持续对现有功能进行完善与改进,但不会有大规模的创新、飞跃。

  • MySQL社区将致力于使其对开发人员更具吸引力,包括增加新功能、对开发人员更友好。

 

注意事项:

 

  • 对于大型的老旧应用,MySQL并不是很好的迁移目标

  • MySQL和MariaDB之间仍然存在差异(它们是不同的)

  • 人才紧缺,真正的专家总是不容易找到

  • 一直在稳定而渐进的创新,但没有全面的增强

 

2、PostgreSQL数据库速览
 

 

 

PostgreSQL已有23年的历史了,在过去的几年中,PG出现了大规模的普及和增长。DB-Engines显示其受欢迎度在过去四年中翻了一番。无论是云厂商的数据,还是分析师的经验都证明了这一爆炸性增长。

 

PostgreSQL的大部分增长来自老旧业务的迁移。PG良好的开放性也促进了其使用率的增长,可以在第三方程序、硬件和系统中进行嵌入、修改和加强。

 

 

PostgreSQL的优点:

 

  • PostgreSQL是完全开放的,其背后没有任何公司实体,这使其成为一个真正的开放项目。

  • 开放的许可使它易于根据需要进行部署、嵌入和修改。

  • 具有完善的功能和完整的存储过程语言。

  • 对于大多数传统数据库开发人员和DBA而言,学习和提升更容易。

  • 有很多企业扩展和功能选项可用。

  • 在服务支持和DBaaS上有很多选择空间

 

适用的场景:

 

  • 旧版数据库迁移,PG在整合企业功能和过存储过程语言方面做得非常出色,这使其成为非常流行的迁移目标。

  • PostgreSQL的丰富功能集和强大特性,是业务构建新的OLTP应用的好选择。

  • GIS应用程序:PostgreSQL中的地理空间支持非常强大。

  • 边缘和嵌入式系统:许可证的开放性使其成为嵌入第三方项目、产品和系统的绝佳选择。(比如很多国产数据库)

 

PostgreSQL社区:

 

  • PostgreSQL社区是强大而热情的。

  • 主流云厂商、第三方提供商(如Percona,EnterpriseDB,CrunchyData,2ndQuadrant,Pivotal)和大型企业都对PostgreSQL有所贡献。

  • 提供支持和服务的公司很多,其中很多公司在标准PG数据库上提供增强功能。

 

对PostgreSQL未来的看法:

 

  • 目前PostgreSQL受重视程度很高,前途光明,预计会持续增长。

  • PostgreSQL的开放许可能导致更多“兼容”产品,用户有被锁定风险。

  • 注意,并非所有的PostgreSQL产品都是真正的开放,有些只是“开放源代码兼容(open source compatible)”。

 

注意事项:

 

  • 并非所有PG服务提供者都是开放的,DB选型前要注意,以确保可移植性。

  • 一些第三方扩展和附加组件的使用需要额外的工作量

  • 组件的支持程度很依赖其作者

  • 很多功能对于精通传统关系概念的人来说更容易学习,但对新入门者却不易掌握。

 

3、MongoDB 速览
 

 

 

在2020财年第三季度的财务业绩中,MongoDB宣布总收入为1.094亿美元,同比增长52%。其中MongoDB Atlas收入占第三季度总收入的40%,同比增长超过185%。Atlas拥有庞大的用户体量,截至2019年10月31日,已有超过15,900名客户使用。

 

MongoDB收入增长的因素有很多:功能扩展、价格上涨和产品变更。但仅凭收入很难衡量MongoDB的总体使用率。DB-engines可以看到一些增长,但并没有上面公开的收入和客户数量显示的那么多;Stack-Overflow 调查显示MongoDB使用率较为平坦;Percona与MongoDB相关主题的Web流量同比增长了20%以上。

 

 

MongoDB的优点:

 

  • 灵活的模式,NoSQL将模式控制权交给开发人员

  • 将文档数据无缝转换为JS/Go/Python/Java本地对象,而不是SQL数据结构。

  • MongoDB的高可用性设计一开始就围绕副本集构建,轻松实现了无停机维护和自动故障转移。

  • 内置水平扩展支持最多数百个分片,是通用数据库中最好的大数据解决方案。

 

适用的场景:

 

  • Web(尤其移动端) 能够同时实现“big”和“fast” ,将模式控制权交给开发人员,减少迁移迭代时间。

  • 游戏(尤其移动端) 存储灵活、强扩展能力以及更易用的分片

  • MongoDB灵活的文档存储非常适合快速发展变化的业务要求,使其成为许多SaaS业务的流行后端DB。

 

MongoDB社区:

 

  • IPO前:很多黑客与贡献者支持,更多的开放性。

  • IPO后:官方的MongoDB认证,极客精神缺失。

  • 与其他数据库相比,MongoDB社区的控制更严格。

 

MongoDB未来的看法:

 

  • MongoDB开发的精力正在远离核心数据库服务。

  • MongoDB Inc的前身是10gen,旨在成为在线服务的完整平台。目前的MongoDB在Atlas服务中添加了文本搜索,云自动化,移动集成等功能,但这些都是封闭源。

  • 由于主要功能都投入在Atlas中首发,使用MongoDB的企业是否会转移业务到其云平台么?

 

注意事项:

 

  • SSPL不是公认的开源许可证,并非所有人都认可MongoDB真正开源。

  • SSPL允许和禁止的内容存在不确定性,可能阻碍社区和第三方的使用。

  • 专注于Atlas作为其平台,存在被Atlas绑定的风险。

  • MongoDB是一个生态系统受到严格控制、限制性很大的开源项目。这意味着社区贡献以及第三方服务支持会逐渐落后。

 

4、MariaDB 速览
 

 

 

DB-Engines显示MariaDB在过去几年中取得了显著增长,但它的普及率不到MySQL的1/10。MariaDB在很多Linux发行版中是默认的,这有助于其在社区中的发展,但目前尚未取得重大的商业成功。

 

使用MySQL和MariaDB混合环境的公司的数量有所增加,但这通常不是战略决策导致,而是更多的偶然情况。MariaDB在云中的增长速度较慢,人们往往倾向于使用MySQL。

 

尽管MariaDB的增长正在全球范围内进行,但我们发现在北美以外地区(尤其是在欧洲和亚洲)增长的速度要快得多。

 

 

MariaDB的优点:

 

  • MariaDB趋向于创新突破,提供了很多有趣的新功能来尝试解决各种问题。

  • 一直保持与MySQL的兼容性,MySQL用户更容易迁移并开始使用它。

  • MariaDB基金会非常乐于助人,专注于社区。

  • 列数据库允许混合使用,推动“智能交易(Smart Transactions)”。

 

适用的场景:

 

  • 快速开发,开发人员都喜欢MariaDB的简单易用和一些功能。

  • 与其前身一样,MariaDB在运行Web应用中享有很高的声誉。

  • Oracle的替代品:MariaDB试图将自己定位为Oracle的替代品,但在这个领域仍然落后于PostgreSQL。

 

MariaDB社区:

 

  • MariaDB分为MariaDB基金会和MariaDB公司。基金会负责基本代码,并通过赞助和其他方式提供资金。这两个实体并存,很难将它们分开。

  • MariaDB有大量用户,他们已经部署并热衷于使用MariaDB来处理各种工作,公司的知名度和数量也没有MySQL/PostgreSQL的那种规模,提供一些企业可以选择赞助的付费功能。

  • 看好MariaDB前景并为之投资的公司很多,如Booking.com,Microsoft,阿里巴巴,腾讯和IBM。

 

对MariaDB未来的看法:

 

  • MariaDB确实在为企业领域的竞争做准备,特别针对金融等行业。

  • 他们一直在试图避免成为MySQL的衍生产品。

  • MariaDB正在努力推出自己的GA版DBaaS。

  • 随着MariaDB进入企业领域,他们正在删除一些更具实验性的功能,从而专注于提供更精简,稳定的企业服务。

 

注意:通常很难将MariaDB基金会与MariaDB Corp.分开。

 

注意事项:

 

  • MariaDB不再完全与MySQL完全兼容,一旦迁移过来,就很难后退。

  • 但核心RDBMS与MySQL的重叠仍然很大,因此两个数据库之间的选择更取决于个人偏好。

  • 过去增加的新功能可能导致一些异常和问题。目前精简了很多,以实现更多企业应用。

 

>>>>

原文地址

 

  • https://www.percona.com/blog/2020/04/07/the-state-of-the-open-source-database-industry-in-2020-part-one/

  • https://www.percona.com/blog/2020/04/14/the-state-of-the-open-source-database-industry-in-2020-part-two/

  • https://www.percona.com/blog/2020/04/22/the-state-of-the-open-source-database-industry-in-2020-part-three/

  • https://www.percona.com/blog/2020/04/30/the-state-of-the-open-source-database-industry-in-2020-part-four/

     

作者丨Matt Yonkovit 公先生 译
来源丨万能修实验室(ID:dropudatabase)
dbaplus社群欢迎广大技术人员投稿,投稿邮箱:editor@dbaplus.cn
 

 

从过去40年至今,数据库的形态基本经历了传统商业数据库、开源数据库到云原生数据库的演进过程。云时代下数据库将如何革新与创变?企业核心数据库迁移与建设如何安全平稳展开?来Gdevops全球敏捷运维峰会北京站寻找答案:
 
  • 《All in Cloud 时代,下一代云原生数据库技术与趋势》阿里巴巴集团副总裁/达摩院首席数据库科学家 李飞飞(飞刀)

  • 《AI和云原生时代的数据库进化之路》腾讯数据库产品中心总经理 林晓斌(丁奇)

  • 《ICBC的MySQL探索之路》工商银行软件开发中心 魏亚东

  • 《民生银行在SQL审核方面的探索和实践》民生银行资深数据库专家 李宁宁

  • 《OceanBase分布式数据库在西安银行的落地和实践》蚂蚁金服P9资深专家/OceanBase核心负责人 蒋志勇

  • 《金融行业MySQL高可用实践》爱可生技术总监 明溪源

     

让我们9月11日在北京共同眺望数据库发展变革更长远的未来!

 

活动预告