我有一个特定的架构来设置postgresql。
我有一个基于两个数据库N和N + 1的系统。
数据库N可用于只读模式的客户端,数据库N + 1可用于客户端的修改。 客户端还可以向系统发送两个命令:
我的第一个想法是将两个数据库保存在postgresql的实例中,并在apply或reset命令上执行pg_dump和pg_restore命令,并将数据库重命名为apply(N + 1 - > N)。 db可能达到8 Go的大小,因此我目前正在Centos 6.7 vm上执行此类转储和恢复的测试。
然后我查看了pg_basebackup命令,设置一个只读的热备数据库。问题是这样的架构是基于从主设备到从设备的数据复制的想法,这是我不想要的,因为客户端可以请求一个将丢弃N + 1分贝的重置命令。
问题是我不知道基于每日转储/恢复的系统是否可行,或者是否有postgresql是一种简单的方法来处理具有相同模式的两个数据库并“检测并应用”差异在两者之间:有了这种能力,我将能够在应用命令时,从N + 1复制到N只有差异,而与复位命令相反。
有什么想法吗?