摘要:
There are disclosed systems, computer program products, and methods for self-tuning memory. In an embodiment, a method for self-tuning memory comprises setting a tuning interval and a target range for free memory for a memory pool. If memory consumption falls outside of the set target range for free memory during a tuning interval, a new target size for the memory pool is set based on the target range for free memory. Memory allocation for the memory pool is increased or decreased for the next tuning interval, such that the new target size for the memory pool is reached. A decrement rate may be used to provide a controlled decrease of the memory pool over a plurality of tuning intervals if necessary, until the new target size for the memory pool is reached.
摘要:
According to one embodiment of the present invention, a method for detecting and correcting hot pages in a database system is provided. According to one embodiment of the present invention, a method includes monitoring transactions involving pages in a database and determining if one of the transactions had to wait for access to one of the pages; incrementing a page contention counter each time one of the transactions had to wait for access to one of the pages. The method then determines if the page contention counter exceeds a predetermined threshold and monitors transactions on one of the pages for which the page contention count was exceeded. The method then determines if a row was accessed in the page for which the page contention count was exceeded and increments a reference count for the accessed row. the accessed rows are flagged when the reference count exceeds a second predetermined threshold. The flagged rows are moved to another page in the database.
摘要:
According to one embodiment of the present invention, a method of detecting and correcting hot pages in a database system includes monitoring transactions involving pages in a database and determining if one of the transactions had to wait for access to one of the pages; incrementing a page contention counter each time one of the transactions had to wait for access to one of the pages. The method then determines if the page contention counter exceeds a predetermined threshold and monitors transactions on one of the pages for which the page contention count was exceeded. The method then determines if a row was accessed in the page for which the page contention count was exceeded and increments a reference count for the accessed row. The accessed rows are flagged when the reference count exceeds a second predetermined threshold. The flagged rows are moved to another page in the database.
摘要:
There are disclosed systems, computer program products, and methods for self-tuning memory. In an embodiment, a method for self-tuning memory comprises setting a tuning interval and a target range for free memory for a memory pool. If memory consumption falls outside of the set target range for free memory during a tuning interval, a new target size for the memory pool is set based on the target range for free memory. Memory allocation for the memory pool is increased or decreased for the next tuning interval, such that the new target size for the memory pool is reached. A decrement rate may be used to provide a controlled decrease of the memory pool over a plurality of tuning intervals if necessary, until the new target size for the memory pool is reached.
摘要:
In a shared data system comprising one or more primary nodes and a plurality of secondary nodes, global lock manager on a primary node manages locks for shared resources by exchanging an abstract lock state with local lock managers on the secondary nodes. The abstract lock state includes a particular representation of all of the applications on the nodes that are requesting or are granted locks. The exchange of these particular lock states instead of individual requests improves performance by increasing concurrency and reducing off-machine communication. A global deadlock detector on a node detects and resolves global deadlocks, in conjunction with local deadlock detectors on the secondary nodes.
摘要:
A data processing implemented method and system and article of manufacture are provided for determining compatibility between a primary instance and a standby instance, the primary instance being characterized by a first log position indicator and a primary log chain fingerprint (FP-P) and the secondary instance being characterized by a second log position indicator and a secondary log chain fingerprint (FP-S); the FP-P and the FP-S each uniquely identifying a prescribed history of an associated data processing system. The method, for example, includes a series of steps comprising: comparing the first log position indicator with the second log position indicator to determine compatibility between the secondary instance and the primary instance; comparing the primary log chain fingerprint (FP-P) with the secondary log chain fingerprint (FP-S) to determine compatibility between the secondary instance and the primary instance; and indicating that the secondary instance is compatible with the primary instance when both of the above comparisons determine compatibility.
摘要:
Methods, systems and program products for log-shipping data replication from a primary system to a communicatively-coupled standby system. Embodiments of the invention may receive transactional log data at a standby system, from the primary system, and before the transactional log data is written to storage on the primary system. Embodiments may then receive a notification from the primary system indicating that the corresponding log data was written to storage on the primary system, and responsive to receiving the notification, may process the received transactional log data.
摘要:
A system and method for managing shared resources is disclosed. The system includes a primary coherency processing unit which processes lock requests from a plurality of data processing hosts, the primary coherency processing unit also storing a first current lock state information for the plurality of data processing hosts, the first current lock state information including a plurality of locks held by the plurality of data processing hosts. The system further includes a standby coherency processing unit storing fewer locks than the primary coherency processing unit, the locks stored by the standby coherency processing unit being a subset of locks included in the first current lock state information, the standby coherency unit configured to perform a plurality of activities of the primary coherency processing unit using the subset of locks in response to a failure of the primary coherency processing unit.
摘要:
An operating system directed to using special properties of a common inter-process communications mechanism (IPC), namely UNIX domain socket-pairs or stream-pipes alternatively as a storage medium for file-descriptors of UNIX processes. When a file-descriptor is written into a socket-pair, and closed in the UNIX process, the file remains open, but occupies no space in the process' file-table. The file-descriptor may later be read out of the socket-pair to reestablish it in the file-table, and access it. This property is implemented in an IPC mechanism of UNIX operating system whereby a process such as a dispatcher may manage more connections and processes than its file-table size allow. This provides scalability improvements of the UNIX operating system.
摘要:
Memory balancing and optimization services (MBOS) control a size of a plurality of memory heaps, and a memory optimizer for allocating and de-allocating memory for a plurality of respective memory consumers. The MBOS may be instantiated within an application program such as a database management system providing services to memory consumers within the application. Alternatively, the MBOS may be instantiated within an operating system for providing services to memory consumers that are applications such as database management systems, e-commerce engines, operating systems, customer relationship management (CRM), enterprise resource planning (ERP), or supply chain management (SCM). Alternatively, an MBOS is instantiated within the operating system to provide services to applications and an MBOS is instantiated within each application to provide services to memory consumers within the application.