In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-04-16 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >
Share
Shulou(Shulou.com)05/31 Report--
In this issue, Xiaobian will bring you about how to understand oracle 11g DRM. The article is rich in content and analyzed and described from a professional perspective. After reading this article, I hope you can gain something.
Introduction to DRM
First, we introduce some concepts related to DRM.
Buffer: For RAC databases, when a block of data is read into buffer cache, we call it buffer , cache fusion will manage this buffer as a resource.
Master: In the RAC database world, every resource has a master instance, which allocates space in the shared pool (e.g., gcs resource and ges resource sections) to store information about the resource, such as which instance has the latest version of the buffer, which instance has what level of lock for the buffer, and so on. And, responsible for maintaining and maintaining the status of this resource.
Next, we briefly describe the process of accessing a buffer in a RAC environment. Let's take a 4-node RAC database as an example. Note that we will list only one typical situation, not all possible situations, and only a brief introduction to the steps.
Step 1: Instance 3 needs to access buffer1 in X(exclusive) mode, making a request to master instance (1).
Step 2: The master instance (1) finds that instance 2 holds buffer1 in X mode, and then notifies instance 2 to release X lock and send buffer1 to instance 3.
Step 3: Instance 2 releases X lock and sends the latest version of buffer1 to instance 3.
Step 4: Instance 3 obtains buffer1 and notifies master instance (1) to update the latest status of resource buffer1.
From the above steps, it is not difficult to see that in the RAC database, when we access a buffer, there will be at most 3 instances involved, the master instance, the holder instance and the requester instance. There are two types of data transfers: message: for the transmission of lock-related information, and data: for the transmission of buffers. At the same time, according to the above steps, we naturally think that if the master and the requester are on the same instance, then the transmission of messages between instances can be reduced and the code path of access will be shorter, thus improving performance, but each buffer is read into the buffer cache, and the master node is selected randomly. Based on this consideration, oracle introduced a new feature DRM (Dynamic Resource Management) starting with 10g.
The main function of DRM is to determine which instance the buffer corresponding to a database object should be mastered to according to the number of times and mode of accessing a database object (10gR1 in data files) in each instance within a period of time (default 10 minutes). If an instance accesses a database object a certain number of times (default 50 times) more than other instances within a specified period of time, oracle will transfer all the master information of the buffer of this object to the corresponding instance (note: not transfer buffer). Of course, the transfer process is gradual. When Oracle decides to assign a buffer's master instance to a local instance, it adds an affinity lock to the buffer for fast access. This is also the origin of the object affinity we often refer to.
Next, we describe the basic steps of DRM.
1. Oracle stops all operations on buffers that require remastering. Note: DRM is progressive, that is, in units of windows, a portion of the buffer is remastered at a time.
2. Lmon notifies all instances that they are ready for remastering
3. Clear the master information of the corresponding buffer in the old master instance
4. Pass master information to the new master instance
5. Build up-to-date state of resources in new master instance
6. End and release all resources occupied by all previous steps.
Then, we briefly introduce some parameters related to DRM.
_gc_policy_time: Unit: minutes. Controls the time interval for DRM to count the number of times an instance accesses the buffer. Default: 10 minutes.
_gc_affinity_ratio: Controls the minimum ratio (threshold) required for remastering, default is 50. In other words, if an instance accesses a database object 50 times more than all other instances within 10 minutes (_gc_policy_time)(note: 50 times, not 50 times), the buffer of the database object is remastered.
Note: please do not modify the values of the above parameters unless you know exactly what you are doing or are acting on oracle engineers advice.
Finally, if you are experiencing DRM-related problems, we recommend that you check out the following information.
1. Trace files for the Lmon, lmd, lms and diag processes to identify where the problem occurred in DRM and the status of the lms,lmon,lmd processes.
2. AWR and ASH reports, confirming the status of those waiting for events that last a long time, as well as lmon,lms and lmd.
3. Refer to note 1492990.1 for DMR diagnostic script output.
The above is how to understand oracle 11g DRM shared by Xiaobian for everyone. If there is a similar doubt, please refer to the above analysis for understanding. If you want to know more about it, please pay attention to the industry information channel.
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.