0

我拥有(相对)11G 数据仓库的基本访问权限。我所做的一些处理涉及通过一些计算将大表连接到大表,或者将额外的列添加到基本数据集。我通常将数据带入我自己的模式进行计算,但仓库处理能力有限,并且一些查询需要很长时间,因为大部分工作涉及影响或将数据连接到表的所有行(解释计划中的大量全表扫描! )。

我的问题是,如果我有一个参考号作为两个表的主键,如果我还使用这个参考号的散列版本,我会看到性能提升吗?

如果没有,在这些情况下还有其他方法可以提高性能吗?

4

1 回答 1

1

如果你是等值连接,那么你可能会得到一个哈希连接,并且将连接键转换为哈希值是隐含的。

在大型表之间获得更好的等连接性能的最佳方法是在连接键上对它们进行哈希分区。

分区连接通过避免哈希表在超过特定大小时溢出到磁盘来提供性能优势,因此您选择分区数以尝试保持哈希连接上的内存分配较低。

于 2013-09-21T14:34:13.047 回答