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的竞争者有 ...
随机推荐
- WordPress文章浏览历史插件
选自:http://www.ludou.org/wordpress-recently-viewed.html 最近有很多网友问我,露兜博客右边栏底部的 您刚刚看过 栏目是怎么实现.其实我也是参考的这篇 ...
- FZU2127
FZU2127:养鸡场 Problem Description Jason买来了n米长的竹篱笆,打算将n米长的竹篱笆所实用来围成一个三角形的养鸡场.为方便起见.养鸡场三条边的长度都为正整数. 同一时候 ...
- python 函数的调用 和执行 小知识
1.符号表 执行一个函数会引入一个用于函数的局部变量的新符号表. 更确切地说, 函数中的所有的赋值都是将值存储在局部符号表: 而变量引用首先查找局部符号表, 然后是上层函数的局部符号表, 然后是全局符 ...
- C#字符串和数据之间的转换
c#中不仅仅存在数值类型的数据之间的转换,字符串和数值之间也是可以互相转换的,只是方法不同而已. 1 数值型转换为字符型 数值型数据转换为字符串用ToString()方法即可实现 int num1=1 ...
- OpenCV图像的二值化
图像的二值化: 与边缘检测相比,轮廓检测有时能更好的反映图像的内容.而要对图像进行轮廓检测,则必须要先对图像进行二值化,图像的二值化就是将图像上的像素点的灰度值设置为0或255,这样将使整个图像呈现出 ...
- git 教程(9)-远程仓库
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了. 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Gi ...
- C++内存分配方式
参考:http://www.cnblogs.com/daocaoren/archive/2011/06/29/2092957.html http://www.cnblogs.com/skydesign ...
- UDS帧传输
说明 在UDS协议中,其中有一点我视作为基础,即帧传输.也即是数据传输这一块,在UDS的帧传输中,分为4种: SF单帧 FF第一帧 CF连续帧 FC流控制帧 首先,我们抛开以上的东西,假设一个销售商( ...
- 24 UsageEnvironment使用环境抽象基类——Live555源码阅读(三)UsageEnvironment
24 UsageEnvironment使用环境抽象基类——Live555源码阅读(三)UsageEnvironment 24 UsageEnvironment使用环境抽象基类——Live555源码阅读 ...
- cacti错误
cacti 错误:CMDPHP: Poller[0] ERROR 解决方案: 找到错误表 desc 表名: 修复此表 mysqlcheck -A -o -r -p -u用户名