Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: Re: how does oracle manage hash maps?
The relevant subset of data values gets copied into the hash map. That means the rows and columns required from the table, not the whole table.
You might be interested doing a hash join with event 10104 set - level 12 is an option with Oracle 9, otherwise just:
alter session set events '10104 trace name context forever'; execute query that does one hash join. alter session set events '10104 trace name context off';
You'll probably recognise references to all the bits you would expect to see.
Regards
Jonathan Lewis
http://www.jlcomp.demon.co.uk
The educated person is not the person
who can answer the questions, but the
person who can question the answers -- T. Schick Jr
Next public appearances:
March 2004 Hotsos Symposium - The Burden of Proof
March 2004 Charlotte NC OUG - CBO Tutorial
April 2004 Iceland
One-day tutorials:
http://www.jlcomp.demon.co.uk/tutorial.html
Three-day seminar:
see http://www.jlcomp.demon.co.uk/seminar.html
____UK___February
____UK___June
The Co-operative Oracle Users' FAQ
http://www.jlcomp.demon.co.uk/faq/ind_faq.html
I know how the LRU works with linked lists. I've written linked list code before.
>From your diagram I take it that, oracle builds the hash map in the pga. The
number of buckets is a prime number.
Its hard to read your diagram. I'm not quite sure how the hash map links to the buffer chain. In basic hashing methodology each hash bucket points to a specific value.
Jonathan lewis stated that in making the hash map oracle grabs the actually values you want to return. However, those values don't go into the PGA with the hash map do they? I thought all data elements went into the buffer cache?
-- Archives are at http://www.freelists.org/archives/oracle-l/ FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html -----------------------------------------------------------------Received on Fri Feb 13 2004 - 08:06:35 CST
![]() |
![]() |