据我所知,Oracle只读物化视图与真实视图类似,但它包含源数据的完整快照 - 存储在类似去桌子的路。为了更新快照,可以调用Oracle命令来从源代码中刷新物化视图的内容。当刷新Oracle只读物化视图时,访问旧数据被阻止
问题是,在刷新过程中,物化视图是被阻止读取的,还是以独立方式应用更新,从而允许在更新发生时仍旧读取旧快照?
据我所知,Oracle只读物化视图与真实视图类似,但它包含源数据的完整快照 - 存储在类似去桌子的路。为了更新快照,可以调用Oracle命令来从源代码中刷新物化视图的内容。当刷新Oracle只读物化视图时,访问旧数据被阻止
问题是,在刷新过程中,物化视图是被阻止读取的,还是以独立方式应用更新,从而允许在更新发生时仍旧读取旧快照?
进入Oracle编写者不会阻止读者。决不。这是版本控制的主要优势。在物理上它看起来就像你更新表格而有人从中进行选择一样。
顺便说一句,你可以试试。用较长的刷新时间制作MV并检查是否可以在刷新时阅读它。
对于Oracle有可能的两种方式如何清理MV refresing
正如@GriffeyDog所述,请参见atomic_refresh选项。
检查出atomic_refresh选项。 – GriffeyDog