ZT 定位导致物化视图无法快速刷新的原因
作者: yangtingkun(http://yangtingkun.itpub.net)发表于: 2005.01.09 22:37分类: ORACLE 出处: http://yangtingkun.itpub.net/post/468/13318[@more@]作者: yangtingkun(http://yangtingkun.itpub.net)发表于: 2005.01.09 22:37分类: ORACLE 出处: http://yangtingkun.itpub.net/post/468/13318物化视图的快速刷新采用了增量的机制,在刷新时,只针对基表上发生变化的数据进行刷新。因此快速刷新是物化视图刷新方式的首选。 但是快速刷新具有较多的约束,而且对于采用ON COMMIT模式进行快速刷新的物化视图更是如此。对于包含聚集和包含连
ZT oracle10g新特性——物化视图
本文详细介绍oracle10g新特性——物化视图[@more@]Advisor 在10g将查询重写并且引进了新的强大的调优建议者使管理物化视图变得容易多了。 物化视图(Materialized Views MVs),也被称为快照,现在已经被广泛应用了。MV将一个查询的结果存储在一个段中,并且当用户提交查询时返回查询结果,而不需要重新执行查询——如果查询会被执行多次(经常出现在数据仓库环境中),这就会非常有效。MV可以从基础表中完全刷新或通过使用快速刷新机制增量刷新。 假如你有如下定义的MV:create materialized view mv_hotel_resvrefresh fastenabl
Data Warehouse Guide阅读笔记(八):materialized view之一
作者: NinGoo(http://ningoo.itpub.net)发表于: 2006.12.13 17:05分类: DW&BI 出处: http://ningoo.itpub.net/post/2149/240472---------------------------------------------------------------[@more@]通常,在数据仓库中可以通过创建摘要信息(summary)来提升性能。这里的摘要指的是预先对一些连接(join)和聚合(aggregation)进行计算并将结果保存下来,后续查询的时候可以直接利用保存的摘要信息来生成报表。在oracle中,可以利用物化视图(materialized view)来创建数据仓库中的摘要。物化视图另外一种重要的功能是复制数据。结合o
Data Warehouse Guide阅读笔记(七):partition table
作者: NinGoo(http://ningoo.itpub.net)发表于: 2006.10.29 00:25分类: DW&BI 出处: http://ningoo.itpub.net/post/2149/224551---------------------------------------------------------------[@more@]分区表(partition table)在数据仓库中的重要性不言而寓,数据仓库的事实表中的数据量一般都比较大,而且很多时候是和时间相关的历史数据,使用范围分区是最合适的,但有时也要结合实际考虑其他的分区方式。分区有三种基本的方式:range,hash和list。某个分区还可以继续进行子分区,所以,上面三种基本的分区还可以组成两种组合分区
Data Warehouse Guide阅读笔记(六):unique constraint & unique index
作者: NinGoo(http://ningoo.itpub.net)发表于: 2006.10.25 10:10分类: DW&BI 出处: http://ningoo.itpub.net/post/2149/223696---------------------------------------------------------------[@more@]一般情况下,unique constraint都是通过unique index来实现的。但是在数据仓库中,由于数据量巨大,建立一个索引可能需要花费相当大的时间和空间,假如查询中又用不上这个索引的话,那么建立索引的高代价却没有带来什么收益,这是很不划算的。举个例子,假如有一个sales表,其中sales_id的数据是唯一的,我们在sales_id上建一个un
Data Warehourse Guide阅读笔记(五):Bitmap join index
作者: NinGoo(http://ningoo.itpub.net)发表于: 2006.10.24 17:04分类: DW&BI 出处: http://ningoo.itpub.net/post/2149/223616---------------------------------------------------------------[@more@]Bitmap index的主要思想就是,针对每一个可能的值x,建立一个或一组位图映射,每个bit为1代表这个位置的值等于x,为0则不等于x。而每个位置都可以直接映射到某一行的rowid。由于在执行DML操作时,锁定的是整个bitmap,而不是bitmap中的某个位,所以bitmap index对于并发DML的性能很差,而且频繁的DML操作会使得bitmap index的空间
Data Warehouse Guide文档笔记(四):dimension
作者: NinGoo(http://ningoo.itpub.net)发表于: 2006.10.22 23:13分类: DW&BI 出处: http://ningoo.itpub.net/post/2149/223164---------------------------------------------------------------[@more@]要理解oracle中的dimension,首先要搞清楚dimension和dimension table之间的区别。dimension table是table,和关系数据库中的其他table一样,存放数据,需要实际的存储空间。而dimension则只是一个逻辑结构,定义了dimension table中的一个列或一组列于其他列之间的一个层次关系,dimension只保存定义,可以将其理解为一种特定的c
Data Warehouse Guide文档笔记(三):RELY constraints
作者: NinGoo(http://ningoo.itpub.net)发表于: 2006.10.22 21:18分类: DW&BI 出处: http://ningoo.itpub.net/post/2149/223139---------------------------------------------------------------[@more@]数据仓库中的数据,一般是通过ETL定期load进来的。在做ETL的时候,一般会对load的数据的一致性做检查。所以,我们有理由认为,数据仓库中的数据都是符合一致性要求的。那么,在数据仓库中的表上还有必要加constraint么? 既然我们已经可以确定数据仓库中的数据是一致的,那么应该就没有必要再在表上建constraint了,constraint对D
Data Warehouse Guide文档笔记(二):star schema
作者: NinGoo(http://ningoo.itpub.net)发表于: 2006.10.21 19:10分类: DW&BI 出处: http://ningoo.itpub.net/post/2149/223007---------------------------------------------------------------[@more@]数据仓库这么多年来发展的成果,我认为恐怕最重要的要算star schema了,可以说它是整个数据仓库的基石。 star schema主要的思想在于将我们关心的数据和用于描述数据的属性分隔开来。实际的数据存放于Fact table中,从不同角度来描述数据的属性放到不同的dimension table中。比如,一个sales数据仓库可以这样设计,每一笔销售记录,
Data Warehouse Guide文档笔记(一):Data warehouse和OLTP系统的对比
作者: NinGoo(http://ningoo.itpub.net)发表于: 2006.10.21 13:48分类: DW&BI 出处: http://ningoo.itpub.net/post/2149/222935---------------------------------------------------------------[@more@]新的工作主要专注于数据仓库的构建,因此开始阅读oracle的data warehouse guide文档,随便在这里记下一点笔记。希望能够坚持看完。Oracle10g Data Warehouse Guide链接如下:http://download-west.oracle.com/docs/cd/B19306_01/server.102/b14223/toc.htm和OLTP系统不同,数据仓库的主要目的是用于查询和分析数据。因此,数据仓库
ZT 物化视图详解
作者 yangtingkun[@more@]Oracle8i版本开始提供可以创建实体化视图即物化视图(MATERIALIZED VIEW),它确实存放有物理数据。物化视图包含定义视图的查询时所选择的基表中的行。对物化视图的查询就是直接从该视图中取出行。在olap环境中,mview是以空间换时间的一种有效手段,更少的物理读/写,更少的cpu时间,更快的响应速度,所以它不适合高端的oltp环境;在oltp环境中,规模较大的报表适合使用mview来提高查询性能。数据仓库中的物化视图主要用于预先计算并保存表连接或聚集等耗时较多的操作的结果,这样,在执行查询时,就可以避免进行这
ZT 写有效的历史数据迁移sql
利用分页技术,分批对历史数据迁移,适用于没分区的大表,以后有空实际测试下性能[@more@]对于高并发oltp系统,生产库可能只需保留当前几个月的数据,之前的数据要全部迁移到历史库中。那么,如何处理这样的需求,如何写合适的历史迁移程序呢?1.常规写法begin--迁移数据insert into tb_usersselect *from tb_users_dbc awhere gmt_modified <= trunc(sysdate) - v_day and rownum<5000000;--删除原表数据 delete from tb_users_dbcwhere gmt_modified <= trunc(sysdate) - v_day and rownum<5000000;commit;end;2.使用for循环