Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Hashing two tables for a join to BIG TABLE?
On Mon, 1 Apr 2002, jonathan_at_jlcomp.demon.co.uk wrote:
>
>
>> in the order small2, small2, big.
What would be the swap_join_inputs this time? Do I need more than one?
Say I have small1, small2, small3, small4, small5, big.
/*+
ordered
use_hash(big) use_hash(small1) use_hash(small2) use_hash(small3) use_hash(small4) use_hash(small5)
I might get a plan looking like?
hash join
table access full of small5 hash join table access full of small4 hash join table access full of small3 hash join table access full of small2 hash join table access full of small1 table access full of big
What should the hint and plan look like so I can know that this strategy is being followed for more than three tables?
> The drawback is that you end up using hash_area_size once for every
> small table - which could be a lot of memory.
Is there any merit to using star transformations? I was just about to experiment with this strategy until I caught your reply, and then I went off to experiment with what you said. I was thinking the big could be viewed as my fact table and small1/6 could be my dimension tables, although, this is only for thinking about improving the performance, not the design.
Thanks again Jonathan.
-- Galen deForest Boyer Sweet dreams and flying machines in pieces on the ground.Received on Mon Apr 01 2002 - 23:15:11 CST
![]() |
![]() |