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。
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接