目前我正致力于在裸机云上制作PostgreSQL的2节点集群。对于我应该选择哪种方法,我感到非常困惑。
就像我有一个选项是PostgreSQL BDR(双向复制品)。在这种方法中,我受益于我的两个节点都具有读写访问权限。但现在我开始了解PostgreSQL XL。这种方法适用于分片方法。任何人都可以告诉我或帮助我应该采取哪种方法? Sharding会给我带来好处吗?我希望我的Postgres高度可用且速度快。在这方面哪种方法对我有帮助。
或者你想给我的任何其他建议。
还有一件事。我想让我的集群水平可扩展。
答案 0 :(得分:1)
大多数情况下最好的解决方案是选项(c):两者都没有。使用库存PostgreSQL +主动/备用故障转移。
我说作为BDR开发者。对于需要它的工作负载,它是一个很棒的工具(在我看来)。但它带来了相当大的成本,就像任何多主系统一样,并且如果你实际上不需要它就 。
大多数人认为他们需要多主人,不要。或者更确切地说,不了解影响和权衡。
阅读有关多主冲突的BDR文档。