WEB开发网
开发学院数据库Oracle Oracle数据仓库查询优化技术 阅读

Oracle数据仓库查询优化技术

 2007-05-06 12:07:32 来源:WEB开发网   
核心提示: SQL> select t.t_quarter, sum(f.amount1),sum(f.amount2)2 from time_dim t,fact_sales f3 where t.time_id=f.time_id4 group by t.t_quarter;执行计划--Pl
SQL> select t.t_quarter, sum(f.amount1),sum(f.amount2)
2 from time_dim t,fact_sales f
3 where t.time_id=f.time_id
4 group by t.t_quarter;
执行计划
----------------------------------------------------------
Plan hash value: 3478386927
----------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
----------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 11 | 330 | 11 (28)| 00:00:01 |
| 1 | HASH GROUP BY | | 11 | 330 | 11 (28)| 00:00:01 |
|*2 | HASH JOIN | | 257 | 7710 | 10 (20)| 00:00:01 |
| 3| MAT_VIEW REWRITE ACCESS FULL| MV_MONTH |33 |561|3 (0)| 00:00:01|
| 4 | VIEW | | 257 | 3341 | 6 (17)| 00:00:01 |
| 5 | HASH UNIQUE | | 257 | 3341 | 6 (17)| 00:00:01 |
| 6 | TABLE ACCESS FULL | TIME_DIM | 1000 | 13000 | 5 (0)| 00:00:01 |
---------------------------------------------------------------------

四、位图连接索引

位图连接索引(bitmap join index)是基于多表连接的位图索引,连接条件要求是等于的内连接(equi-inner join)。对于数据仓库而言,较普遍的是Fact table的外键列和相关的Dimension table的主键列的等于连接操作。位图连接索引能够消除查询中的连接操作,因为它实际上已经将连接的结果保存在索引当中了。而且,相对于在表的连接列上建普通位图索引来说,位图连接索引需要更少的存储空间。物化视图也可以用来消除连接操作,但位图连接索引比起物化视图来更有效率,因为通过位图连接索引可以直接将基于索引列的查询对应到事实表的rowid。

上一页  1 2 3 4 5 6  下一页

Tags:Oracle 数据 仓库

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接