Postgres-R
来自 PostgreSQL 维基
跳转到导航跳转到搜索项目概述
Postgres-R 为共享无状态集群提供高效、快速且一致的多主复制。它与 Postgres 紧密集成,也用 C 语言编写。它基于经过科学验证的算法,并使用群组通信系统进行所有节点之间的通信和共识。
项目状态
原型,尚未准备好投入生产
项目联系人
首席开发者:Markus Wanner
邮件列表:postgres-r-general 在 pgfoundry 上
一般信息
可扩展性 | 目标是几十台服务器或更多。 | |
读取扩展 | 是 | 与节点数量成线性关系 |
写入扩展 | 是 | 高度依赖工作负载 |
触发器/过程/子事务 | 是 | 完全支持,对应用程序透明 |
并行查询 | 否 | 目前尚未实现,但已计划 |
故障转移/高可用性 | 是 | 可配置以实现不同级别的可用性,取决于 GCS |
在线配置 | 是 | 节点可以随时添加或删除 |
PostgreSQL 升级 | 是 | 为升级而设计,尚未正式发布。 |
分离节点/广域网 | 否 | 尽管计划异步操作 |
需要 PostgreSQL 核心修改 | 是 | |
编程语言 | 与 PostgreSQL 核心相同 | C、flex 和 bison。 |
许可证 | 与 PostgreSQL 核心相同 | 类似 BSD |
完整的集群解决方案 | 否 | 需要 GCS |
PostgreSQL 版本 | CVS HEAD |
集群模型
一般模型:共享无状态、积极(无冲突)、到处更新(多主)数据库复制
Postgres-R 是关系数据库系统 Postgres 的扩展,为共享无状态集群提供高效、快速且一致的数据库复制。它旨在尽可能对客户端透明,默认情况下稳定且安全。
用例
Postgres-R 的主要用途是在商品硬件上构建负载均衡和高可用性数据库系统。此外,由于 Postgres-R 的灵活架构,可以轻松地扩展或调整复制过程以适应多种不同的方式。与常见的单节点数据库系统相比,Postgres-R 集群更可靠,扩展性更好,同时更便宜且更灵活。