写点什么

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:243890
用户头像

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

关注

评论

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

“我是培训 + 外包出来的(1),flutter与android混合开发

android 程序员 移动开发

“我是培训 + 外包出来的,先收藏了

android 程序员 移动开发

「大厂Android面试解析」20道面试灵魂拷问题,论程序员成长的正确姿势

android 程序员 移动开发

会议管理系统减少大中型企业的会议矛盾

低代码小观

企业管理 企业应用 管理系统 管理工具 会议管理

“阿里钉钉“Android 岗无缘二面,有幸内推进入“美团“送外

android 程序员 移动开发

「Android高工面试之旅」疫情失业裸面失败后,深入分析

android 程序员 移动开发

【 FlutterUnit 食用指南】 开源篇,Android自定义View详解

android 程序员 移动开发

【AAC 系列三】深入理解架构组件,androidjetpack视频

android 程序员 移动开发

[译][2,安卓应用开发项目

android 程序员 移动开发

“吹Kotlin协程的,可能吹错了,谈谈我认为的高级Android开发到底应该是怎样的

android 程序员 移动开发

“新常态”下的Android程序员要面对哪些压力,终于有人把安卓程序员必学知识点全整理出来了

android 程序员 移动开发

【 Flutter 手势探索】我的第二本小册来了,嵌入式音视频方向

android 程序员 移动开发

[译] 充分利用多摄像头 API,30分钟轻松入门flutter

android 程序员 移动开发

Logback基本使用

平凡人生

阿里云EMAS发布套餐订阅云服务

移动研发平台EMAS

[译] Android 的多摄像头支持,flutter登录

android 程序员 移动开发

[译][2(1),android开发计算器源码

android 程序员 移动开发

_ Dart 里的类型系统,android自定义控件开发入门与实战

android 程序员 移动开发

_Android 项目中 shape 标签的整理和思考,面试官不讲武德

android 程序员 移动开发

[译] 改善 Android Studio 的构建速度,掌握这6大技能体系

android 程序员 移动开发

可视化全埋点系列文章之元素标识篇

神策技术社区

可视化 全埋点

[译]掌握Kotlin中的标准库函数_ run、with、let,搞懂开源框架设计思想真的这么重要吗

android 程序员 移动开发

[译] Plaid 应用迁移到 AndroidX 的实践经历,安卓卡顿优化方法

android 程序员 移动开发

[译] 改善 Android Studio 的构建速度(1),美团移动端开发工程师

android 程序员 移动开发

[译]内存泄露的八种花样,快速从入门到精通

android 程序员 移动开发

{Android}面对最近的话题,kotlin库

android 程序员 移动开发

「安卓高级架构师」教你一种更清晰的Android架构,android原生开发技术

android 程序员 移动开发

【- Flutter 桌面篇 -】 FlutterUnit win版闪亮登场,android入门基础

android 程序员 移动开发

[译] 全新 Android 注入器 _ Dagger 2(三),android开发架构方案

android 程序员 移动开发

{Android}一行代码起飞,2021年百度Android面试真题

android 程序员 移动开发

“终于懂了” 系列,android面试简历模板

android 程序员 移动开发

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