设置: 有一个TRANSPORT数据库和4个PRODUNIT数据库。所有这5个DB都在不同的机器上,并且是Oracle数据库。
要求:
我在网上搜索并最终得到了materialized view。在我继续之前,我有以下问题:
我很想知道是否有比物化视图更好的方法!
答案 0 :(得分:1)
在提交时刷新的物化视图不能引用远程对象,因此它对您没有多大好处。如果您可以在提交时刷新,则可以同步维护传输数据库中的数据。但你不能。
在这种情况下,我会严肃质疑想要进行同步复制的智慧。如果可以,那么如果传输数据库关闭或网络连接不可用,则本地数据库将变得不可用。您需要为每笔交易承担两阶段提交的费用。并且其中一个produnit
数据库很容易阻止在其他数据库上发生的事务。
在我遇到过的几乎所有情况中,您可以更好地使用异步复制,使transport
数据库同步到{{1}的几秒内数据库。您可能希望以相对较短的延迟调查GoldenGate或Streams进行异步复制。
答案 1 :(得分:0)
您是否需要MV将取决于您的数据库与相关数据量之间的性能。
我将从普通视图开始,使用数据库链接从数据库中选择数据,但是需要对此进行测试才能看到性能。
鉴于要求2,如果普通视图上的性能较差,则提交时刷新可能是最好的方法。