Re: How does Oracle know where to read from

  • From: K Gopalakrishnan <kaygopal@xxxxxxxxx>
  • To: ax.mount@xxxxxxxxx
  • Date: Fri, 10 Apr 2009 16:04:34 -0500

Alex, Let me try to answer in simple way.

When you run a query, data dictionary provides the file#,block# or
extent info for that table. Once you know the file#,blok# you can
compute the dba and search the buffer cache for that dba (yet another
simple hash function). If not found send an I/O request on that
file#,block#.

Is this what you are looking for or something else/?


On Fri, Apr 10, 2009 at 3:51 PM, amonte <ax.mount@xxxxxxxxx> wrote:
> Hi all
>
> I have a probably very basic question but I cant think how Oracle does it.
>
> When we query a table we know that data block address is hashed to
> read if buffer chain if reading from cache, otherwise look the rows in
> the data block address.
>
> My question is when we run a query how is the data block address
> obtained? From where?
>
> Alex
> --
> //www.freelists.org/webpage/oracle-l
>
>
>
--
//www.freelists.org/webpage/oracle-l


Other related posts: