咨询干货

了解优化推广技术相关资讯

一文看懂为什么PG数据库是未来的趋势

2019-07-10来自网络作者: 波波说运维

概述

通过DB-ENGINES的排名可以发现PG越来越火,应该是目前开源数据库中发展势头最好的,下面整理下PG入门的一些内容,方便大家理解。


1、PG概念

PG是最先进的开源数据库,采用了开放接口的设计,例如type, operator, index, storage, language, fdw, custom scan, sample, hook等,都是开放的接口。PG是最具扩展能力的数据库,这一点在PG生态中可见一斑(基于PG的图数据库、流数据库、GIS、时序数据库、推荐数据库、搜索引擎等。围绕PG的应用垂直化插件机器学习、图像识别、分词、向量计算、MPP等。基本上都是使用PG扩展接口扩展出来的)。

开放接口降低了内核改造成本,社区提供稳定、可灵活扩展的基座,任何一家有能力的企业都可以拿社区版本去根据应用特色改造,贡献代码,从而平衡市场。目前只有PG做到了这样。我们看到github, pgxn, pgfoundry等,有非常非常多的为PG社区贡献的周边代码。

PG 也是SQL标准支持最丰富,最适合替代ORACLE的数据库。

PG 支持了多种索引,btree, hash, gin, gist, spgist, brin, rum, bloom。

PG 支持条件索引、表达式索引、INCLUDE覆盖索引。

PG 支持开放的存储引擎接口(12)。

PG 支持了内置的并行计算,几乎覆盖所有SQL。几乎线性提升。

PG 有很多衍生数据库,例如greenplum, edgedb, agensgraph, timescaledb等MPP,图,边缘计算,流计算,时序数据库等产品。


2、PG历史

一文看懂为什么PG数据库是未来的趋势


一文看懂为什么PG数据库是未来的趋势



3、PG社区介绍

谈起PG社区,这里就需要考虑一下为什么PostgreSQL社区几乎不可能被任何一个商业公司、国家所控制?

PG是纯社区的开源数据库,起源自伯克利大学,背后没有国家和公司控制。

我们看到市面上很多开源数据库背后都是有商业公司的,开源产品属于公司,一切解释权规公司所有。所以随时可以闭源或修改开源协议。公司都是逐利的,需要为股东、员工负责,开源的目的是培养用户习惯,谋取利益。

而社区类型的开源数据库,背后没有一家公司控制,贡献者往往来自全球各地,内核开发者来自包括数据库厂商、数据库服务提供商、高校、最终用户、个人开发者等团体。

下面是它的社区构成:

一文看懂为什么PG数据库是未来的趋势

社区构成

总的来说其组织架构为:

• 轮值主席

• 常委(分管社区官网、官微、宣传、志愿者、商务、培训...)

• 分舵

• 核心成员组成

阿里、腾讯、中兴、瀚高、浙江移动、平安科技、去哪儿、探探、国家电网、亚信、神州飞象、壹钱包、PIVOTAL、苏宁、成都文武、乘数科技、武汉大学


4、学PG是未来的趋势吗?

4.1、商业趋势

1、全球都在提高安全、合规、正版化意识

2、PG是去O首选

3、PG是数据库厂商首选,避免重复造轮子,前面说了PG的功能覆盖度高,是很好的基础。同时扩展性很强很容易做出行业特色,最重要的是它的开源许可允许任意的使用(分发、闭源)。

4、PG 是云首选

在很多开源数据库的背后有商业公司,商业公司如果和云厂商没有很好的合作协议,被云厂商拿去卖,客户被带上云,数据库厂商的利益与与云厂商的利益发生冲突的概率非常大。

所以数据库厂商修改许可协议是一种手段。云厂商不再可以直接售卖这些修改协议后的产品版本。又或者数据库厂商会通过协议约束云厂商将改造代码开源回馈数据库厂商,所以云厂商如果要在基于开源的产品上构建出技术壁垒,要么脱离数据库内核本身搞周边自研(避开数据库厂商开源协议约束),要么选择开源协议友好(或者纯社区)的产品进行改造(显然PG是首选,底座好,易于扩展出垂直化的壁垒)。

纯社区数据库的生态公司,为了让社区更好的发展下去,需要降低社区被控制的风险,让更多的行业参与到社区的代码贡献中来。例如开放接口的设计是非常好的选择,降低了内核改造成本,社区提供稳定、可灵活扩展的基座,任何一家有能力的企业都可以拿社区版本去根据应用特色改造,贡献代码,从而平衡市场。目前PG做到了这样,我们看到github, pgxn, pgfoundry等,有非常非常多的为PG社区贡献的周边代码。

4.2、技术趋势

1、PG是多模数据库,因为它的开放性,可以随意扩展。例如前面提到的诸多插件,使得PG是目前最强度大的多模数据库。

2、内置并行计算

3、支持存储引擎扩展(12)。

4、对芯片友好,例如ARM芯片的支持。

以上4点满足了市场的既要又要还要的需求:

既要SQL通用性,又要NOSQL扩展性,还要多模开发便捷性。既要OLTP又要OLAP。

综合商业趋势和技术趋势:学习PG,是未来的趋势。学习PG,没有天花板,它不仅仅是让你去用它,它更能让你去改造它(开放的扩展接口)。


5、DB-ENGINES RANK趋势

从这里可以看到PG这几年的发展趋势多么迅猛。

一文看懂为什么PG数据库是未来的趋势




声明:本站发布的内容以原创、转载、分享网络内容为主,如有侵权,请联系电话:021-51697771-8029,邮箱:mj@cndns.com,我们将会在第一时间删除。文章观点不代表本站立场,如需处理请联系我们。