PostgreSQL hugepage 支持
背景 PostgreSQL启动大页支持很简单,只需要配置几个东西。 1. postgresql.conf huge_pages = on shared_buffers = 8GB # 使用8G内存 2. 操作系统 配置grub.conf,加入如下,重启系统 numa=off transp...
背景 PostgreSQL启动大页支持很简单,只需要配置几个东西。 1. postgresql.conf huge_pages = on shared_buffers = 8GB # 使用8G内存 2. 操作系统 配置grub.conf,加入如下,重启系统 numa=off transp...
背景 benchmarksql 默认编译好的,还有配置都是用的benchmarksql 这个schema,如果我们想对一个数据库用多个schema来压性能,就需要开多个benchmarksql终端来压。 这里就涉及到benchmarksql需要支持多个schema,每个benchmarksql连一个schema...
背景 Oracle 12c TPC-C 测试请参考: 《BenchmarkSQL 测试Oracle 12c TPC-C 性能》 文件系统为XFS,优化手段如下: 《PostgreSQL on xfs 性能优化 - 1》 本文在同样的硬件测试环境下对比PostgreSQL 9.5.0。 我们看看1月7号发...
背景 之前使用PostgreSQL测试了xfs和ext4在tpc-b方面的性能,XFS完胜。 接下来使用专业的io测试软件iozone测试一下。 安装参考 《安装iozone on CentOS 7 x64》 测试case: 2G文件,单个请求8K到16MB分布,测试所有的iozone case,全程使...
背景 内核版本 3.18.24 系统内存256G。 测试使用了3块PCI-E SSD。 # pvcreate /dev/dfa # pvcreate /dev/dfb # pvcreate /dev/dfc # vgcreate vgdata01 /dev/dfa /dev/dfb /d...
背景 Linux下面ext4和xfs都是带journal的文件系统,在写metadata前,必须先写metadata的journal。 (journal类似数据库的REDO LOG,可用于灾难恢复) metadata则包含了文件系统的inodes, directories, indirect blocks信息...
背景 PostgreSQL启动后,通过netstat -anpo可以看到监听了一个UDP端口。 udp 0 0 127.0.0.1:51869 127.0.0.1:51869 ESTABLISHED 13443/postgres 为什么呢? 这个端口干什么用的? 有没有危险? 用于pgstat进程...
背景 PostgreSQL有一种触发器叫行级约束触发器,这种触发器是在事务结束时被触发的。 用法可见 https://github.com/digoal/pgsql_admin_script/blob/master/pgq.md 如果我要获取事务结束的时间戳(大概的),并且如果多行触发了触发器函数时,要得到...
背景 承接上一篇XFS性能优化。 《PostgreSQL on xfs 性能优化 - 1》 本文是对比XFS优化前后的PostgreSQL TPC-B性能。 配置PostgreSQL 数据库参数 listen_addresses='0.0.0.0' port=1921 max_connectio...
背景 性能优化主要分4块, 1. 逻辑卷优化部分 2. XFS mkfs 优化部分 3. XFS mount 优化部分 4. xfsctl 优化部分 以上几个部分都可以通过man手册查看,了解原理和应用场景后着手优化。 man lvcreate man xfs man mkfs.xfs m...