BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

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

| 作者 李士窑 关注 0 他的粉丝 发布于 2014年12月26日. 估计阅读时间: 6 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

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的企业级产品与服务的提供商EnterpriseDBPostgreSQL和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)关注我们,并与我们的编辑和其他读者朋友交流。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT