Postgres-XC
来自 PostgreSQL 维基
跳转到导航跳转到搜索现已迁移
Postgres-XC Wiki 页面现已迁移至 新位置。 请访问该页面以获取最新信息。
项目概述
Postgres-XC (eXtensible Cluster) 是基于共享无状态架构的,由 Postgres-XC 开发组 开发的,支持多主写扩展的 PostgreSQL 集群。 您可以在 这里 (pdf&odp) 找到介绍性信息。
PG-XC 的功能包括
- 可扩展的 PostgreSQL 集群
- 与纯 PostgreSQL (DBT‐1) 相比,使用五个服务器时,可扩展性性能提升超过 3 倍。 结果截至 1.0 版本。 已经知道改进可扩展性的方法。
- 同步多主配置
- 对任何主服务器的任何更新都会立即从其他主服务器可见。
- 表位置透明
- 可以继续使用相同的应用程序。
- 事务处理没有变化。
- 基于 PostgreSQL
- 与 PostgreSQL 相同的 API 用于应用程序
项目状态
目前正在开发中。
- [https://sourceforge.net/projects/postgres-xc/ 版本 1.2.1 已发布。
- 项目许可证与 PostgreSQL 相同,即 PostgreSQL 许可证 (类似 BSD)。
- 在欧洲 ( PGDay.eu 2010,PGSession #3)、亚洲 (PGChina 2012,JPUG 大会 2010 和 JPUG 大会 2012)、美洲 (PGBr 2011、PGOpen 2011、PGCon 2010 和 2012) 进行过多次演讲。
项目属性
根据 这里 的建议指南,这是 Postgres-XC 的属性。
概述
请查看此页面顶部。
状态
版本 1.2.1 已发布。
状态详情
可扩展性和事务管理的基础设施已经完成。 现在,团队正在努力扩展语句的覆盖范围,以及 HA 功能。 最新版本是 v1.2.1。
路线图的详细信息可以在 项目主页 中找到。
联系方式
核心开发者:铃木浩一、迈克尔·帕奎尔、阿米特·汉德卡、阿舒托什·巴帕特、阿巴斯·巴特
首选联系方式:postgres-xc-general at lists.sourceforge.net 或 postgres-xc-developers at lists.sourceforge.net。
URL
PGCon2011 集群峰会页面 在此
PGCon2011 开发者会议页面 在此
一般信息
可扩展性 | 使用十台服务器进行评估。 潜在的二十到三十台服务器。 | |
读扩展 | 是 | |
写扩展 | 是 | |
触发器/过程 | 过程:是 | 触发器尚未 |
并行查询 | 现在,一些查询可以在多个数据节点中并行执行。 | |
故障转移/高可用性 | 是 | 核心功能可用。 可以使用外部工具进行故障转移 |
在线配置 | 否 | |
PostgreSQL 升级 | 否 | 所有节点应同时升级。 |
分离节点/WAN | 否 | Postgres-XC 依赖于高速通信。 |
需要修改 PostgreSQL 核心 | 是 | |
编程语言 | C、flex、bison、bash、python、perl (与 Postgres 相同) | |
许可证 | BSD,PostgreSQL 许可证 | |
完整的集群解决方案 | 是 | 高可用性功能已经可用,将在下一版本中得到加强 |
PostgreSQL 版本 | 基于 9.3 | 计划在 9.4 稳定分支发布后迁移到 9.4 |
模型摘要
同步多主。
模型描述
将事务管理提取到单个服务器中,以提供事务 ID 和快照,以及其他全局值。 因此,Postgres-XC 为在任何主服务器上运行的任何事务提供一致的数据库视图。
每个表可以根据 CREATE TABLE 语句中的指定进行分区或复制。 如果需要,也可以在部分节点上进行分布。
用例
事务性用例。
- 大型事务性应用程序。
- 多个数据库应用程序的集成。
- 云环境中的动态负载均衡,根据预期负载动态分配计算资源。
缺点
支持一般 PostgreSQL 子句。 尽管如此,仍然存在与集群相关的更多挑战
- 元组重定位。 当分布列的值更新时,我们必须将元组重新定位到适当的位置。
- 全局死锁检测。 正如在 cluster-hackers 邮件列表中所讨论的那样,尚无经验表明检测它需要多长时间,以及与简单的超时机制相比是否合理。
- 全局约束。 我们是否可以在多个数据节点中全局强制唯一约束或其他约束排除?