资源说明:Hash join算法的一个基本思想就是根据小的row sources(称作build input,我们记较小的表为S,较大的表为B) 建立一个可以存在于hash area内存中的hash table,然后用大的row sources(称作probe input) 来探测前面所建的hash table。如果hash area内存不够大,hash table就无法完全存放在hash area内存中。针对这种情况,Oracle在连接键利用一个hash函数将build input和probe input分割成多个不相连的分区(分别记作Si和Bi),这个阶段叫做分区阶段;然后各自相应的分区,即Si和Bi再做Hash join,这个阶段叫做join阶段。
如果在分区后,针对某个分区所建的hash table还是太大的话,oracle就采用nested-loops hash join。所谓的nested-loops hash join就是对部分Si建立hash table,然后读取所有的Bi与所建的hash table做连接,然后再对剩余的Si建立hash table,再将所有的Bi与所建的hash table做连接,直至所有的Si都连接完了。
Hash Join算法有一个限制,就是它是在假设两张表在连接键上是均匀的,也就是说每个分区拥有差不多的数据。但是实际当中数据都是不均匀的,为了很好地解决这个问题,oracle引进了几种技术,位图向量过滤、角色互换、柱状图,这些术语的具体意义会在后面详细介绍。
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。
-
- Oracle 培训18天,讲师笔记Oracle 培训18天,讲师笔记,经典。
- Oracle9i 优化器介绍Oracle9i 优化器介绍 默认情况下,CBO 以最佳吞吐量为目标,这意味着Oracle 使用尽可 ...
- sql性能调整oracle 性能调整oracle 性能调整oracle 性能调整这本书很好的介绍了oralce 性能的优化,这本书里面从最基本的数据库的选择,以及sql语 ...
- ORACLE的体系结构ORACLE的体系结构了解ORACLE数据库的体系结构 负责数据库管理系统的安装和升级 启动和 ...
- Oracle 8i PL_SQL高级程序设计P L / S Q L是一种高级数据库程序设计语言,该语言专门用于在各种环境下对O r a c l e ...
- oracle 数据库连接、设计以及备份技巧集锦oracle 数据库连接、设计以及备份技巧集锦
- 数据库设计开发——北京邮电大学软件工程研究生的课程(14个课件)数据库设计开发——北京邮电大学软件工程研究生的课程 该文档现偏向于开发,里面涉及 ...
- java - oracle 连接驱动jar包 classes12.jarjava - oracle 连接驱动jar包 classes12.jar
- Oracle数据库学习课件此资源对初学习Oracle数据库有一定的帮助。里面还有Oracle数据库实验指导书。 ...
- 存储过程实例oracle.doc存储过程实例oracle.doc 存储过程实例oracle.doc 存储过程实例oracle.doc ...
-
- likoxglc.taz一个Unix下的ODBC数据库引擎,支持SQL 92 and SQL 89,支持Oracle、Sybase、Informix ...
- oramon.zip一个Oracle性能监视工具,含几个sql文件
- SQLMonitor2501.rar一个小巧实用的Oracle监视工具。 这是从Toad9.7中提取出来的,已经汉化。 ...
- oracletool-1.2.0.zip用perl写的Oracle管理工具
- sqlweb-2.2.0.tar.gz一个简单的数据库管理工具,可以管理Oracle等
- Osql10_src.zip又一个使用Oracle8 OCI API 实现的一系列包装类
- ora90.raroracle9i的绿色版的客户端,支持oracle10g.无需安装,配合pl/sql developer使用,非常方 ...
- VC数据库编程实例ORACLE数据库(经典).rarVC数据库编程实例-ORACLE数据库VC数据库编程实例
- OCI+Oracle.rar这个是用OCI接口在VC平台上对Oracle 数据库的操作.包括对数据库的连接,数据表的提取, ...
- 2004111521192723763.rar一个Oracle OCI编程接的C++封装,有OCI的全部功能,非常精简。好 ...