为何PostgreSQL即将超越SQL Server?

DB-Engines 2021年10月份统计,PostgreSQL当月上升10.30点,总分是597.27;SQLServer当月大幅下降16.32,总分是954.29 。按照这样的速度,2年之内,PostgreSQL即将超越SQLServer。

PostgreSQL势力坚不可摧,势不可挡,有下面充分的理由表明,它必将超越SQL Server。
01
开源的力量
虽然许多其他数据库技术已经上升或下降,但是PostgreSQL经受住了时间的考验,它每年都在增长,不仅在功能上,而且在受欢迎程度上,都在增长。
PostgreSQL 是世界上最先进的开源关系数据库。它正乘着人气飙升的浪潮,最新Stack Overflow调查,将其列为"最需要"数据库,DB-Engines 将其评选为2020年度重磅DBMS。特别有趣的是,PostgreSQL的治理模式和所有权模式,与市场上的其他数据库相比,截然不同。PostgreSQL不受任何公司的控制,它拥有最自由的开源许可协议。这允许它被不同公司无条件共享、使用、分发和重新开发。其许可协议的自由性质,使商业项目、开源项目等都从社区生态中受益。
02
创新无止境
多年来,PostgreSQL的核心功能不断成熟和完善,但将代码直接合并进入 PostgreSQL 内核并不总是一件容易的事。全球开发组团队对新功能和代码保持严格审核。虽然这可能会引起一些寻求官方支持的功能的贡献者的担忧,但PostgreSQL的架构旨在允许开发和交付新功能作为扩展(插件)。这有效地隔离了可能为错误的新代码,引入不确定性。这种方法并非独一无二。MySQL 和MariaDB 也有插件架构;然而,它并没有证明像PostgreSQL那样受欢迎。这种扩展性(插件)允许用户和公司创建软件,在不完全分支代码的情况下增强 PostgreSQL以用于特定用途案例。事实上,45个不同的社区提供的扩展已包括在官方发布的附加模块,此外,还有数千个扩展(插件)没有被官方渠道收录。此外,许多公司都保留自己的PostgreSQL分支和"企业版"。这些扩展,分支和项目是大有可为的,由于PostgreSQL自由许可协议,它允许任何人从PostgreSQL核心包开始进行任何的迭代和开发。
03
强大生态社区
PostgreSQL社区包括全球数十万用户,以及数百家提供模块、BUG修复和扩展的公司。这一广泛而多样化的参与者,给PostgreSQL社区带来了巨大的优势。就PostgreSQL而言,数百家不同的公司提供市场营销、工程、销售、培训和教育。所有参与社区的公司都提高了意识和需求,并推动项目向前发展。这种团队力量是一个巨大的战略优势。全球团队的力量碾压一切。甲骨文正在推动其旗舰数据库的知名度,只有它的一些合作伙伴贡献了一点。但是,在PostgreSQL社区中,您拥有所有云服务提供商(微软、AWS、Google
等),以及较大的 PostgreSQL 供应商(如中国的太阳塔、Percona、EDB、CrunchyData、Ongres
等),以及不同的社区项目,所有这些提供商都携手合作。这些机构背后有很多力量。这些公司也为用户提供了大量的选择,这对采用PostgreSQL的用户来说是一个巨大的好处。这意味着,如果你不喜欢一个供应商,你可以很容易地尝试另一个。"多能的力量"在这里带来了显著的优势,增加了创新、功能和模块。PostgreSQL14已经是一个梦幻般的通用数据库,但公司在此基础上再接再厉,创建了一个伟大的"NewSQL"数据库,一个更伟大的分析数据库,等等。更多的工程师、更多的公司和更多的贡献者允许多元化和增长,而这种多样性和增长往往在大公司中会慢得多,甚至不存在(在那些公司里,群体思维可能是一个真正的问题)。在PostgreSQL,它带来更智能的解决方案和更快的创新。
04
群雄纷争
显然,它并不总是一帆风顺的。与任何社区一样,在前进的最佳方式上也存在分歧和争论。最近,我们看到一些关于商标所有权和项目治理的关注。这引起了激烈的辩论,不同的社区成员似乎意见相左。从外部看,这看起来可能很糟糕,但社区内部的公开辩论和讨论是常见的,通常是健康的。开源之所以如此伟大,部分原因在于将不同角度的人的想法汇集在一起,并采纳其中最好的一种。不是每个人都会对结果感到满意,但只要我们继续讨论、辩论和演变,我们都能取得成功。PostgreSQL 的开放式开发模式、自由许可和丰富的功能创造了非常忠诚的用户群和一大批致力于推动采用并继续保持用户群快乐的公司。PostgreSQL背后的势头没有放缓的迹象,我预测它将继续在未来几年内增长。如果它最终结束 MySQL 的统治地位,占据榜首位置,我也不会感到惊讶。

PG考试相关详情:http://www.pgccc.com.cn/
为何PostgreSQL即将超越SQL Server?的更多相关文章
- 连接到 PostgreSQL 数据源(SQL Server 导入和导出向导)
本主题向你介绍如何从 SQL Server 导入和导出向导的“选择数据源”页或“选择目标”页连接到 PostgreSQL 数据源. 重要 连接到 PostgreSQL 数据库的详细需求和先决条件不在此 ...
- C# 以附加文件方式连接SQL Server数据库文件
string str = @"data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFileName=z:\ttt.mdf;Us ...
- [ASP.NET]SQL Server 连接字符串和身份验证
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1; Property ...
- SQL Server 连接字符串和身份验证详解
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1; ...
- SQL Server 连接字符串和身份验证
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1;P ...
- Sql Server连接字符串
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1; ...
- SQL Server 连接字符串和身份验证 学习
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1; ...
- SQL Server 导出数据到 PostgreSQL
乘着倒数据这会儿,把方法记录一下 需求:因为数据迁移,需要将SQL Server 2012中的数据库导入到PostgreSQL 数据库中 思路:创建一个空的数据库,便于导入数据.下载PostgreSQ ...
- [原创]从Oracle和Microsoft Sql Server迁移到PostgreSQL Plus Advanced Server
一.了解PPAS的迁移方式1.在线迁移和离线迁移使用Migration Studio或Migration Toolkit直接向PPAS数据库进行对象定义和数据表中数据的迁移称为在线迁移,生成要迁移对象 ...
随机推荐
- Ajax是什么?包含什么技术?有什么作用?
Ajax 是 Asynchronous JavaScript and XML(以及 DHTML 等)的缩写. Ajax 尝试建立桌面应用程序的功能和交互性,与不断更新的 Web 应用程序之间的桥梁.不 ...
- MariaDB InnoDB基本介绍
InnoDB锁定模式 事务获取锁,以防止并发事务修改甚至读取某些行或行范围.这样做是为了确保并发写入操作不会冲突. 共享锁(S)和排他锁(X) 两种标准的行级锁是共享锁(S)和排他锁(X) 获取共享锁 ...
- 面试问题之C++语言:说一下static关键字的作用
1.全局静态变量 在全局变量加上关键字static,全局变量就定义成一个全局静态变量,存放于静态存储区,在整个程序运行期间一直存在:未经初始化的全局静态变量会被自动初始化为0:全局静态变量在声明他的文 ...
- Rust 中的数据布局-repr
repr(Rust) 首先,所有类型都有一个以字节为单位的对齐方式,一个类型的对齐方式指定了哪些地址可以用来存储该值.一个具有对齐方式n的值只能存储在n的倍数的地址上.所以对齐方式 2 意味着你必须存 ...
- APICloud首款全功能集成开发工具重磅发布,彰显云端一体理念
近日,APICloud重磅推出首款云端一体的全功能集成开发工具--APICloud Studio 2.为了更深入了解这款开发工具的特性及优势,APICloud CTO 邹达针对几个核心问题做出了解答. ...
- React+dva+webpack+antd-mobile 实战分享(二)
第一篇 https://segmentfault.com/a/11... 在上一篇文章中教给大家了怎么搭建项目的架子:那么今天我们就来说一下项目里的导航和列表的实现 导航 废话不说啦 下面直接给大家讲 ...
- electron制作聊天界面(仿制qq)
效果图: 样式使用scss和flex布局 这也是制作IM系统的最后一个界面了!在制作之前参考了qq和千牛 需要注意的点 qq将滚动条美化了 而且在无操作的情况下是不会显示的 滚动条美化 ::-webk ...
- vue全家桶+axios+jsonp+es6 仿肤君试用小程序
vue全家桶+axios+jsonp+es6 仿肤君试用小程序 把自己写的一个小程序项目用vue来实现的,代码里面有一些注释,主要使用了vue-cli,vue,vuex,vue-router,axoi ...
- HTML5 Audio & Video 属性解析
一.HTML 音频/视频 方法 play() play() 方法开始播放当前的音频或视频. var myVideo=document.getElementById("video1" ...
- ES6-11学习笔记--Symbol
Symbol:一种新的原始数据类型 声明方式: let s1 = Symbol() let s2 = Symbol() console.log(s1); // Symbol() console.l ...