Recent Posts

fwrite fwrite_unlocked

less than 1 minute read

背景 fwrite 和 fwrite_unlocked是一对,其中fwrite_unlocked是fwrite的线程不安全版本,因为不加锁。 参考 1. man fwrite NAME fread, fwrite - binary stream input/output …… RETURN ...

pg_stat_statements fwrite not save

less than 1 minute read

背景 PostgreSQL 9.4 对pg_stat_statements插件的一个重大修改,它在使用过程中需要使用文件,所有的操作都会fwrite文件。 http://www.postgresql.org/docs/9.4/static/release-9-4.html 这么做的好处是,可以记录很多SQL。...

PostgreSQL jdbc 9.4 支持load balance 和 connection failover了

1 minute read

背景 好消息,PostgreSQL的jdbc驱动支持load balance 和 connection failover了。 通过配置多对主机和端口的信息,可以实现简单的连接FALIOVER,直到取到一个正常的连接为止。 Connection Fail-over To support simple conn...

PostgreSQL 混合场景benchmark计算方法

1 minute read

背景 数据库性能基准测试的工具很多,标准基本都是参考TPC提供的模型在做的。 TPC标准是Transaction Processing-Performance Council,事务处理性能委员会的缩写。 该组织的主要功能是指定商用应用基准程序(Benchmark)的标准规范、性能和价格度量,并管理测试结果的发...

PostgreSQL 混合场景benchmark估算方法

1 minute read

背景 数据库性能基准测试的工具很多,标准基本都是参考TPC提供的模型在做的。 TPC标准是Transaction Processing-Performance Council,事务处理性能委员会的缩写。 该组织的主要功能是指定商用应用基准程序(Benchmark)的标准规范、性能和价格度量,并管理测试结果的发...

PostgreSQL OID 源码分析

10 minute read

背景 PostgreSQL的许多系统表都用到了OID这个数据类型,OID是一个uint类型,最大可以存储的值为2^32-1 /* * Object ID is a fundamental type in Postgres. */ typedef unsigned int Oid; 很多系...

PostgreSQL 批量调用函数的方法

less than 1 minute read

背景 PostgreSQL批量插入的方法很多,例如insert into tbl values (),(),()…..; 这种方法不能使用绑定变量。 或者 begin; insert into ... insert into .... end; 或者 insert into tbl s...