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

2020StateoftheOpenSourceDatabaseIndustryReport

时间:2023-03-15 19:14:30 科技观察

本文翻译整理自MattYonkovit撰写的博文。原文分为四个部分:BaselineDataandSizeoftheMarketMigratingfromProprietarySoftwaretoOpenSourceTheMostPopularOpenSourceDatabases2020WhenisOpenSourceNotReallyOpen下面是前三篇的主要内容。#数据库市场先来看Gartner去年的数据:全球数据库管理系统收入约为460亿美元,整体同比增长约18%,云数据库占这一增长的68%。这里“云数据库”的定义可能有些争议:有些人将“云数据库”一词用来指代运行在云服务上的任何数据库,而有些人则简单地指代运行在云提供商的数据库即服务中的数据库(DBaaS)。但不管怎样,这种增长和趋势表明数据库行业的游戏规则已经改变。未来五年甚至十年,即使是最激进的估计,所有业务都跑上云也不现实。事实上,如果以行业增长为模型,即使未来5年内20%的内部数据库是自建和部署的,80%的数据在云端(已经是一个非常激进的数字),这也是仍然是一个250亿美元的市场。#混合和多云环境许多公司并没有采用单一的云供应商,他们的大部分业务都运行在混合和多云环境中。调查数据显示,61%的企业已经拥有混合环境。很多公司的业务部署都采用了可移植性策略,以保证可以在不同的环境中运行。RunAnywhere/RunEverywhere已经成为未来应用程序设计的必要条件。#开源数据库市场增长数据库是一个大市场,而且会越来越大。云和开源数据库的增长速度甚至超过了行业平均水平。由于缺乏公开资料,很难得到具体的相关数字。Gartner发布了一些关于整体市场的报告,但没有具体讨论规模和增长。像甲骨文这样的公司也没有透露他们与开源数据库相关的具体收入。根据不同公司、云提供商、分析师等提供的可用市场数据,该部门的年收入估计在7亿至8亿美元之间。这包括从云提供商处购买开源软件数据库。开源数据库的增长速度远高于行业平均水平,总体看来在45-50%左右。一些供应商增长更快,MongoDB报告称,他们的AtlasDBaaS在第三季度占其总收入的40%(去年同期为21%)。Atlas最近一个季度的收入增长超过185%。#开源数据库从商业走向开源的两个重要因素:新应用的发展来源于传统商业数据库的迁移。目前,很多公司庞大而复杂的业务仍然运行在传统的商业数据库上。考虑到迁移的风险和成本,商业和开源并存的现象很普遍。例如:SQLServer+MySQL或者Oracle+MySQL值得注意的是,并不是所有的迁移都是简单的后端数据库替换,更多的是整个技术栈的替换,涉及到从上到下的重做。例如,从Oracle迁移到MongoDB可能需要用完全重新设计的云原生应用替换整个遗留架构,而在这里你可以看到针对复杂应用的更大调整。#谁在推动当前的开源和云数据库增长?一句话回答:在过去,开发人员、DBA或基础架构团队常常努力集成并降低所用技术的复杂性。这导致很多公司过于依赖单一的商业数据库产品(如Oracle或SQLServer全家桶),但现在这种情况已经成为历史,更多优秀的专业数据库产品被设计出来。开发人员和架构师越来越倾向于选择这些新技术,多数据库的趋势越来越明显。在当今的数据库环境中,开发人员拥有比以往更多的选择。我们在许多大公司中都看到了相同的模式。各个开发团队选择了不同的技术。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本身有相当数量的MySQLEnterprise(与CommunityCommunityEdition相比有一些功能上的差异,并且是付费的)。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、Pivo??tal)和大型企业都为PostgreSQL做出了贡献。有许多支持和服务公司,其中许多提供对标准PG数据库的增强。对PostgreSQL未来的看法:目前PostgreSQL估值很高,前景广阔,有望持续增长。PostgreSQL的开放许可可能会导致更多“兼容”的产品出现,而用户有被锁定的风险。请注意,并非所有PostgreSQL产品都是真正开放的,有些只是“开源兼容”。注意:不是所有的PG服务商都是开放的,所以选DB前要注意,保证可移植性。一些第三方扩展和附加组件需要额外的工作组件支持取决于作者许多功能对于熟悉传统关系概念的人来说更容易学习,但对于新手来说很难掌握。3.MongoDB概况:在2020财年第三季度的财务业绩中,MongoDB宣布总收入为1.094亿美元,同比增长52%。其中,第三季度MongoDBAtlas收入占总收入的40%,同比增长超过185%。Atlas拥有庞大的用户群,截至2019年10月31日,已有超过15,900名客户使用。促成MongoDB收入增长的因素有很多:功能扩展、价格上涨和产品变化。但仅根据收入很难衡量MongoDB的总体使用情况。数据库引擎可以看到一些增长,但没有上面披露的收入和客户数量所暗示的那么多;Stack-Overflow调查显示MongoDB的使用率持平;Percona和MongoDB相关主题的网络流量同比增长超过20%。MongoDB的优势:灵活的模式,NoSQL将模式控制权交给开发人员将文档数据无缝转换为JS/Go/Python/Java原生对象,而不是SQL数据结构。MongoDB的高可用设计从一开始就是围绕副本集构建的,可以轻松实现不停机维护和自动故障转移。内置水平扩展,最多支持数百个分片,是通用数据库中最好的大数据解决方案。适用场景:Web(尤其是移动端)可以同时实现“大”和“快”,将模式控制权交给开发者,减少迁移迭代时间。游戏(尤其是移动端)存储灵活,扩展性强,分片更易用MongoDB灵活的文档存储非常适合快速增长和变化的业务需求,使其成为众多SaaS业务的热门后端DB。MongoDB社区:IPO前:大量黑客和贡献者支持,更加开放。上市后:官方MongoDB认证,缺乏极客精神。MongoDB社区比其他数据库有更严格的控制。MongoDB的未来观点:MongoDB的开发工作正在远离核心数据库服务。MongoDBInc,前身为10gen,旨在成为一个完整的在线服务平台。现在的MongoDB在Atlas服务的基础上增加了文本搜索、云自动化、移动集成等,但这些都是闭源的。由于主要功能首次被放到Atlas中,使用MongoDB的企业会不会把业务转移到它的云平台上?注意:SSPL不是公认的开源许可证,并不是所有人都同意MongoDB是真正开源的。SSPL允许和不允许的内容存在不确定性,这可能会阻碍社区和第三方的使用。专注于Atlas作为其平台存在与Atlas绑定的风险。MongoDB是一个开源项目,具有严格控制和限制的生态系统。这意味着社区贡献和第三方服务支持将逐渐落后。4.MariaDBQuickFacts:DB-Engines显示,MariaDB在过去几年取得了显着增长,但其渗透率不及MySQL的1/10。MariaDB是许多Linux发行版中的默认配置,这有助于其在社区中的成长,但尚未取得显着的商业成功。使用MySQL和MariaDB混合环境的公司数量有所增加,但这通常不是战略决策,更多的是意外。MariaDB在云中的增长速度较慢,人们倾向于使用MySQL。虽然MariaDB的增长正在全球范围内发生,但我们看到北美以外地区的增长速度要快得多,尤其是在欧洲和亚洲。MariaDB的优势:MariaDB倾向于创新和突破,提供许多有趣的新特性来尝试解决各种问题。保持了与MySQL的兼容性,使MySQL用户更容易迁移并开始使用它。MariaDB基金会非常有帮助并且以社区为中心。列式数据库允许混合使用,促进“智能交易”。适用场景:快速开发,开发者喜欢MariaDB的易用性和一些特性。与其前身一样,MariaDB在运行Web应用程序方面享有盛誉。Oracle的替代品:MariaDB试图将自己定位为Oracle的替代品,但在这方面仍然落后于PostgreSQL。MariaDB社区:MariaDB分为MariaDBFoundation和MariaDBCorporation。基金会负责基础代码,并通过赞助和其他方式提供资金。这两个实体并存,很难分开。MariaDB拥有大量已经部署并热衷于使用MariaDB来处理各种任务的用户。公司知名度和数量没有MySQL/PostgreSQL大,部分公司可以选择赞助付费功能。看好MariaDB前景并对其进行投资的企业有Booking.com、微软、阿里巴巴、腾讯、IBM等。对MariaDB未来的看法:MariaDB确实在为企业领域的竞争做准备,尤其是金融等行业。他们一直在努力避免成为MySQL的衍生产品。MariaDB正在努力推出自己的DBaaSGA版本。随着MariaDB进入企业领域,他们正在删除一些更具实验性的功能,以便专注于提供更精简、稳定的企业服务。注意:通常很难将MariaDBFoundation与MariaDBCorp分开。注意事项:MariaDB不再与MySQL完全兼容,一旦迁移过来,就很难返回。但是核心RDBMS仍然与MySQL有很大的重叠,所以这两个数据库之间的选择更多的是个人喜好问题。过去添加的新功能可能会导致一些异常和问题。目前精简了很多,实现了更多的企业应用。