473,586 Members | 2,683 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

What's the meaning of DISK

CASE 1:
The following sentences were copied from the book "Administra tion
Guide Performance".

"If more pages have been written to disk, recovery of the database is
faster after a system crash because the database manager can rebuild
more of the buffer pool from disk instead of having to replay
transactions from the database log files."

My question is:
How to understand "rebuild buffer pool from disk"? Where is buffer
pool stored in disk?
CASE 2:
As we know, dirty pages contain data that has been changed but has not
yet been written to disk. After a changed page is written to disk, it
is considered clean again and remains in the buffer pool until its
space is needed for new pages. Page cleaner processes clean up the
buffer pool by writing dirty pages to disk. There are three types of
cleaning activities that can cause a page cleaner to take action and
remove a page or more from the buffer pool:
LSN Gap Triggers (e.g. Log Cleans)
Dirty Page Threshold Triggers (e.g. Threshold Cleans)
Dirty Page Steal Triggers (e.g. Victim Cleans)

My question is:
Except moving data into log files, where are the other dirty pages
moved to? If the are written to a temporary disk space, where is it?

Thanks in advance!!

James

May 23 '07 #1
2 3434
James <hu*****@gmail. comwrites:
CASE 1: The following sentences were copied from the book
"Administra tion Guide Performance".

"If more pages have been written to disk, recovery of the database
is faster after a system crash because the database manager can
rebuild more of the buffer pool from disk instead of having to
replay transactions from the database log files."

My question is: How to understand "rebuild buffer pool from disk"?
Where is buffer pool stored in disk?
Bufferpool pages, when first populated, are simple replica of pages on
disk. As transactions happen, these bp pages get "dirty". Before these
pages are dirtied, any changes are put in logs using write-ahead
logging (search the web for write-ahead logging or Aries for
details). These bp dirty pages are eventually written out to disk at
an opportune time, bringing the bp pages to a clean state thus making
them ready to be evicted if need be.

Hopefully this answers your 2nd question as well.
CASE 2: As we know, dirty pages contain data that has been changed
but has not yet been written to disk. After a changed page is
written to disk, it is considered clean again and remains in the
buffer pool until its space is needed for new pages. Page cleaner
processes clean up the buffer pool by writing dirty pages to
disk. There are three types of cleaning activities that can cause
a page cleaner to take action and remove a page or more from the
buffer pool: LSN Gap Triggers (e.g. Log Cleans) Dirty Page
Threshold Triggers (e.g. Threshold Cleans) Dirty Page Steal
Triggers (e.g. Victim Cleans)

My question is: Except moving data into log files, where are the
other dirty pages moved to? If the are written to a temporary disk
space, where is it?

Thanks in advance!!

James
--
Haider
May 23 '07 #2
Ian
James wrote:
CASE 1:
The following sentences were copied from the book "Administra tion
Guide Performance".

"If more pages have been written to disk, recovery of the database is
faster after a system crash because the database manager can rebuild
more of the buffer pool from disk instead of having to replay
transactions from the database log files."

My question is:
How to understand "rebuild buffer pool from disk"? Where is buffer
pool stored in disk?
It's not. Dirty bufferpool pages are written back to disk by the page
cleaners.

After a database crash, it's often the case that there were dirty pages
in the bufferpool that hadn't been written to disk. So DB2 needs a way
to make sure that the tablespace pages on disk get this information,
and it does this keeping track of the LSN of the oldest dirty page in
the bufferpool(s).

DB2 keeps track of 2 things:

LSN of the oldest uncommitted transaction (called LowTranLSN)
LSN of the oldest dirty page in the bufferpool (called MinBufLSN)

When doing crash recovery, DB2 determines uses the minimum of these 2
LSNs to as the starting point for replaying the log files.

So, the statement you're asking about is basically saying that if
MinBufLSN is always greater than LowTranLSN, your crash recovery will be
faster -- because DB2 will spend less time rebuilding the dirty pages
that were in the bufferpool at the time of the crash. (i.e., there were
fewer dirty pages).

CASE 2:
As we know, dirty pages contain data that has been changed but has not
yet been written to disk. After a changed page is written to disk, it
is considered clean again and remains in the buffer pool until its
space is needed for new pages. Page cleaner processes clean up the
buffer pool by writing dirty pages to disk. There are three types of
cleaning activities that can cause a page cleaner to take action and
remove a page or more from the buffer pool:
LSN Gap Triggers (e.g. Log Cleans)
Dirty Page Threshold Triggers (e.g. Threshold Cleans)
Dirty Page Steal Triggers (e.g. Victim Cleans)

My question is:
Except moving data into log files, where are the other dirty pages
moved to? If the are written to a temporary disk space, where is it?
They are written back to the tablespaces where they came from.
May 23 '07 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
2239
by: Vineet | last post by:
Hello, Can ANy body tell me what is the emaning of $$<var_name> in PHP. Regards, Vineet http://www.compose.co.in
4
4106
by: bingfeng | last post by:
I have some codes generated by perl, in which initialize some huge struct,such as PARA TOS_network_spantree_set_0_para_0 = { "vlan", emNUM, NULL, "", "configuration on a designated vlan", PRO_REQUIRED }; const char* TOS_network_spantree_set_0_para_1_emvalue = { "disable", "enable", NULL }; PARA TOS_network_spantree_set_0_para_1 = { "",...
7
2510
by: newbie | last post by:
anyone know is it this source code value:- T = ((Y >> 4) ^ X) & 0x0F0F0F0F; X ^= T; Y ^= (T << 4); T = ((Y ) ^ X) & 0x10101010; X ^= T; Y ^= (T ); X = (LHs << 3) | (LHs << 2) | (LHs << 1) | (LHs ) | (LHs << 7) | (LHs << 6) | (LHs << 5) | (LHs << 4);
0
173
by: John Salerno | last post by:
"Damon Getsman" <dgetsman@amirehab.netwrote in message news:4bfb891d-7a7b-45bc-b126-1d485c9206ee@m44g2000hsc.googlegroups.com... The OP's code sample makes sense for decorators, I think. Can you post an actual sample of what it is you saw? Sounds weird.
31
2425
by: Tommy | last post by:
struct stat *stats IF_LINT (= 0); I don't know why "IF_LINT (= 0)" is needed ? Source is df.c of df program on Linux coreutils-5.2.1\coreutils-5.2.1\src Thanks!
4
1456
by: sam | last post by:
Hi, I just want to ask the question about this code int len =0; len =5; "x41" * (len); In this is "x41" is multiply by 5 or it just can acquire space like this x41x41x41x41x41 . I am a newbie and i am confused , If you can't understand this question i am sorry, but i just want the clarification of this code.
0
7839
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language...
0
8338
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that...
0
8215
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
0
6610
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then...
1
5710
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes...
0
3836
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in...
0
3864
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1448
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
1179
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.