问题标签 [materialized-views]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oracle - Gather statistics on materialized views as part of gather_schema_stats
We use the following to refresh statistics for all tables in a given schema:
This however, sets row-counts for our materialized views to zero and has the unwanted side effect of causing inefficient query plans for queries against materialized views. We work around this by gathering table stats against the specific mviews after the schema stats have run.
My question is: can I change the parameters to gather_schema_stats in any way that will cause mview row-counts not to be set to zero?
sql - 基于非快速刷新视图的快速刷新物化视图
我发现我可以有两个表并fast refresh on commit
materialized view
根据这些表连接创建一个。
但是,我想做的是fast refresh on commit
根据以下内容制作物化视图:
(1) 一个表联接到
(2) 一个complete refresh on demand
物化视图,它本身基于其他视图(即普通视图)。
当我尝试这样做时,我得到了 error ORA-12053
,它谈到了from
子句中的条目相互依赖,即使它们显然不依赖。
我可以通过将 (2) 替换为普通表来解决此问题,并且只需在该表中进行批量插入而不是刷新物化视图。但是,如果没有必要,我宁愿不这样做。
我将尝试做一个说明错误的最小示例,但是如果您可以告诉我我想做的事情是可能的(最好是通过示例)还是不可能的,那就太好了。
sql - Oracle物化视图错误:包含代码
当我在 Oracle 10g 上运行以下代码时:
尝试创建物化视图时出现此错误test4
:
我不明白“FROM 子句”中的任何对象如何相互依赖。
我怎样才能让它工作?目前我能想到的唯一解决方法是test3
用普通表替换并手动删除和刷新数据。这种方法有效,但似乎有点 hack。
或者(也许最好)我只想看一个示例,其中可以有两个表,并将它们加入一个物化视图,其中一个基表是批量更新的(并且不需要反映在物化视图中) 但其他更新应该反映在物化视图中(即它是一种 "half"fast refresh on commit
和 half complete refresh on demand
)。我尝试使用refresh force
,但是在使用时EXECUTE DBMS_MVIEW.EXPLAIN_MVIEW()
我发现没有证据表明提交时刷新刷新可用。我也想用union all
s 来做这件事。
sql - 编译和刷新物化视图有什么区别?
我们刚刚遇到了一个问题,即物化视图没有刷新,并给出了编译错误。一位高级开发人员说,他刚刚想出了解决方法——告诉 toad 编译物化视图。
所以我的问题很简单:刷新和“编译”有什么区别?
sql - “联合所有”物化视图是否占用空间?
提交联合所有物化视图(在 Oracle 中)时是否快速刷新会复制所有底层数据,还是只是对它的引用?
如果这个物化视图确实复制了所有数据,那么无论如何都要执行以下操作:
这样我就可以在table3上创建索引和物化视图日志,而表3只是对表1和表2的引用。
这样做的原因是我想将以下内容放在物化视图中:
但以上内容不能快速刷新。
但是下面的事情是有效的:
但我担心第一个物化视图会不必要地复制所有数据。
oracle - Oracle的物化视图:如何判断原表是否被更改?
我在许多桌子上创建了一个 MV。我不想自动刷新它。我只想知道原始表格是否已更改。最好的方法是什么?
sql - Oracle:提交后未清除物化视图日志
我有一些物化视图日志,它们在提交后不会自行清除。我如何找出为什么这些日志在提交时没有自行清除?
sql - 嵌套物化视图在提交时找出操作?
我想知道数据库响应说什么动作(即选择、插入、更新):
插入 T (col_x, col_y, col_z) 值 (val_x, val_y, val_z);
在这种情况下,T 是一个带有物化视图日志的表,但有一个嵌套物化视图树,这些视图基于它在提交时刷新。(例如,T1 基于 T,T2 基于 T1 和 U1 等)。
我想看看数据库在响应提交时做了什么,所以我可以看看它们是否是我可以做的事情来加速这个过程(即添加索引或修改物化视图)。
我更喜欢不需要数据库系统用户/直接机器访问的解决方案,但如果这是唯一可能的解决方案,它就可以了。
sql - SQL Server 中联合的替代方案
我有许多模式绑定视图,出于性能目的,我想向其中添加索引。
问题是它们中有多个union all
s 。
我正在寻找一些通用的重构建议/方法来替换union all
s 以允许在视图上创建索引。
基本上,当前视图中使用的联合有两种逻辑场景:
我们有一个由视图表示的 EntityA。该实体的来源来自许多不同的表。即有些EntityA记录在TableA中,有些EntityA记录在TableB中。
我们有 EntityA 由视图表示。TableA 来源 EntityA。TableA 中的每一行都需要在视图中产生多个 EntityAs。
谢谢你。
mysql - 在 MySQL 中创建物化视图时出现语法错误
在 MySQL 中创建物化视图时出现语法错误:
尝试如下创建 mview: