PostgreSQL物化视图刷新“堆叠”

时间:2017-10-11 16:53:27

标签: database postgresql postgresql-9.4

版本:9.4.10 请求刷新物化视图堆栈吗?

例: 我有一个物化视图,它基于我的主表上的INSERT / UPDATE / DELETE同时刷新。如果多个用户经常调用此触发器,物化视图是否会将这些刷新堆叠在一个队列中,还是会取消当前刷新执行并运行最新的触发器?

如果它堆叠,是否有人有关于如何解决此问题的建议。我有一个非常大的数据集,我希望视图的刷新需要一段时间。

1 个答案:

答案 0 :(得分:1)

我没有看到任何理由它会取消当前的刷新而支持下一个。根据您描述的模型,我认为您将拥有等待会议的avalanch。我建议你放弃想法,用数据变化的触发器刷新大mview。如果你想以某种方式控制“几个真实来源”的风险,因此不想将INSERT/UPDATE/DELETE复制到其他表,以便它可以保存原始表的一些逻辑副本 - 你可以从物质化的视图创建一个表然后用你的触发器填充recodrs,每小时左右只需刷新mview以同步可能的欺骗或间隙。它仍会在刷新期间占据所有内容,但至少它不会冻结每次更改的所有内容......