写点什么

PostgreSQL 9.4 版本增强了灵活性、扩展性、性能

  • 2014-12-25
  • 本文字数:1880 字

    阅读完需:约 6 分钟

PostgreSQL 全球开发组经过大半年的努力,在发布了 PostgreSQL 的三个 beta 版本和一个 RC 版本后。近日,PostgreSQL 全球开发组宣布 PostgreSQL 9.4 正式版本发布。PostgreSQL 9.4 引入新类型 JSONB;新版本的 Logical Decoding(逻辑复制的基础模块)提供了用于实现复制功能的新 API,并改进了复制的管理;该版本还带来了很多性能方面的改进。PostgreSQL 9.4 添加的这些新特性增强了 PostgreSQL 的灵活性、扩展性和提升了其整体性能。

PostgreSQL 9.4 Beta 1 版本带来了全新的NoSQL 特性,即引入了新类型JSONB,从而使得PostgreSQL 已经升级成为一款混合型(SQL 和NOSQL)数据库。当前,用户即可以把PostgreSQL 作为关系型数据库使用,也可以作为NoSQL 数据库使用。PostgreSQL 在提供强大功能的同时,还具备了NoSQL 数据库固有的灵活性、可扩展性等特性。

PostgreSQL 9.4 的 Logical Decoding 新提供了一个用来读取、过滤和操作 PostgreSQL 复制数据流的 API,该 API 是新复制工具的基础,如支持创建数据库集群的双向复制等功能。同时 PostgreSQL 9.4 还增强了复制系统中的一些其他功能,如 Replication slots 、延迟副本以及对副本服务器的管理和利用率的提高。

PostgreSQL 9.4 还带来了很多性能方面的改进,如改进了 GIN 索引,从而使得性能提高了 50% 左右,甚至高达 3 倍;新的 Data Change Streaming API 能够对复制流中的数据进行编码和转换;新增了实时刷新(Refresh Concurrently)实体视图和及时更新数据报告的功能;更快的并行记录数据库事务日志;支持 Linux 服务器大内存属性的配置等等。

PostgreSQL 9.4 正式版现已提供多个平台下的二进制、源码、第三方预安装环境等方式的下载,读者还可以通过PostgreSQL 9.4 正式版的发布说明获得更多信息。更多关于PostgreSQL 9.4 具体新特性,请读者其官方提供的 Wiki 页面

PostgreSQL 是一个开源、面向对象的关系数据库服务器,它基于 BSD 开源协议下发行。它为大家提供了相对其他开放源代码的数据库系统 (如 MySQL 和 Firebird),和专有系统 (如 Oracle、Sybase、DB2 和 SQL Server) 之外的另一种选择。作为关系型数据库 PostgreSQL 已经获得社区的认可,作为 NoSQL 数据库,其性能表现也不亚于 MongoDB。近日,基于 PostgreSQL 的企业级产品与服务的提供商 EnterpriseDB PostgreSQL 和 MongoDB 的性能作了比较,结果表明 PostgreSQL 在查询、加载、插入方面均优于 MongoDB。

PostgreSQL 9.4 正式版本发布后,就引起了各大社区用户的讨论。Reddit 上已经有 200 多条相关评论,很多用户针对PostgreSQL 9.4 提供的一些新功能进行了称赞。用户 unquietcode 认为 PostgreSQL 9.4 正式版发布是圣诞节最好的礼物,但是用户 myringotomy 表示对 PostgreSQL 还没有实现对多主机或集群支持的遗憾之意。

用户 NaNiwa_Twitter 评论到:

自己已经使用 __PostgreSQL 9.4 beta__ 版本一段时间了,json_* 函数真是强大。用户可以像使用一个关系数据库存储非结构数据,无需在代码中处理即可实现创建 JSON 格式数据的返回

用户 doublehyphen 评论到:

自己最喜爱 __PostgreSQL 9.4__ 的新特性是用来进行聚合计算的 FILTER 语句,在自己的代码中有很多使用 CASE 语句来实现聚合的功能地方。

_SELECT agg_fn(val) FILTER (WHERE condition) FROM …__ 比 __SELECT agg_fn(CASE WHEN condition THEN val END) FROM …_好多了。

Hacker News 上也有了相关评论,用户 odeaken 提出了 PostgreSQL 是否能够打败 MongoDB 的疑问,用户 sarciszewski 认为 PostgreSQL 9.4 正式版本发布是数周来听到的最好的消息。

用户 gfodor 评论到:

JSONB__ 变得越来越受关注了,但是逻辑解码也是一个非常令我兴奋的功能特性。它能够捕获事务处理过程,并将日志记录进行持久化以作为流数据处理,需要构建一个统一的日志系统架构的基本工具。如果用户使用 Hadoop 进行工作,那么他们也可以尝试相似的方式使用记录数据库的快照等数据,使用 PostgreSQL 的 JSONB 更加合适,这真是一个令人兴奋的消息,在此,恭喜 PostgreSQL 团队。

用户 davidgerard 评论到:

PostgreSQL__ 将会是一个热点技术,主机服务提供商正在从 Oracle 和 MySQL 切换到 _PostgreSQL, Oracle__ 成本昂贵,MySQL 性能不能满足需求,并且更多的客户也在倾向于 PostgreSQL。自己还试用了 PostgreSQL,它安装和使用起来非常简单,在此,真的期望更多的 Web 站点使用 PG,而不是 MySQL_


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-12-25 04:243866
用户头像

发布了 92 篇内容, 共 46.4 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

LeetCode题解:231. 2的幂,位运算取二进制中最右边的1,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

目标检测之YOLOv2

Dreamer

架构师训练营 1 期第 7 周:性能优化(一)- 总结

piercebn

极客大学架构师训练营

Java核心基础——反射

老农小江

Java 基础

查漏补缺:166个最常用的Linux命令,哪些你还不知道?

小Q

Java Linux 程序员 操作系统 开发

Fedora32安装和卸载openjdk11

ilovealt

Linux Openjdk

工作1-3年的程序员,应该具备怎么样的技术能力?该如何提升?

Java架构师迁哥

一站式接口测试服务体系建设

DrawDe朱

接口自动化 自动化测试平台

架构师训练营第 1 期 - 第七周作业

Todd-Lee

极客大学架构师训练营

架构师训练营 1 期第 7 周:性能优化(一)- 作业

piercebn

极客大学架构师训练营

Netty源码解析 -- PoolChunk实现原理

binecy

源码 Netty 内存布局

三、设计模式

Geek_28b526

爆火!阿里P9用500多页手册搞定双十一高并发秒杀系统,绝了

996小迁

Java 架构 面试 高并发 秒杀系统

Java键值对排序

ilovealt

Java

囚徒困境:跳脱思维的牢笼

多元思维力-晓陶

认知 思维 多元思维力

第15周作业

Vincent

极客时间 极客大学

全链路压测在信用卡行业的实践

DrawDe朱

全链路压测

一定要偷偷学,偷偷进步!腾讯内部首发Java多线程、高并发、设计模式“满级”笔记

Java架构追梦

Java 架构 面试 设计模式 多线程与高并发

架构师训练营第三周作业

邢永春

第7周总结

alpha

极客大学架构师训练营

Spring Data Jpa deleteAll大概了解

ilovealt

Java jpa

第二章课后习题

博博

「架构师训练营」第 3周作业

小黄鱼

极客大学架构师训练营

读完Java名著《Effective Java》: 我整理了这50条技巧

Java架构之路

Java 程序员 架构 面试 编程语言

Week3 - 代码重构

evildracula

学习 架构

GitHub上最火的SpringCloud微服务商城系统项目,附全套教程

Java架构之路

Java 程序员 架构 面试 编程语言

架构师训练营第 1 期 - 第七周总结

Todd-Lee

极客大学架构师训练营

Spring+多线程+集合+MVC+数据结构算法 +MyBatis源码学习笔记分享

Java架构之路

Java 程序员 架构 面试 编程语言

单例模式样例

jorden wang

第二章学习笔记

博博

week3 代码重构 学习总结

杨斌

PostgreSQL 9.4版本增强了灵活性、扩展性、性能_后端_李士窑_InfoQ精选文章