Home » RDBMS Server » Server Administration » DB buffer
DB buffer [message #172506] Tue, 16 May 2006 22:47 Go to next message
gajini
Messages: 262
Registered: January 2006
Senior Member
Hi i need some help on concept of db buffer.
Running oracle 8i now, been reading the documentation on oracle concepts, too little or rather imcomplete details provided, dont you guys feel the same too?

ok here comes the questions ( related )

- can a dirty buffer be pinned as well ?cos a user may 1st modified the data in the block ( so its dirty ) and commit it then another user may also update the data ( so the server process will pinned the block too ) am i right to say this?

and vice versa, a pinned buffer can be a dirty buffer too =).

can some1 provide me more details on, the write list and the LRU list, such that how each of them works, and how buffers are transfer between this 2 list. for LRU list, which side contain the MRU and which side contain the LRU, just dump me as much detail ( not too low level though) i need. for example, when a block need to be fetch from the datafile, what happens, and after modification, which side of the LRU list does the buffer go, after which when is it transfer to the dirty list to write, after which when it is transfer back to the LRU list as free buffer so on so for Smile

last but not least, everything the dbwr writes, it writes dirty buffers or write those in the dirty list? cos from what i read dirty buffers exists in the LRU list as well
Re: DB buffer [message #172906 is a reply to message #172506] Thu, 18 May 2006 10:07 Go to previous message
smartin
Messages: 1803
Registered: March 2005
Location: Jacksonville, Florida
Senior Member
gajini wrote on Tue, 16 May 2006 22:47

Hi i need some help on concept of db buffer.
Running oracle 8i now, been reading the documentation on oracle concepts, too little or rather imcomplete details provided, dont you guys feel the same too?




No, I think the docs are really quite good. Especially the later versions..the docs get better each version just like the database does. Check out the 10g docs.

Quote:


ok here comes the questions ( related )

- can a dirty buffer be pinned as well ?cos a user may 1st modified the data in the block ( so its dirty ) and commit it then another user may also update the data ( so the server process will pinned the block too ) am i right to say this?

and vice versa, a pinned buffer can be a dirty buffer too =).




When I hear the word pinned, I think of "required and forced and locked into memory". But in your scenario, the block can get dirty and then be committed and then be written out to disk, but still remain in memory for the other user to update data within it, provided there is enough memory and no other user flushed that block out. You can write the block out to file while still leaving it in memory. Writing and flushing it are two separate things.

Quote:


can some1 provide me more details on, the write list and the LRU list, such that how each of them works, and how buffers are transfer between this 2 list. for LRU list, which side contain the MRU and which side contain the LRU, just dump me as much detail ( not too low level though) i need. for example, when a block need to be fetch from the datafile, what happens, and after modification, which side of the LRU list does the buffer go, after which when is it transfer to the dirty list to write, after which when it is transfer back to the LRU list as free buffer so on so for Smile



Just dump me as much detail, but not too low level. I would suggest that you do read the docs, as all you need to know is there. Start with concepts guide, then move to administrators guide. Also do the performance tuning guide. Those three should have all you need.

Quote:


last but not least, everything the dbwr writes, it writes dirty buffers or write those in the dirty list? cos from what i read dirty buffers exists in the LRU list as well

Previous Topic: tablespace used by?
Next Topic: Partition Performance Improvement
Goto Forum:
  


Current Time: Fri Sep 20 11:38:39 CDT 2024