Confusion over Keep Cache
DBAsupport.com Forums - Powered by vBulletin
Results 1 to 4 of 4

Thread: Confusion over Keep Cache

  1. #1
    Join Date
    Sep 2007
    Posts
    42

    Confusion over Keep Cache

    Hi,
    I have some confusion about Keep Pool in Buffer Cache.

    1. What is the reasoning for placing a table in the KEEP buffer pool because if it is frequently accessed, it will be around when needed (ie if it is constantly being accessed it will not age out) .

    2. Would the table be still in the Default Pool if the Keep Pool is not sized and the command is being issued alter TABLE SCOTT.EMP storage (buffer_pool keep) ?

    3. If the database is restarted will the table be wiped out of the Keep Pool and again be pinned to the Keep Pool ?

    Please help.

  2. #2
    Join Date
    May 2002
    Posts
    2,645
    1. Exactly, but keep keeps it there for sure
    2. Yes
    3. It's common to use an after startup trigger to pin objects in the keep pool

    If you are on 11g and want even faster access, and the table isn't too big, consider using the result cache.

  3. #3
    Join Date
    Mar 2007
    Location
    Ft. Lauderdale, FL
    Posts
    3,554
    The KEEP pool is just a buffer cache as DEFAULT and RECYCLE are.

    If you do not size KEEP pool to hold all the data you want to keep in there blocks will age out the same way they do when in the DEFAULT or RECYCLE pools - Only difference is, competition for KEEP buffer cache datablocks is restricted to the objects you assign to it.

    Hope this clarifies.
    Pablo (Paul) Berzukov

    Author of Understanding Database Administration available at amazon and other bookstores.

    Disclaimer: Advice is provided to the best of my knowledge but no implicit or explicit warranties are provided. Since the advisor explicitly encourages testing any and all suggestions on a test non-production environment advisor should not held liable or responsible for any actions taken based on the given advice.

  4. #4
    Join Date
    Sep 2007
    Posts
    42
    Thanks everyone for your helpful answers.
    I did one test. Initially DB_KEEP_CACHE_SIZE was set as 0. I placed a table into the cache and when I checked the cache size it was 16M and the table was not into Default Cache.

Posting Permissions

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



Click Here to Expand Forum to Full Width