PolarDB PostgreSQL 1.0版本
1.0版本基于Shared-Storage的存储计算分离架构,发布必备的最小功能集合,例如:PolarVFS、刷脏和Buffer管理、LogIndex、SyncDDL等。
PolarVFS:数据库内核中抽象出了一层VFS层,使得内核可以对接任意的存储,包括bufferIO和directIO。
刷脏和Buffer管理:由原来的N份计算+N份存储,转变成了N份计算+1份存储,主节点在刷脏时需要做协调,避免只读节点读取到超前的“未来页面”。
LogIndex: 由于只读节点不能刷脏,所需要的特定版本页面需要从Shared-Storage上读取一个老的版本页面,并通过在内存中回放来得到正确的版本。LogIndex结构记录了每个Page所对应的WAL日志Meta信息,在需要回放时直接查找LogIndex,从而加速回放过程。
DDL同步: 在存储计算分离后,主节点在执行DDL时需要兼顾只读节点对Relation等对象的引用,相关的DDL动作需要同步地在只读节点上上锁。
数据库监控:支持主机和数据库的监控,同时为HA切换提供了判断依据。