postgresql – 用于生产Postgres同步的BDR有多好?
我有一个系统,多个卫星创建金融交易,他们需要与核心服务器同步.卫星是使用本地Postgres数据库运行Rails应用程序的远程服务器.核心是另一个拥有自己的Postgres数据库的Rails应用程序.卫星和核心具有几乎相同的模式(但不完全相同).一切都是集装箱化的(应用程序和数据库).核心服务器很少更新所有卫星所需的数据.目前我有一颗卫星,但这个数字会增长到一对(我认为在遥远的未来不会超过100颗).核心和卫星之间没有序列或争用的问题.核心将永远不会更新与任何卫星相同的交易,并且任何卫星都不会更新与任何其他卫星相同的交易.更好的是,金融交易以uuid为主键.
由于这是一个多主同步问题,我自然而然地遇到了BDR.我有以下问题: > BDR生产准备好并且稳定吗?我正在阅读几种竞争技术(如Bucardo和Londiste).它真的会成为Postgres 9.6的一部分吗?
是的,BDR-Postgres 9.4的BDR 1.0是生产就绪且稳定的.但后来我会说since I work for 2ndQuadrant,who develop BDR. 它不是可以在没有应用程序更改的情况下使用的独立PostgreSQL的替代品.请参阅手册的概述部分.
他们都是不同的.不同的权衡取舍.在BDR手册中对它们进行了一些讨论,但当然,因为我们几乎不能公正地对它进行讨论.
不,绝对不是.你在哪里看到这个说法? 将来(但尚未)将发布一个扩展,以便在准备就绪时将BDR添加到PostgreSQL 9.6.但它不会成为PostgreSQL 9.6的一部分,它将是你安装在顶部的东西.
是的,它可以很好地处理临时分区和网络中断,并在全局序列周围提出一些警告.有关详细信息,请参阅手册
是.有关复制集,请参见手册. 表结构总是被复制.目前的初始表内容也是如此.但是表格更改可以选择性地逐表复制.
当然.
不好.它是一种网状拓扑,可以期望每个卫星与其他卫星通信.此外,每个节点有198个后端(99个walsenders 99应用工作者).不漂亮. 你真的想要一个星型和集线器模型,每个卫星只与集线器通信.这在BDR 1.0中不受支持,也不是BDR 2.0中的支持目标. 我认为这是pglogical或Londiste更好的用例. 我不能在这里详细介绍,因为它与我参与的商业咨询服务重叠.我工作的团队为客户设计这样的东西作为professional service. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |