Roger Bamford - Woodside CA David Brower - Alamo CA Neil MacNaughton - Los Gatos CA Angelo Pruscino - Los Altos CA Tak Fung Wang - Redwood Shores CA
Assignee:
Oracle International Corporation - Redwood Shores CA
International Classification:
G06F 1730
US Classification:
707203, 711118
Abstract:
A mechanism is described for managing the caches on nodes in a cluster. The caches are globally managed so that a data item may be retained in any cache on the nodes. This may be accomplished by, for example, a replacement policy for replacing data items stored in the buffers of the caches, where a buffer is selected for replacement in a manner that accounts for factors that include the state of the caches of other nodes. Some cached data items are designated as globally shared, and assigned (either statically or dynamically) a primary cache. For example, if a buffer holds a copy of a data item whose primary cache is another node, then the data item in the buffer is favored for replacement over a local data item or a global data item for which this is the primary cache. According to another aspect of the invention, the cache retention value of buffers on different nodes are compared, and the buffer with the lowest cache retention value is selected for replacement. According to yet another aspect of the present invention, the replacement policy accounts for the configuration of other caches in the cluster.
Managing Checkpoint Queues In A Multiple Node System
Sashikanth Chandrasekaran - Bellmont CA, US Roger J. Bamford - Woodside CA, US William H. Bridge - Alameda CA, US David Brower - Alamo CA, US Neil MacNaughton - Los Gatos CA, US Wilson Wai Shun Chan - San Mateo CA, US Vinay Srihari - San Francisco CA, US
Assignee:
Oracle International Corporation - Redwood Shores CA
International Classification:
G06F 17/00
US Classification:
707203, 707202, 707100, 714 20, 714 16, 714 6
Abstract:
Techniques are provided for managing caches in a system with multiple caches that may contain different copies of the same data item. Specifically, techniques are provided for coordinating the write-to-disk operations performed on such data items to ensure that older versions of the data item are not written over newer versions, and to reduce the amount of processing required to recover after a failure. Various approaches are provided in which a master is used to coordinate with the multiple caches to cause a data item to be written to persistent storage. Techniques are also provided for managing checkpoints associated with the caches, where the checkpoints are used to determine the position at which to begin processing recovery logs in the event of a failure.
Methods To Perform Disk Writes In A Distributed Shared Disk System Needing Consistency Across Failures
Sashikanth Chandrasekaran - Bellmont CA, US Roger J. Bamford - Woodside CA, US William H. Bridge - Alameda CA, US David Brower - Alamo CA, US Neil MacNaughton - Los Gatos CA, US Wilson Wai Shun Chan - San Mateo CA, US Vinay Srihari - San Francisco CA, US
Assignee:
Oracle International Corp. - Redwood Shores CA
International Classification:
G06F 17/30
US Classification:
707203, 707201, 707202, 711119
Abstract:
Techniques are provided for managing caches in a system with multiple caches that may contain different copies of the same data item. Specifically, techniques are provided for coordinating the write-to-disk operations performed on such data items to ensure that older versions of the data item are not written over newer versions, and to reduce the amount of processing required to recover after a failure. Various approaches are provided in which a master is used to coordinate with the multiple caches to cause a data item to be written to persistent storage. Techniques are also provided for managing checkpoints associated with the caches, where the checkpoints are used to determine the position at which to begin processing recovery logs in the event of a failure.
Managing Checkpoint Queues In A Multiple Node System
Sashikanth Chandrasekaran - Bellmont CA, US Roger J. Bamford - Woodside CA, US William H. Bridge - Alameda CA, US David Brower - Alamo CA, US Neil MacNaughton - Los Gatos CA, US Wilson Wai Shun Chan - San Mateo CA, US Vinay Srihari - San Francisco CA, US
Assignee:
Oracle International Corporation - Redwood Shores CA
Techniques are provided for managing caches in a system with multiple caches that may contain different copies of the same data item. Specifically, techniques are provided for coordinating the write-to-disk operations performed on such data items to ensure that older versions of the data item are not written over newer versions, and to reduce the amount of processing required to recover after a failure. Various approaches are provided in which a master is used to coordinate with the multiple caches to cause a data item to be written to persistent storage. Techniques are also provided for managing checkpoints associated with the caches, where the checkpoints are used to determine the position at which to begin processing recovery logs in the event of a failure.
Using Local Locks For Global Synchronization In Multi-Node Systems
Juan Loaiza - Redwood City CA, US Sashikanth Chandrasekaran - Belmont CA, US Neil MacNaughton - Los Gatos CA, US
Assignee:
Oracle International Corporation - Redwood Shores CA
International Classification:
G06F 13/00
US Classification:
709229, 710200
Abstract:
Described herein are techniques for global synchronization that under various scenarios eliminate or defer the acquisition of global locks. In many cases, the need to acquire global locks is eliminated, thereby saving the overhead attendant to processing global locks.
Efficient Locking Of Shared Data That Is Accessed For Reads In A Cluster Database
Juan Loaiza - Redwood City CA, US Sashikanth Chandrasekaran - San Jose CA, US Neil Macnaughton - Los Gatos CA, US
Assignee:
Oracle International Corporation - Redwood Shores CA
International Classification:
G06F 13/00
US Classification:
709229, 710200
Abstract:
Described herein are techniques for synchronizing access to resources in a multi node system by establishing a resource as a read-mostly resource based on one or more criteria, and allowing a node to acquire a shared lock, not granted by the master, on the read-mostly resource where no anti-lock exists for the resource.
Managing Checkpoint Queues In A Multiple Node System
Sashikanth Chandrasekaran - Bellmont CA, US Roger J. Bamford - Woodside CA, US William H. Bridge - Alameda CA, US David Brower - Alamo CA, US Neil MacNaughton - Los Gatos CA, US Wilson Wai Shun Chan - San Mateo CA, US Vinay Srihari - San Francisco CA, US
Assignee:
Oracle International Corporation - Redwood Shores CA
Techniques are provided for managing caches in a system with multiple caches that may contain different copies of the same data item. Specifically, techniques are provided for coordinating the write-to-disk operations performed on such data items to ensure that older versions of the data item are not written over newer versions, and to reduce the amount of processing required to recover after a failure. Various approaches are provided in which a master is used to coordinate with the multiple caches to cause a data item to be written to persistent storage. Techniques are also provided for managing checkpoints associated with the caches, where the checkpoints are used to determine the position at which to begin processing recovery logs in the event of a failure.
Juan Loaiza - Woodside CA, US Neil MacNaughton - Los Gatos CA, US Eugene Ho - San Ramon CA, US Vipin Gokhale - Fremont CA, US Kiran Goyal - Foster City CA, US Tirthankar Lahiri - Palo Alto CA, US
Assignee:
Oracle International Corporation - Redwood Shores CA
International Classification:
G06F 12/00
US Classification:
710200, 710240, 711150
Abstract:
Techniques are provided for performing changes to a resource governed by a locking mechanism. An entity (such as a server instance in a database system cluster) requests permission to modify the resource. In response to the request, the entity receives a first lock on the resource, which grants permission to perform the change to the resource without making the change permanent. After receiving the first lock, the entity performs the change to a copy of the resource that resides in shared memory without making another copy of the resource. After performing the change and until receiving permission to make the change permanent, the entity prevents the change to the resource from becoming permanent. After performing the change, the entity receives a second lock on the resource, which grants the entity permission to make the change permanent. After receiving the second lock, the entity ceases to prevent the change to the resource from becoming permanent.