Results 1 to 2 of 2

Thread: Cache memory

  1. #1
    Join Date
    Apr 2006
    Posts
    20

    Unanswered: Cache memory

    I want to know how Oracle works with the cache memory.

    I know that there is a parameter called DB_CACHE_SIZE with the reserved cache memory.

    How does this memory work when I run a sql??

    I think that first time I run the sql Oracle read data from disk, but next time this data are
    in cache memory, is right??

    If this data is in cache memory in which moment Oracle delete this data from cache??

    I suppose that when I run sql1, sql2,..., sqln when cache memory is full Oracle delete sql1 results data, is right??

    Other question: is it possible to delete cache memory??, I need to delete it, to make some perfomance tests.
    I don't have dba privileges.

    Any help about cache memory will be greatly appreciated.

    Thanks in advance

  2. #2
    Join Date
    Mar 2002
    Location
    Reading, UK
    Posts
    1,137
    If I remember rightly the database cache uses a LRU algorithm to remove stuff from the cache when the cache is full and it needs to cache a new data block. In 10g there is an alter system command to flush the cache.

    As for performance measurement I usually run the query twice in quick succession and use the 2nd run as a benchmark. Its usually better to look at how many block gets a query needs to do (using tracing) rather than timing as you usually have other jobs going on which effects timings.

    Alan

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •