6个原因说服你选择PostgreSQL9.6
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的更多相关文章
- node 使用范围 和 node的优势 (为什么 创业公司 选择的不是 java php ruby 等)
链接 一些国外大公司 范围: 第一: 希望合并后台多个接口 成为一个接口, 或者频繁改动接口 相关, 比如数据 和数据格式之类, 后台难以配合, 这里可以使用node作为后台的应用层调用其他接口 ...
- android studio2.3.3 模拟器 Jni函数调用C++对象,lldb调试this指针和相关变量显示无效的原因
android studio2.3.3 的版本中 Jni函数调用C++对象,对象调用相关的成员函数, lldb调试,变量跟踪窗口,this指针和相关变量显示无效的原因,但这些参数实际是有效的,只是de ...
- ITFriend创业败局(一):选择创业方向和寻找合伙人,创业失败的2个关键点
这次创业惨淡收场,最主要的原因是没有选择一个合适的创业方向,没有找到合适的创业合伙人. 首先要说到创业方向,因为不同的创业方向需要组建不同的创业团队.我个人比较偏好,软件.网络.互联网等有一 ...
- 第2次作业:软件分析之Steam
1. 作业内容 1.1 介绍产品相关信息 你选择的产品是? 我选择的分析的软件为STEAM 为什么选择该产品作为分析? 在上述列表中的产品,除了王者荣耀,其他几项都是平时我使用较为频繁的软件,所以最初 ...
- EffectiveC++ 第6章 继承与面向对象设计
我根据自己的理解,对原文的精华部分进行了提炼,并在一些难以理解的地方加上了自己的"可能比较准确"的「翻译」. Chapter 6 继承与面向对象设计 Inheritance and ...
- 烂代码 git blame
关于烂代码的那些事(上) - Axb的自我修养 http://blog.2baxb.me/archives/1343 关于烂代码的那些事(上) 六月 21, 2015 57 条评论 目录 [显示] 1 ...
- CentOS 7 源码编译安装PostgreSQL 9.5
下载 在postgresql的官方即可找到源码文件目录,地址如下:https://www.postgresql.org/ftp/source/,在下载列表中根据需求选择版本,进入子目录后,可以看到文件 ...
- Serverless 是一种思想状态
来源 | Serverless 公众号:作者 | Ben Kehoe:译者 | donghui 函数不是重点 如果你因为喜欢 Lambda 而选择 Serverless,你这样做的原因是错误的.如果你 ...
- TypeScript学习文档-基础篇(完结)
目录 TypeScript学习第一章:TypeScript初识 1.1 TypeScript学习初见 1.2 TypeScript介绍 1.3 JS .TS 和 ES之间的关系 1.4 TS的竞争者有 ...
随机推荐
- 原生态js,鼠标按下后,经过了那些单元格
本来是要判断那些单元格被选中,结果发现行不通,只能判断鼠标按下后,经过了那些单元格 之所以发出来,是觉得案例还有很多有意思的地方 onmouseover 的持续触发,导致了很多重复元素 由于将事件绑 ...
- JavaScript获取onclick、onchange等事件值的代码
这里主要是用到了getAttributeNode()这个方法,它获取的是属性节点,忽略属性和事件的差别,具体示例如下,感兴趣的朋友可以参考下哈希望对大家有所帮助 今天小菜处理下拉菜单级联问题时,想获取 ...
- 快速排序(Quicksort)
快速排序:是对冒泡排序的一种改进. 什么是冒泡排序:简单一点就是冒气泡.极值数据会到达数据的顶端. 实现步骤:建立一个数据排列标准,从大到小还是从小到大. [从大到小排列]:从第一个数据开始遍历,比较 ...
- Codeforces 710 D. Two Arithmetic Progressions
Description \(x=a_1k+b_1=a_2l+b_2,L\leqslant x \leqslant R\) 求满足这样条件的 \(x\) 的个数. Sol 扩展欧几里得+中国剩余定理. ...
- yuv转bmp
#ifdef _INTERFACE_H #error _INTERFACE_H has be exsisted #else #define _INTERFACE_H #include "st ...
- vtigerCRM5.4的安装和汉化 ubuntu
由于php5.5经过较大改变,安装vtigercrm的时候可能需要修改一些配置 1.去官网下载vtiger5.4压缩包,解压后放在/var/www目录下 2.简单起见,将目录权限设置为777 vtig ...
- php empty()和isset()
2015年12月11日 10:59:08 echo phpversion(); //5.6.13 $a = array( 'aaa' => 1, 'bbb' => 0, 'ccc' =&g ...
- 1.JS设计模式-this,call&apply
1. this,call&apply 1.1 this this是Javascript语言的一个关键字. 它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用. 1.1.1 普通函数调 ...
- gcc-5.4.0 static dwarf2 compile
------------------------------------------------------------------------------- 又开始折腾了, 静态编译 gcc-5.4 ...
- [Error] Error parsing XML: unbound prefix
发生该错误的代码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:an ...