PostgreSQL9.6在前些日子发布了, 社区为该版本的重大更新付诸良多, 发布日志一如既往的长,我挑选了6个重要的更新, 这些或许能够帮助你更好的使用PostgreSQL。

并行:

并行应该是这个版本中最大的卖点:这个期待良久的功能, 将会出现在用户的许多场景中, 在PostgreSQL之前的版本中, 即便拥有很多的空闲处理器,数据库的单个查询只能利用单个cpu的计算能力。 这个限制现在没有了, 许多场景下的查询现在可以利用并行特性: 顺序扫描,join,聚合计算,这些都可以利用并行的多核处理器。

更好的锁监控:

pg_stat_activity 视图提供了更加详细的等待信息, 当一个进程正在等待一个锁,你会看到锁的类型,以及将你的查询阻塞的等待事件的详细信息。 另外增加了pg_blocking_pids()函数, 你就会知道哪些进程阻塞这个给定的服务器进程。 这些监控都能够过帮助DBA了解一个特定事件触发的锁等待了多长时间, 从而找到系统瓶颈.

多个同步服务器

前面版本的同步流复制中至多可以拥有一个同步节点, PostgreSQL9.6允许配置多个同步节点,用户可以设置一个或多个节点来同步数据, 并通过确保所有节点的确认信息提高了事务的可靠性。

防止膨胀:

截止现在,一个长时间的报表输出, 或者一个一个游标的查询结果输出信息都会阻塞失效行的清理, 数据库中这些经常改动的表会膨胀,会触发数据库的性能问题,导致存储空间的大量使用。 该版本中添加了 old_snapshot_threshold 参数允许集群清理事务结束无效的行, 所有的快照都可以看到该记录已经到达了一定的年纪

PostgreSQL FDW优化:

PostgreSQL现在拥有超过80多种外部表封装(FDW), 可以用来访问几乎大多数的远程数据源, 在9.6版本中, postgres_fdw 引入了很多的改进, 这些改进包括控制拉取数据量的参数fetch_size, 下推操作(join, sorts)到远程PostgreSQL实例, 如果你想对多个数据库的数据做聚合技术,这些都便于你的操作.

远程作用

PostgreSQL9.6 中新增加了一种复制模式,叫做 remote_apply, Master节点等待事务作用到远端节点,而不仅仅是写入磁盘, 这会比通常的复制模式慢一些,但不会慢很多, 它会确保所有的“提交数据”在slave 节点已经生效, 如果你想让你的只读查询分布到多个节点的话,这就是为你准备的.

筛选出其中6项是一个艰难的选择, 因为在此版本中, 还存在许多其他方面的改进,比如有: 短语全文检索, pg_visibility拓展模块, frozen 页面更好的空间回收(VACUUM)机制, 部分索引(partial indexes)只扫描索引部分, 命令进度的报告… PostgreSQL 一如既往,拥有很多的性能提升!

对于这个版本的详细信息,可以从这个维基页面开始: https://wiki.postgresql.org/wiki/NewIn96

6个原因说服你选择PostgreSQL9.6的更多相关文章

  1. node 使用范围 和 node的优势 (为什么 创业公司 选择的不是 java php ruby 等)

    链接 一些国外大公司 范围: 第一: 希望合并后台多个接口 成为一个接口,  或者频繁改动接口 相关, 比如数据 和数据格式之类,  后台难以配合, 这里可以使用node作为后台的应用层调用其他接口 ...

  2. android studio2.3.3 模拟器 Jni函数调用C++对象,lldb调试this指针和相关变量显示无效的原因

    android studio2.3.3 的版本中 Jni函数调用C++对象,对象调用相关的成员函数, lldb调试,变量跟踪窗口,this指针和相关变量显示无效的原因,但这些参数实际是有效的,只是de ...

  3. ITFriend创业败局(一):选择创业方向和寻找合伙人,创业失败的2个关键点

         这次创业惨淡收场,最主要的原因是没有选择一个合适的创业方向,没有找到合适的创业合伙人. 首先要说到创业方向,因为不同的创业方向需要组建不同的创业团队.我个人比较偏好,软件.网络.互联网等有一 ...

  4. 第2次作业:软件分析之Steam

    1. 作业内容 1.1 介绍产品相关信息 你选择的产品是? 我选择的分析的软件为STEAM 为什么选择该产品作为分析? 在上述列表中的产品,除了王者荣耀,其他几项都是平时我使用较为频繁的软件,所以最初 ...

  5. EffectiveC++ 第6章 继承与面向对象设计

    我根据自己的理解,对原文的精华部分进行了提炼,并在一些难以理解的地方加上了自己的"可能比较准确"的「翻译」. Chapter 6 继承与面向对象设计 Inheritance and ...

  6. 烂代码 git blame

    关于烂代码的那些事(上) - Axb的自我修养 http://blog.2baxb.me/archives/1343 关于烂代码的那些事(上) 六月 21, 2015 57 条评论 目录 [显示] 1 ...

  7. CentOS 7 源码编译安装PostgreSQL 9.5

    下载 在postgresql的官方即可找到源码文件目录,地址如下:https://www.postgresql.org/ftp/source/,在下载列表中根据需求选择版本,进入子目录后,可以看到文件 ...

  8. Serverless 是一种思想状态

    来源 | Serverless 公众号:作者 | Ben Kehoe:译者 | donghui 函数不是重点 如果你因为喜欢 Lambda 而选择 Serverless,你这样做的原因是错误的.如果你 ...

  9. TypeScript学习文档-基础篇(完结)

    目录 TypeScript学习第一章:TypeScript初识 1.1 TypeScript学习初见 1.2 TypeScript介绍 1.3 JS .TS 和 ES之间的关系 1.4 TS的竞争者有 ...

随机推荐

  1. Promise 原理探究及其简单实现

    可移步 http://donglegend.com/2016/09/11/promise%E5%8E%9F%E7%90%86%E6%8E%A2%E7%A9%B6/ 观看 Promise是个什么玩意,大 ...

  2. phpcms学习的一点心得

    最近,在学习phpcms的二次开发,因为要调试搜索模块程序,需建立若干栏目,按照栏目搜索.这一过程中涉及到phpcms的一个概念:模型. 以前并不太注意这个东东. 经过摸索,发现模型其实也是一个栏目的 ...

  3. HDU 4930 Fighting the Landlords(模拟)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4930 解题报告:斗地主,加了一个四张可以带两张不一样的牌,也可以带一对,判断打出一手牌之后,如果对手没 ...

  4. iOS开发——UI进阶篇(十二)事件处理,触摸事件,UITouch,UIEvent,响应者链条,手势识别

    触摸事件 在用户使用app过程中,会产生各种各样的事件 一.iOS中的事件可以分为3大类型 触摸事件加速计事件远程控制事件 响应者对象在iOS中不是任何对象都能处理事件,只有继承了UIResponde ...

  5. 真有用?Snap和Flatpak 通吃所有发行版的打包方式。

    导读 最近我们听到越来越多的有关于Ubuntu的Snap包和由Red Hat员工Alexander Larsson创造的 Flatpak (曾经叫做 xdg-app)的消息.这两种下一代打包方法在本质 ...

  6. SQL手册

    来自 W3School 的 SQL 快速参考.可以打印它,以备日常使用. SQL 语句 语句 语法 AND / OR SELECT column_name(s)FROM table_nameWHERE ...

  7. Android活动管理工具

    ActivityCollector.java import android.app.Activity; import java.util.ArrayList; import java.util.Lis ...

  8. windows下nodejs常见错误

    1.express-session express-session deprecated undefined resave option; provide resave option auth_s e ...

  9. iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束

    http://blog.csdn.net/pucker/article/details/41843511 上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式的前世今生 ...

  10. C# 毕业证书打印《五》

    对鼠标操作Label的方法 #region //定义一个枚举类型,描述光标状态 private enum EnumMousePointPosition { #region MouseSizeNone ...