1.3.BDR 和基于触发器的复制之间的差异
有大量的基于触发器的逻辑复制解决方案,PostgreSQL,包括 Londiste,Slony-第一和 Bucardo。他们成熟,相当广泛使用,功能强大,和像 BDR 他们有逻辑复制的优点 (和缺点)。
随着与物理复制的比较,BDR 提供基于触发器的复制解决方案的优势,但也有一些缺点。
所有基于触发器的复制解决方案患固有写放大,在那里每次写入到数据库产生相应写入复制日志表。原始的写操作和复制日志写入得到记录在沃尔玛,以及堆中,因此每个写入操作实际上发生了四次。通过阅读和处理数据复制的沃尔玛 BDR 避免写入放大,所以到 BDR 复制数据库只得到写入操作两次-像其他任何持久 PostgreSQL 上写。
基于触发器的复制也需要外部的 dæmon 工艺对发送和/或接收方。BDR 运行内部 PostgreSQL 本身,其管理过程,因此没有单独的复制过程来管理。
在写作的时候,像 Londiste 这样的系统有大量的特征为其 BDR 已经没有相应的能力。Londiste 可以同步和比较表发布服务器和订阅服务器之间。Slony-我支持事件和确认。Slony-提供基础结构还在未修改的 PostgreSQL 9.4 行驶时处理 DDL。Bucardo 支持多主未修改的 PostgreSQL 9.4。所以虽然 BDR 带来一些明显的好处它并不适合每一个需要和每个工作负荷。评估你的需求,在选择技术前仔细。