假设我在一个 postgresql 数据库中做所有事情。我有 10 个源表用于创建一个巨大的非规范化表。这些源表经常更改,并在插入/更新/删除后触发触发器以近乎实时地修改非规范化表。问题是,我要加入的其中一些源表很大(一个表有 120M 和其他 25M 行),并且用于将新行插入非规范化表的语句执行很长时间(50-100k 行需要 20 多分钟)。
所以,我在考虑基于源表的更改更新(IUD)这个非规范化表上的更改的最佳解决方案是什么?我应该按计划运行这些操作,我应该为此专门指定一个特定的数据库副本,还是应该继续尝试使用触发器?
我愿意使用完全不同的方法,只要它在同一个数据库上可行。