阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

2019 年开源数据库报告:热门数据库、云基础设施分析与混合持久化趋势

  • 2019-07-10
  • 本文字数:3830 字

    阅读完需:约 13 分钟

2019年开源数据库报告:热门数据库、云基础设施分析与混合持久化趋势


准备好从商业数据库过渡到开源数据库了吗?想知道 2019 年哪些数据库最受欢迎吗?想知道内部云、公有云和混合云基础设施是否最适合你的数据库策略吗?或者,考虑在应用程序中添加一个新数据库,并想看看哪些组合最流行?我们在上个月的 Percona Live 活动中找到了所有你需要的答案,并将获得的见解分解为以下几个免费的趋势报告:


  • 使用最多的数据库:开源 vs. 商业

  • 云基础设施分析:公共云 vs. 内部云 vs. 混合云

  • 混合持久化趋势:使用的数据库数量 &顶级组合

2019 年的顶级数据库

那么,2019 年哪些数据库最受欢迎?我们将数据库分为开源数据库和商业数据库。


开源数据库


开源数据库是免费的社区数据库,其源代码可供公众使用,可以在其原始设计中修改或使用。MySQL、PostgreSQL 和 MongoDB 等是流行开源数据库的代表。


商业数据库


商业数据库是由商业企业开发和维护的,可以通过授权订阅使用,并且不能修改。Oracle、SQL Server 和 DB2 等是流行商业数据库的代表。

顶级开源数据库

MySQL仍然是排名第一的免费开源数据库,占开源数据库使用量的 30%以上。这并不奇怪,因为根据DB-Engines,MySQL 多年来一直保持在这个位置。



PostgreSQL以 13.4%的开源数据库用户比例位居第二,紧随其后的是MongoDB,占 12.2%,位列第三。根据 DB-Engines 的流行趋势排名,这也是可以预料到的,但是就在三个月前,我们看到,MongoDB 在“2019 年数据库趋势——SQL vs. NoSQL、顶级数据库、单数据库与多数据库使用报告”中排名第二,占 24.6%。


虽然开源数据库的前 3 名用户占比超过 50%,但我们也看到了 #4 Redis、#5 MariaDB、#6 Elasticsearch、#7 Cassandra和 #8 SQLite的良好表现。数据库ClickhouseGaleraMemcachedHbase等占了最后的 2%。

顶级商业数据库

在下面这幅图中,我们将看到一个独特的报告,它同时表示了混合持久化和迁移趋势:与开源数据库一起使用的顶级商业数据库。


我们已经看到了利用多种数据库类型来满足应用程序需求的增长趋势,并希望比较下组织如何在单个应用程序中同时使用商业和开源数据库。该报告还显示了正在迁移到开源数据库的商业数据库用户。例如,PostgreSQL连续两年是人气增长最快的数据库,其用户群中有 11.5%是目前正在迁移PostgreSQL的组织。


现在,我们已经解释了这个报告所代表的内容,让我们来看看与开源数据库一起使用的顶级商业数据库。



Oracle是世界上排名第一的数据库,它代表了超过 2/3 的商业和开源数据库组合。在这份报告中,令人震惊的是 Oracle 和第二名的Microsoft SQL Server之间的巨大差距,因为根据 DB-Engines,它们之间的差距要小得多。IBM DB2名列第三,占商业数据库与开源数据库组合的 11.1%。

按数据库划分云基础设施

现在,让我们看看按数据库管理系统划分的云基础设施设置。

公有云 vs. 内部云 vs. 混合云

我们询问我们的开源数据库用户,他们如何托管他们的数据库部署,以确定当前在内部云、公有云和混合云上部署的趋势。


令人惊讶的是,49.5%的开源数据库部署是在本地运行的,排在第 1 位。虽然我们预料到了这个结果,但我们对本地部署的百分比感到惊讶。在我们最近的2019 PostgreSQL趋势报告中,本地私有云部署占 59.6%,比该报告高出 10%以上。


公有云以 36.7%的开源数据库部署位居第二,与 PostgreSQL 报告中 34.8%的部署一致。然而,从这份报告看,混合云有了显著的增长,开源数据库的比例为 13.8%,而 PostgreSQL 部署的比例为 5.6%。



那么,哪种云基础设施适合你呢?下面是一个公有云、内部云与混合云的快速比较。


公有云


公有云是一种云计算模型,其中的 IT 服务通过互联网交付,通常通过订阅使用模型购买。公有云非常容易设置,不需要大量的前期投资,并且可以随着应用程序需求的变化快速扩展。


内部云


内部或私有云部署是专用于在其自己的数据中心(外部第三方供应商)运行的单个组织的云解决方案。在这种情况下,你有更多的机会定制你的基础设施,但是需要在硬件和软件计算资源上进行大量的前期投资,并且需要承担起持续的维护职责。这些部署类型最适合具有高级安全需求的组织、受监管的行业或大型组织。


混合云


混合云是将公有云和私有云解决方案混合,集成到一个基础设施环境中。这允许组织在公有云和私有云之间共享资源,以提高它们的效率、安全性和性能。这最适合需要内部基础设施的高级安全性以及公有云的灵活性的部署。


现在,让我们按开源数据库类型看看哪种云基础设施最流行。

开源数据库部署:内部云

在这副图以及下面的公有云和混合云图中,我们按照利用这种云基础设施的部署百分比来分类每个单独的开源数据库。


那么,哪些开源数据库是最经常部署内部云上呢?PostgreSQL 以 55.8%的内部云部署率排名第一,紧随其后的是 MongoDB(52.2%)、Cassandra(51.9%)和 MySQL(50%)。



根据报告,内部云部署不到一半的开源数据库包括 MariaDB(47.2%)、SQLite(43.8%)和 Redis(42.9%)。最不经常部署在内部云上的数据库是 Elasticsearch,只有 34.5%。

开源数据库部署:公有云

现在,让我们看看在公有云上部署的开源数据库的划分。


SQLite 是公有云基础设施中部署最频繁的开源数据库,部署占比的 43.8%,紧随其后的是 Redis,占 42.9%。MariaDB 的公有云部署为 38.9%,MySQL 为 36.7%,Elasticsearch 为 34.5%。



有三个数据库的公有云部署不到三分之一,其中 MongoDB 占 30.4%,PostgreSQL 占 27.9%,而 Cassandra 的公有云部署最少,仅占 25.9%。

开源数据库部署:混合云

既然我们已经知道了开源数据库是在内部云和公有云之间的划分,那么让我们来看看利用这两种计算环境的部署。


排名第一的利用混合云的开源数据库是 Elasticsearch,占 31%。与之最接近的混合云数据库是 Cassandra,只有 22.2%。



MongoDB 在混合云中的部署比例排名第三,为 17.4%,然后是 PostgreSQL 的 16.3%、Redis 的 14.3%、MariaDB 的 13.9%、MySQL 的 13.3%,最后是 SQLite 的 12.5%。

开源数据库部署:多云

平均而言,20%的公有云和混合云部署使用了多云策略。多云是使用两个或多个云计算服务。我们还查看了使用的云的数量,发现一些部署在一个组织中使用了多达 5 个不同的云提供商:


最受欢迎的开源数据库托管云提供商

在我们上次分析云基础设施划分时,我们分析了哪些云提供商最受开源数据库托管欢迎:



AWS 是开源数据库托管的头号云提供商,占本次调查中所有云部署的 56.9%。谷歌云平台(GCP)排名第二,为 26.2%,出人意料地领先于 Azure,后者为 10.8%。然后是 Rackspace,占部署总量的 3.1%,DigitalOcean 和 Softlayer 紧随其后,占云计算中开源部署总量的 3%。

混合持久化趋势

混合持久化(Polyglot persistence)的概念是单个软件应用程序中针对不同的需求使用不同但最适合的数据库来实现最终目标。这是一个很好的解决方案,可以确保应用程序正确地处理数据,而不是试图用一个数据库类型满足所有需求。一个明显的例子是擅长处理结构化数据的 SQL 与最适合非结构化数据的 NoSQL。


让我们来看几个混合持久化的分析。

数据库类型的平均使用数量

平均而言,我们发现,在单个组织中,公司在应用程序中使用 3.1 个数据库类型。略多于四分之一的组织使用单一的数据库类型,有些则使用了多达 9 种不同的数据库类型:


按基础设施划分的数据库类型的平均使用数量

那么,这个数值在不同的基础设施类型之间是如何划分的呢?我们发现,混合云部署最有可能利用多种数据库类型,平均每次使用 4.33 种数据库类型。


内部云部署通常使用 3.26 种不同的数据库类型,而公有云在其组织中使用的数据库类型最少,平均为 3.05 种。


最常一起使用的数据库类型

现在,让我们仔细研究一下在单个应用程序中最常用的数据库类型。


在下面的图表中,左边列中的数据库表示该数据库类型的样本量,上面列出的数据库表示与该数据库类型组合的百分比。蓝色显示的单元格表示 100%的部署组合,而黄色表示 0%的组合。


因此,如下面的数据库组合热图所示,MySQL 是我们与其他数据库类型结合最频繁的数据库。但是,虽然其他数据库类型经常与 MySQL 一起使用,但这并不意味着 MySQL 部署总是使用另一种数据库类型。这可以在 MySQL 的第一行看到,其颜色为浅蓝到黄色,相比之下,MySQL 第一列的颜色要和表示 100%组合的蓝色的匹配度高许多。


用黑色边框突出显示的单元格表示仅利用这一种数据库类型的部署,其中仅使用 MySQL 的单元格占部署总数的 23%。



对于 DB2,我们也看到了类似的趋势,最后一行 DB2 表明它经常与 MySQL、PostgreSQL、Cassandra、Oracle 和 SQL Server 一起部署,但是,除了 SQL Server 在其部署中有 50%使用了 DB2 之外,其他数据库部署利用 DB2 的比例很低。

SQL 和 NoSQL 开源数据库流行度比较

最后但同样重要的是,我们在开源数据库报告中比较 SQL 和 NoSQL。在开源数据库中,SQL 数据库的使用率超过 3/5,为 60.6%,相比之下,NoSQL 为 39.4%。



我们希望这些数据库趋势是富有洞察力的,并引发一些新的想法或验证你当前的数据库策略。请在下面的评论中告诉我们你的想法,让我们知道,你是否有一项特定的数据库分析想在我们的下一份趋势报告中看到!查看我们的其他报告,了解更多关于数据库领域趋势的信息:



英文原文


2019 Open Source Database Report: Top Databases, Public Cloud Vs. On-Premise, Polyglot Persistence


2019-07-10 08:009908
用户头像

发布了 687 篇内容, 共 397.2 次阅读, 收获喜欢 1498 次。

关注

评论 1 条评论

发布
用户头像
数据库的技术走向和分类呢
2019-07-10 12:59
回复
没有更多了
发现更多内容

云原生训练营 -Week08

jjn0703

模块二

飞天流逝

架构实战营 - 第 6 期 模块二课后作业

乐邦

「架构实战营」

PiFlow 发布企业级分布式关系型数据库 OceanBase 组件

OceanBase 数据库

oceanbase OceanBase 开源

RabbitMQ 补偿机制、消息幂等性解决方案

Ayue、

RabbitMQ 4月月更

在线计算两个时间相差多少秒,分钟,天

入门小站

工具

内容管理系统简史

张泽豪

CMS

极客星球 | 数据智能公司K8S生产环境落地之监控篇

MobTech袤博科技

K8s 多集群管理

尤达 DDD 领域驱动设计思想 第五章作业(使用微服务框架对 SmartRM 系统重新进行微服务化重构)

代廉洁

尤达DDD领域驱动设计思想

模块二作业 -- 图片字小,可以放大网页观看

库尔斯

微信朋友圈的高性能复杂度

唐诗宋词

linux之type命令

入门小站

Linux

微信朋友圈高性能复杂度

鱼恨水

分析微信朋友圈的高性能复杂度

Kevin

「架构实战营」

架构训练营模块 2 作业

小马

「架构实战营」

阿里二面:携程配置中心Apollo服务端是如何感知配置变化的

java金融

模块二作业:微信朋友圈高性能复杂度分析

杨波

「架构实战营」

元宇宙大热,是风口还是虎口

CECBC

有没有一件你认为是成功的,能让自己骄傲的事情?

石云升

职场经验 4月月更

微信朋友圈架构复杂度分析

Trent

微信朋友圈的高性能复杂度

大眼喵

「架构实战营」

jackson学习之五:JsonInclude注解

程序员欣宸

4月月更

一文简述:企业应用架构演进史

穿过生命散发芬芳

4月月更

微信朋友圈的高性能复杂度分析

Geek_bc9c8d

[Day11]-[动态规划]让字符串成为回文串的最少插入次数

方勇(gopher)

LeetCode 数据结构和算法

架构实战营-模块二作业

,lazy

#架构实战营 「架构实战营」

k8s TLS bootstrap解析-k8s TLS bootstrap流程分析

良凯尔

容器 云原生 kubeadm #Kubernetes#

带你了解元宇宙

CECBC

在线SQL压缩工具

入门小站

工具

基于HiKariCP组件,分析连接池原理

HikariCP 连接池 数据库连接池

分布式session之RedisSession的探索

Rubble

redis 4月日更 4月月更

2019年开源数据库报告:热门数据库、云基础设施分析与混合持久化趋势_开源_High Scalability_InfoQ精选文章