【精彩视频】掀开PostgreSQL的盖头(下)
【精彩视频】掀开PostgreSQL的盖头(中)
【精彩视频】掀开PostgreSQL的盖头(上)
1、从PG的历史、社区、架构、客户群、应用场景、生态角度了解PG2、对于PG与其他企业级商用数据库产品有一个大致的差异化理解
Postgres-10亮点 - pg_basebackup改进
最近,有三个改进和变化添加到pg_basebackup中,这些改进成为Postgres10的一部分。一、基础备份目录的状态第一,涉及到对故障磁盘上的备份文件夹的状态。总之,在出现故障的情况下,pg_basebackup将删除它已经处理时创建的文件夹。这个已经提交commit9083353。在使用此功
PostgreSQL 数组忽略大小写匹配
一位兄弟的开发需求,要求不区分大小写,匹配数组内的字符串。如下,这样的匹配。postgres=#select'a'=any(array['A','1']);?column?----------f(1row)需要将数组内的字符串转换为小写后匹配。postgres=#select'a'=lower(an
PostgreSQL 收缩膨胀表或索引- pg_squeeze or pg_repack
背景PostgreSQL的表或索引发生膨胀后,用户可以使用vacuumfull或rewritetable(如cluster)的方式重建表。但是vacuumfull或者rewrite都需要持有排它锁,会堵塞读操作。为了减少锁冲突,社区有一个名为pg_reorg或pg_repack的插件,使用了增量的方
在PostgreSQL中实现按拼音、汉字、拼音首字母搜索的例子
背景PostgreSQL有很多特性是可以提升开发效率,提高生产力的。在前端页面中,搜索是一个非常常用的功能,例如淘宝首页的搜索。为了提升用户体验,用户可以按拼音首字母进行搜索,按中文单词搜索,或者按拼音的全部进行搜索。又比如家里的电视盒子,因为没有实体键盘,按拼音首字母搜索就非常方便。但是如何做到按
数据库系统概念笔记
数据库系统概念笔记存储和文件系统及PostgreSQL实现数据文件组织一个数据库被映射到多个不同的文件,这些文件由底层的操作系统来维护。这些文件永久地存在于磁盘上。一个文件在逻辑上组织称为记录的一个序列。这些记录映射到磁盘块上。因为文件由操作系统作为一种基本结构提供,所以我们将假定作为基础的文件系统
PG查询引擎理论基础与实践
(1)介绍对于查询优化大家可能都不陌生,大家都会有一个认识是:查询优化的工作就是从一堆可行的查询计划中,依据查询代价来选择一个查询代价最小的查询路径作为整个查询语句的最终的查询计划。但这里有一个问题就是:我们如何能够依据所给定查询语句来尽可能的构建出覆盖全面的查询计划,因为只有我们找出尽可能多的查询
PostgreSQL DaaS设计注意 -schema与database的抉择
背景市面上有一些提供DaaS服务的厂商,例如heroKu,可能有上百万的数据库服务;又比如提供PaaS平台的服务商,数据库也会有很多,同事这些数据库可能也是模板化的,这些厂商并不一定是为每个客户都新建一个数据库集群来满足数据库的需求。很有可能是使用数据库或者schema来隔离不同用户的。1.例如将模
PostgreSQL 可靠性分析
背景PostgreSQL可靠性与大多数关系数据库一样,都是通过REDO来保障的。群里有位童鞋问了一个问题,为什么PostgreSQL的REDO块大小默认是8K的,不是512字节。这位童鞋提问的理由是,大多数的块设备扇区大小是512字节的,512字节可以保证原子写,而如果REDO的块大于512字节,可
PostgreSQL 9.6 同步多副本与remote_apply事务同步级别-应用场景分析
背景对于金融级的应用场景,2个副本通常是不够的,用户可能会需要多个副本。例如,一主4从,要求除了主以外,还需要2个同步的副本,其他可以为异步的副本。另一方面,我们在使用数据库时,为了扩展读的能力,读写分离是比较常见的用法。9.6以前的版本,同步复制是确保XLOG已经复制到备库,而不是已经在备库app
PostgreSQL 最佳实践(二)- 水平分库(基于plproxy)
背景我一直以来都比较推荐plproxy这个PostgreSQL代理软件,因为它小巧灵活好用,效率高.最近朋友邀请我给他们做个分布式的方案,所以又把plproxy翻出来了.本文讲一讲在单节点中如何快速的部署plproxy环境.环境plrpoxy节点数据节点部署plproxy首先在http://git.
6个原因说服你选择PostgreSQL 9.6
PostgreSQL9.6在前些日子发布了,社区为该版本的重大更新付诸良多,发布日志一如既往的长,我挑选了6个重要的更新,这些或许能够帮助你更好的使用PostgreSQL。并行:并行应该是这个版本中最大的卖点:这个期待良久的功能,将会出现在用户的许多场景中,在PostgreSQL之前的版本中,即便拥
PostgreSQL 9.6 并行计算 优化器算法浅析
背景PostgreSQL9.6引入了多核计算的强大功能,那么它是如何决策并行计算,以及并行度的呢?与Oracle不同,PostgreSQL并不需要用户在SQL中使用HINT来启用并行计算,因为优化器会从成本的角度做出选择,是否使用,以及使用的并行度是多大。优化器选择并行计算的相关参数PostgreS
PostgreSQL 9.6 并行计算 在 xfs, ext4 下的表现对比
背景ext4在红帽5,6的版本中作为主流的文件系统,有非常多的用户群体,也能满足大多数的应用场景需求。XFS经过几年的发展,从红帽7开始,XFS会成为默认的文件系统。同时XFS在高并发的场景相比EXT4有较明显的优势,前面我对单机多实例也做过测试,使用EXT4和CGROUP容易遇到IOHANG的问题
PostgreSQL 9.6 引领开源数据库攻克多核并行计算难题(第二部分)
五、测试2(数据量小于sharedbuffer)创建一张测试表,包含一个比特位字段,后面用于测试。postgres=#createunloggedtablet_bit1(idbit(200))with(autovacuum_enabled=off,parallel_workers=128);CREA
PostgreSQL 9.6 引领开源数据库攻克多核并行计算难题(第一部分)
背景经过多年的酝酿(从支持workprocess到支持动态fork共享内存,再到内核层面支持并行计算),PostgreSQL的多核并行计算功能终于在2016年发布的9.6版本中正式上线,为PG的scaleup能力再次拔高一个台阶,标志着开源数据库已经攻克了并行计算的难题。相信有很多小伙伴已经开始测试
PostgreSQL查询语句优化
1.1概述PostgreSQL作为关系数据库中学院派的代表,在U.C.Berkeley完成了初始版本,其后U.C.Berkeley将其源码交于开源社区,PostgreSQL现由开源社区对其进行维护。PostgreSQL代码具有简洁、结构清晰、浓重的学院派气息等特性。虽然,其在国内并未像MySQL一样
新书速递 -《PostgreSQL查询引擎源码技术探析》
专家推荐本书详细介绍了PostgreSQL查询优化器的工作原理和实现细节,覆盖了PostgreSQL查询优化器的几乎所有功能模块。作者试图从“是什么”更进一步,来解释查询优化器设计的“为什么”,也就是其工作原理和设计思路,使本书成为不可多得的关于PostgreSQL查询优化器内部技术细节的参考资料。