2019全球PostgreSQL生态报告出炉,PG为何从RDBMS中脱颖而出?丨文末送书
墨墨导读:本文是近期ScaleGrid发布的2019 PG趋势报告,从不同的角度解读了PostgreSQL如何在众多优秀的RDBMS中脱颖而出,原文:https://scalegrid.io/blog/2019-postgresql-trends-report-private-vs-public-cloud-migrations-database-combinations-top-reasons-used/(可复制在浏览器打开或点击“阅读原文”)。
数据和云联合机械工业出版社华章分社给大家免费赠送以下8本图书,包括《PHP和MySQL Web开发(原书第5版)》、《Redis开发与运维》、《MySQL技术内幕:InnoDB存储引擎(第2版)》、《Redis设计与实现》、《PostgreSQL修炼之道:从小工到专家》、《SQL优化最佳实践:构建高效率Oracle数据库的方法与技巧》、《Oracle Exadata专家手册》、《
PostgreSQL实战》,具体参与方式见文末。
此外,我们也建立了PostgreSQL技术研讨微信群,技术交流、资料分享、大牛解答,欢迎加入一起进步,入群方式见文末。
前言
PG是一款开源的关系型数据库,在过去30年中,其流行度从其活跃、忠诚且持续成长的社区中迅速飙升。根据DB-Engines的专家们给出的《DBMS of the Year》报告,PG已经连续两年蝉联世界“成长”最快数据库的名号。那么,是什么让PG如此出众,当今它又是如何被应用于实际生产?!我们在3月举行的Postgres Conference会议中找到了答案,在那里,我们采访了许多PG的用户、贡献者以及SQL/NOSQL数据库管理员。
所以在这份公开的PG趋势报告中,我们将从如下几个方面向大家揭示PG为何在众多优秀的RDBMS中脱颖而出:
公有云vs私有云vs混合用
最受欢迎的云供应商
迁移趋势
与PG结合使用的数据库
私有云 VS 公有云 VS 混合云
那么,PG的用户们该进行何种选择来托付支持应用的集群呢?我们的调研对象中59.6%的人更愿意在内部私有云(on-premise private cloud)上管理PG,而只有34.8%的人选择使用公有云(public cloud)。这些结果与正常运行时间研究所(Uptime Institute) 在2017年的调查结果相呼应,该调查发现,65%的企业的工作负载仍运行于这些企业自有和运营的数据中心上。
但无论如何,让我们吃惊的是,仅有5.6%的调研对象采用了混合云(hybrid cloud)策略。混合云是第三方公共云和内部私有云的混合,以支持跨这两个计算环境的工作负载需求。然而RightScale最近的一份报告发现,69%的企业已经通过将公共云和私有云进行结合的方式,采用了混合云策略。
最受PG用户欢迎的云供应商
由于有近40%的PG用户使用公共云或混合云,于是我们进一步研究了这些组织最喜欢使用哪家云供应商来管理自己的集群。在一项调查中,不出所料,我们发现Amazon Web Services (AWS)占有了55%的使用共有云的PG用户。
微软的Azure和Google云平台在PG公有云用户中的使用率不分伯仲,均为17.5%。剩余的10%包括DigitalOcean、IBM Cloud、Rackspace和阿里巴巴。
也有许多PG布署采用Database-as-a-Service (DBaaS)的解决方案进行管理,该解决方案利用云原理或者直接由这些云供应商提供。想要了解它们各自的优劣,可以访问该链接:https://scalegrid.io/postgresql/hosting-comparison.html
单云和多云的使用
现在我们已经了解了PG管理和最受欢迎的云提供商的分类,接下来,我们来进一步了解下单云(Single Cloud)和多云(Multi-Cloud)的使用。
使用公有云的PG用户平均使用1.3个不同的云提供商提供的云平台来支持他们的应用程序。从反馈来看,单云的使用率达78.1%,约为3/4,占有绝对主导地位,反观PG布署对多云的利用率,仅有21.9%。
使用PG及迁移至PG的趋势
接下来,我们询问了受访者关于他们关于PG的应用,进而了解PG用户群体,比如在迁移过程中或是探索应用中,PG是否适合他们的应用需求。
在PostgresConf上,不出意料,我们发现大多数受访者(高达74.4%的比例)已经在使用PG。虽然有超过1/4的受访者仍未在生产中布署应用PG,但是我们发现,11.5%的受访者已经在开始着手向PG的迁移,剩余14.1%已经将此列于未来可能的计划之中。
想要更进一步了解是PG的什么优势使PG用户下次决心,可以前往最后一小节:PG从RDBMS中脱颖而出的主要原因。
2019年最受欢迎的数据库
尽管我们已经了解了PG的应用及迁移趋势,但在这次调查中,我们还是想要同时了解其他可选的数据库软件的受欢迎程度。
PostgreSQL of course came in first with 85.9% use between respondents (either using in production or currently migrating to), followed by Oracle at 43.59%, SQL Server at 32.05%, and MySQL at 28.21%. MongoDB and DB2 tied for fifth at 14.10%, Redis at 11.54%, and Greenplum and SQLite tied for seventh at 5.13% each. Cassandra, Cockroach, Cosmos DB, Elasticsearch, Teradata and TimescaleDB tied at eighth with 1.28% use each.
在本次受访者中,PG当然是以85.9%的使用比例高居榜首(包括当前在使用的以及正在迁移的),接下来是ORACLE占比43.59%,SQL Server占比32.05%,MySQL占比28.21%,MongoDB和DB2并列第五,占比14.10%,Redis占比11.54%,Greenplum和SQLite并列第七,分别为5.13%。Cassandra、Cockroach、Cosmos DB、Elasticsearch、Teradata和TimescaleDB并列第八,各自的使用率为1.28%。
虽然上面的结果严重偏向于PostgreSQL,但我们确实发现PG在我们三月初发布的《2019 Database Trends – SQL vs. NoSQL, Top Databases, Single vs. Multiple Database Use 》报告中位列前三。这项调查是在DeveloperWeek上进行的,当时我们采访了所有类型数据库的用户,结果发现MySQL以38.9%的使用率遥遥领先,MongoDB则以24.6%的使用率紧随其后。
最流行的与PG结合使用的数据库
现在我们知道了哪个DBMS才是最流行的(在PG社区中),那么我们再来看一看,最常与PG结合使用的数据库又是哪个。
首先我要分享一个数据,有62.69%的PG用户至少会额外再选择一款数据库与PG结合使用,而仅有37.31%PG用户在生产环境中只使用PG。
超过四分之一(27.3%)的PG用户除使用PG外,还使用Oracle,其次是SQL Server 20.9%, MySQL 17.3%, MongoDB 10.0%, DB2 9.1%, Redis 7.3%, SQLite 3.6%。最后4.5%占比的与PG结合使用的数据库包括Cassandra、Cockroach、Cosmos DB、Elasticsearch和Teradata。
PG数据库组合:SQL vs NoSQL
考虑到与PG结合使用的数据库种类繁多,我们将与PG结合使用的数据库的使用趋势分为俩类:SQL和NoSQL。SQL类的数据库被大多数PG用户选择组合使用,其比例甚至达到80%,而只有20%的用户选择使用NoSQL类数据库与PG组合使用。
PG用户使用的数据库类型统计
现在我们知道哪个数据库是最常与PG结合使用的,那我们进一步研究PG社区中用来支持他们应用的数据库种类的平均数。
平均而言,我们发现,利用PG进行的应用布署平均使用2.56种数据库,这其中也包括PG本身。该数据低于我们的2019数据库趋势报告中的数据超过了17%,那份报告中统计所有种类数据库的用户平均会使用3种数据库结合使用。这意味着PG必须填补本该由其他数据库来完成的功能。
正如你在下图中所见,超过一半的PG用户使用俩种甚至更多种的数据库来支持他们单一等应用:使用2种的是9.0%,3种的是14.1%,4种的是17.9%,5种的是11.5%,甚至有3.8%的用户使用6种数据库。尽管组合使用占绝大多数,但在我们的调查中,仍有高达43.6%的用户只使用PG。
PG从RDBMS中脱颖而出的主要原因
我们终于来到我们的报告的最后一个趋势分析,这里我们来探讨一个开放式的问题:“是什么让你决定探索和使用PG,而不是其他的RDBMS”。
成本以27%的占比成为选择PG,而非其他RDBMS的首要原因。这与以25.5%占比位居第二的主要原因——开源,紧密相关。高昂的商业供应商的lisence成本趋势他们的用户再想开源、免费的系统转型。如你所见,下图为DB-Engine的《Popularity of Open Source DBMS vs. Commercial DBMS》报告中的统计,至少从2013起,开源软件正在一步步瓜分源有商业供应商的市场,尽管目前商业软件仍占多数,但是在未来的12至18个中,开源将逐渐成为主导。
社区以13.6%的反馈率位居第三,尽管社区是有史以来最活跃、参与最多的开源DBMS社区之一,但从围绕调查的对话中可以明显看出,社区对用户的影响力更大。PostgreSQL完全是由社区中,来自世界各地的开发人员驱动的。他们提供免费的支持,并与像他们一样的用户分享自己的专业知识。
性能以10.9%的反馈率紧随其后,然后是占比9.1%的第三方工具,他们之所以占比如此之高,是因为它们经常被用来确保和维护PostgreSQL的高性能。同样,开放源码社区为PostgreSQL赢得了另一个胜利,因为有多达数百个第三方开放源码(和一些商业)工具供你选择,让你的布署更轻松快捷。您可以在我们的《Managing High Availability in PostgreSQL》(https://scalegrid.io/blog/managing-high-availability-in-postgresql-part-1/)中的第三方工具系列了解到更多开源解决方案。
PG以其简单灵活的设计获得7.3%的用户青睐,所以易用性排名第六,而高级功能排名第七,获得6.4%的用户青睐。以5.5%的回馈率排在第八,虽然排在最后但并非最不重要,在已经在使用PG的公司的在职受访者中,经历了上述种种之后,他们很快就爱上了PG。
如果你喜欢2019年的PostgreSQL趋势报告,你应该看看我们之前对这个数据库的调查分析,https://scalegrid.io/blog/latest-postgresql-trends-most-time-consuming-tasks-important-metrics-to-track/ 。您还可以访问我们的PostgreSQL on Azure(https://scalegrid.io/postgresql/azure.html)和PostgreSQL on AWS(https://scalegrid.io/postgresql/aws.html)页面来了解更多关于在云中自动化部署管理、监视和维护的信息。
好书任你选
Redis开发与运维
作者:付磊 张益军 编著
1. 从开发、运维两个角度总结了Redis实战经验,深入浅出地剖析底层实现,包含大规模集群开发与运维实际案例、应用技巧。
2. 全面覆盖Redis基本功能及应用,图示丰富,讲解细腻。
PHP 和 MySQL Web 开发(原书第5版)
著作者:卢克·韦林 , 劳拉·汤姆森 著
译者:熊慧珍 武欣 罗云峰 等译
本书是使用PHP和MySQL构建数据库驱动的Web应用程序的权威指南,十余年畅销不衰。与本书第4版相比,第5版进行了全面更新、重写和扩展,详尽介绍了PHP 5.6到7的版本更新和新特性,以及MySQL最新版本的新特性。
MySQL技术内幕:InnoDB存储引擎(第2版)
作者:姜承尧 著
1. 畅销书全新升级,第1版广获好评;资深MySQL专家撰写,全球知名MySQL数据库服务提供商Percona公司CTO作序推荐,国内多位数据库专家联袂推荐
2. 基于MySQL 5.6,结合源代码,从存储引擎内核角度对InnoDB的整体架构、核心实现和工作机制进行深入剖析
PostgreSQL修炼之道:从小工到专家
作者:唐成 著
1. PostgreSQL中国社区资深数据库专家、沃趣科技首席数据库架构师撰写,PostgreSQL数据库领域经典著作
2. 系统讲解PostgreSQL技术内幕,深入分析PostgreSQL特色功能,包含大量来自实际生产环境的经典案例和经验总结
Oracle Exadata专家手册
作者:[美]塔里克·法鲁克(Tariq Farooq),[美]查尔斯·金 等
译者:梁涛 杨志洪 葛云杰 高强 译
一本面向Oracle Exadata真实环境的实践操作指南和专家手册;汇聚业界知名Oracle技术专家一线实践经验,从安装、配置、管理、调优到故障诊断一应俱全。
SQL优化最佳实践:构建高效率Oracle数据库的方法与技巧
作者:韩锋 著
本书规避了市面上大多关于SQL优化的书籍讲解内容过于深奥的问题,以一线开发工程师的语言和视角展开,理论与实践并重,不仅适合初学者,也适合中端技术人员进一步提高。
本书以大量案例为依托,系统讲解了SQL语句优化的原理、方法及技术要点。本书尤为注重实践,在章节中引入了大量的案例,便于学习者实践、测试,反复揣摩。
PostgreSQL实战
作者:谭峰,张文升 著这是一本值得存放于身旁的PostgreSQL参考书,特别是性能分析、集群、分片、地理信息等高技术含量的章节,可以作为日常工作的有效参考。
Redis设计与实现
作者:黄健宏 著1. 系统而全面地描述了 Redis 内部运行机制;
2. 图示丰富,描述清晰,并给出大量参考信息,是NoSQL数据库开发人员案头必备;
包括大部分Redis单机特征,以及所有多机特性。
如何得到这些书
在文末留言,想读此书的理由,截止7月16日12:00,留言点赞数前8名的用户,可以随机获得以上图书一本,小编会留言回复获奖者,获奖者请12小时内添加小编微信(ID:Enmoedu05),并发送相关截图及收货方式。
着急看书的朋友可以扫描图书下方的二维码进行购买。
TIP:
1. 留言区只能放出100条留言,小编会尽量放出有效和优质的评论
2. 另外有邮寄书籍的时间,视小编忙碌而定,但肯定不会缺失
3. 福利而已,小编希望不会给用户带来不适
4. 如果你不喜欢此类活动,也请留言告诉小编,会针对性改进
若翻译中出现一些技术上的错误,欢迎的大家在评论区指正,期待与您的互动!
编辑:尹文敏
出处:https://scalegrid.io/blog/2019-postgresql-trends-report-private-vs-public-cloud-migrations-database-combinations-top-reasons-used/
扩展阅读