Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (中文) » SQL Anywhere 服务器 - SQL 的用法 » 使用数据库对象 » 使用实例化视图

 

设置优化程序的实例化视图失效程度阈值

当实例化视图所引用的表中的数据发生更改时,实例化视图中的数据就会失效。materialized_view_optimization 数据库选项允许您配置一个失效程度阈值,如果实例化视图超过该阈值,优化程序在处理查询时就不会使用该实例化视图。materialized_view_optimization 数据库选项不影响实例化视图的刷新频率。

如果某个查询显式引用了一个实例化视图,则该视图用于处理查询,而无论视图中数据的更新度如何。还可以使用 SELECT 语句的 OPTION 子句覆盖 materialized_view_optimization 数据库选项的设置,强制使用实例化视图。请参见SELECT 语句

如果您发现优化程序未考虑某个实例化视图,可能是由于该视图数据失效的缘故。调整为负责刷新视图的事件或触发器所指定的时间间隔。

注意

使用快照隔离时,如果实例化视图在事务的快照开始后被刷新,优化程序就会避免使用该视图。

有关如何使用 materialized_view_optimization 数据库选项的信息,请参见materialized_view_optimization 选项

有关使用事件和触发器的信息,请参见使用调度和事件自动完成任务

有关确定优化程序是否考虑实例化视图的信息,请参见读取执行计划监控查询性能