ITPub博客

首页 > Linux操作系统 > Linux操作系统 > OCM考试系列-复习内容(之七 物化视图)

OCM考试系列-复习内容(之七 物化视图)

Linux操作系统 作者:leon2015 时间:2015-01-29 22:45:36 0 删除 编辑

七、物化视图

物化视图其实就是一张数据表,引入的目的是为了提高数据仓库的查询性能,以空间换取时间的一种手段。

物化视图主要可以分为三类:聚合型,关联型和嵌套型。更新方式可以分为增量,全量。而enable query rewrite功能,可以保持应用语句不变的情况下,自动改变执行语句使用物化视图,极大提高了可用性。

CREATE MATERIALIZED VIEW product_sales_mv

PCTFREE 0 TABLESPACE demo

STORAGE (INITIAL 8k NEXT 8k PCTINCREASE 0)

BUILD IMMEDIATE

REFRESH FAST

ENABLE QUERY REWRITE

AS SELECT p.prod_name, SUM(s.amount_sold) AS dollar_sales,

COUNT(*) AS cnt, COUNT(s.amount_sold) AS cnt_amt

FROM sales s, products p

WHERE s.prod_id = p.prod_id GROUP BY p.prod_name;

聚合型需要注意添加count(*)字段,否则在增量更新时只有insert才生效,update和delete均无效。物化视图日志是记录原表的变化情况的一张表,如果需要使用增量更新则必须创建物化视图日志。

另外一个需要关注的是DBMS_ADVISOR.TUNE_MVIEW,这个存储过程是10g的新功能,作用是优化和改写你的创建语句,如果需要物化视图日志也会一并列出在USER_TUNE_MVIEW。但在某些版本中使用会有一定的问题。

select distinct a, b from tab

 

物化视图大量使用在分布数据库中,因此dblink也自然可能成为了考点之一了。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30122493/viewspace-1420100/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2015-01-29

  • 博文量
    17
  • 访问量
    9293