PgSQL · 特性分析 · 事务ID回卷问题
背景
在之前的月报 PgSQL · 特性分析 · MVCC机制浅析中,我们了解到了:
事务ID(XID)使用32位无符号数来表示,顺序产生,依次递增
每个元组会来用(t_xmin, t_xmax)来标示自己的可用性
t_xmin 存储的是产生这个元组的事务ID,可能是insert或者update语句
t_xmax 存储的是删除或者锁定这个元组的XID
每个事务只能看见t_xmin比自己XID 小且没有被删除的元组
其中需要注意的是,XID 是用32位无符号数来表示的,也就是说如果不引入特殊的处理,当PostgreSQL的XID 到达40亿,会造成溢出,从而新的XID 为0。
PostgreSQL 服务器日志 pg_log
10.0版本PostgreSQL,存在三种日志
WAL日志,即重做日志,一般不可读
日志对应目录为 $PGDATA/pg_xlog
事务提交日志,记录的是事务的元数据
日志对应目录为 $PGDATA/pg_clog
数据库运行日志
日志对应目录为$PGDATA/pg_log
前两种日志,虽然仍然非常重要,但却是不可读的,我们日常使用不多。
PostgreSQL datediff 日期间隔(单位转换)兼容SQL用法
标签
PostgreSQL , datediff
背景
使用datediff,对时间或日期相减,得到的间隔,转换为目标单位(日、月、季度、年、小时、秒。。。等)的数值。
DATEDIFF ( datepart, {date|timestamp}, {date|timestamp} )
周...
PG&GP · 特性分析 · 外部数据导入接口实现分析
背景
社区 PostgreSQL 和 GreenPlum 都提供了读写外部数据源的方法,它们都提供了一套编程接口,用户可以在这上面做二次开发,建立外部数据源和数据库间的数据通道。
本文介绍 PostgreSQL 和 GreenPlum 这部分编程接口的实现和编程方法。结合 RDS 开发的 oss