Patents by Inventor Neil MacNaughton
Neil MacNaughton has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 10339069Abstract: Techniques are provided for managing cached data objects in a mixed workload environment. In an embodiment, a database system receives request to access a target data object. The database system determines whether the request to access the target data object is associated with a first type of workload or a second type of workload. In response to determining that the request is associated with the first type of workload, the target data object replaces a least recently used data object in a cache. In response to determining that the request is associated with the second type of workload, the target data object is cached based on an associated access-level value.Type: GrantFiled: March 14, 2013Date of Patent: July 2, 2019Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Adam Y. Lee, J. William Lee, Dmitry Mikhailovich Potapov, Neil MacNaughton, Vipin Gokhale, Bharat Chandra Baddepudi, David Vengerov
-
Patent number: 10216781Abstract: Techniques are described for maintaining coherency of a portion of a database object populated in the volatile memories of multiple nodes in a database cluster. The techniques involve maintaining a local invalidation bitmap for chunks of data stored in memory in each particular node in the cluster by tracking locks granted by a lock manager. During a pre-loading operation, each given node requests a set of shared locks associated with the chunks of data to be store in the given node's memory. When a request to release one of these shared locks occurs, the in-memory copy of those data items may be invalidated in the node releasing its shared lock.Type: GrantFiled: December 29, 2015Date of Patent: February 26, 2019Assignee: Oracle International CorporationInventors: Sanket Hase, Neil MacNaughton, Vivekanandhan Raja, Atrayee Mullick, Vineet Marwah, Amit Ganesh
-
Patent number: 10067974Abstract: Techniques are herein described for loading a portion of a database object into volatile memory without blocking database manipulation language transactions. The techniques involve invalidating data items loaded from blocks affected by a transaction, referred to as a straddling transaction that started before the load time and committed after the load time. Identifying these straddling transactions involves reviewing one or more transaction lists associated with the set of data items loaded in memory. The transaction list may be read in reverse temporal order of commit to identify a transaction meeting the criteria of starting before the load start, not committing before the load time, and affecting a data item loaded in memory.Type: GrantFiled: December 29, 2015Date of Patent: September 4, 2018Assignee: Oracle International CorporationInventors: Vivekanandhan Raja, Atrayee Mullick, Sanket Hase, Sukhada Pendse, Amit Ganesh, Vineet Marwah, Neil MacNaughton
-
Patent number: 9519589Abstract: 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 transferring data items and locks associated with the data items from one node to another.Type: GrantFiled: August 8, 2011Date of Patent: December 13, 2016Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Sashikanth Chandrasekaran, Roger J. Bamford, William H. Bridge, David Brower, Neil MacNaughton, Wilson Wai Shun Chan, Vinay Srihari
-
Patent number: 9514160Abstract: A method, system, and computer program product. The method for non-intrusive redeployment of a standby database facility comprises configuring a database system having a shared lock manager process to synchronize two or more concurrent access instances, then granting lock requests for access to a cache of database blocks. At some moment in time, the shared lock manager process may fail, and a monitor process detects the failure or other stoppage of the shared lock manager process. A new shared lock manager process and other processes are started, at least one of which serves for identifying the database blocks in the cache that have not yet been written to the database. The identified blocks are formed into a recovery set of redo operations. During this time, incoming requests for access to the cache of database blocks are briefly blocked, at least until the recovery set of redo operations has been formed.Type: GrantFiled: March 11, 2013Date of Patent: December 6, 2016Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Shanshan Song, Yunrui Li, Tolga Yurek, Mahesh Girkar, Neil MacNaughton
-
Publication number: 20160350363Abstract: Techniques are herein described for loading a portion of a database object into volatile memory without blocking database manipulation language transactions. The techniques involve invalidating data items loaded from blocks affected by a transaction, referred to as a straddling transaction that started before the load time and committed after the load time. Identifying these straddling transactions involves reviewing one or more transaction lists associated with the set of data items loaded in memory. The transaction list may be read in reverse temporal order of commit to identify a transaction meeting the criteria of starting before the load start, not committing before the load time, and affecting a data item loaded in memory.Type: ApplicationFiled: December 29, 2015Publication date: December 1, 2016Inventors: Vivekanandhan Raja, Atrayee Mullick, Sanket Hase, Sukhada Pendse, Amit Ganesh, Vineet Marwah, Neil MacNaughton
-
Publication number: 20160350352Abstract: Techniques are described for maintaining coherency of a portion of a database object populated in the volatile memories of multiple nodes in a database cluster. The techniques involve maintaining a local invalidation bitmap for chunks of data stored in memory in each particular node in the cluster by tracking locks granted by a lock manager. During a pre-loading operation, each given node requests a set of shared locks associated with the chunks of data to be store in the given node's memory. When a request to release one of these shared locks occurs, the in-memory copy of those data items may be invalidated in the node releasing its shared lock.Type: ApplicationFiled: December 29, 2015Publication date: December 1, 2016Inventors: SANKET HASE, NEIL MACNAUGHTON, VIVEKANANDHAN RAJA, ATRAYEE MULLICK, VINEET MARWAH, AMIT GANESH
-
Publication number: 20140095802Abstract: Techniques are provided for managing cached data objects in a mixed workload environment. In an embodiment, a database system receives request to access a target data object. The database system determines whether the request to access the target data object is associated with a first type of workload or a second type of workload. In response to determining that the request is associated with the first type of workload, the target data object replaces a least recently used data object in a cache. In response to determining that the request is associated with the second type of workload, the target data object is cached based on an associated access-level value.Type: ApplicationFiled: March 14, 2013Publication date: April 3, 2014Applicant: Oracle International CorporationInventors: Adam Y. Lee, J. William Lee, Dmitry Mikhailovich Potapov, Neil MacNaughton, Vipin Gokhale, Bharat Chandra Baddepudi, David Vengerov
-
Patent number: 8224977Abstract: 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.Type: GrantFiled: November 6, 2007Date of Patent: July 17, 2012Assignee: Oracle International CorporationInventors: Juan Loaiza, Sashikanth Chandrasekaran, Neil MacNaughton
-
Publication number: 20110295822Abstract: 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 transferring data items and locks associated with the data items from one node to another.Type: ApplicationFiled: August 8, 2011Publication date: December 1, 2011Inventors: Sashikanth Chandrasekaran, Roger J. Bamford, William H. Bridge, David Brower, Neil MacNaughton, Wilson Wai Shun Chan, Vinay Srihari
-
Patent number: 8051046Abstract: 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.Type: GrantFiled: February 20, 2007Date of Patent: November 1, 2011Assignee: Oracle International CorporationInventors: Sashikanth Chandrasekaran, Roger J. Bamford, William H. Bridge, David Brower, Neil MacNaughton, Wilson Wai Shun Chan, Vinay Srihari
-
Patent number: 7991775Abstract: Described herein are techniques for generating a global checkpoint system change number and computing a snapshot query using the global checkpoint system change number without a need to acquire global locks. In many cases, the need to acquire global locks is eliminated, thereby saving the overhead attendant to processing global locks.Type: GrantFiled: October 2, 2008Date of Patent: August 2, 2011Assignee: Oracle International CorporationInventors: Neil MacNaughton, Tirthankar Lahiri, Varun Malhotra
-
Publication number: 20110173169Abstract: 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.Type: ApplicationFiled: March 23, 2011Publication date: July 14, 2011Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Sashikanth Chandrasekaran, Roger J. Bamford, William H. Bridge, David Brower, Neil Macnaughton, Wilson Wai Shun Chan, Vinay Srihari
-
Patent number: 7930278Abstract: 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.Type: GrantFiled: February 20, 2007Date of Patent: April 19, 2011Assignee: Oracle International CorporationInventors: Sashikanth Chandrasekaran, Roger J. Bamford, William H. Bridge, David Brower, Neil Macnaughton, Wilson Wai Shun Chan, Vinay Srihari
-
Patent number: 7921090Abstract: Methods and apparatuses for providing access to data in a cluster database are described. Embodiments of the invention include identifying situations in which many nodes require relatively equal access to a data block, and taking appropriate measures to improve the performance of the system in these situations. For example, a node may automatically downgrade its lock from an X lock to an S lock as soon as it has finished a modification of the data. S locks are sent to other nodes in the system as soon as a modification is complete. Modifications to the data are also sent to other nodes in the system as soon as a modification is complete. Depending on the size of the data modification, the entire data block may be sent, or only the modifications to the data may be sent.Type: GrantFiled: June 9, 2006Date of Patent: April 5, 2011Assignee: Oracle International CorporationInventors: Eugene Ho, Kotaro Ono, Neil Macnaughton, Michael Zoll, Herbert van den Bergh
-
Patent number: 7734580Abstract: A standby database system or another replica data system replicates changes, made to data blocks at a source database system or another primary data copy, to replicas of the data blocks at the standby database system or other replica. While replicating the changes to the data blocks thereof, the standby database system (or other replica) receives queries (or reads) issued thereto and computes the queries based on data read from the data blocks thereof.Type: GrantFiled: January 29, 2007Date of Patent: June 8, 2010Assignee: Oracle International CorporationInventors: Tirthankar Lahiri, Kiran Goyal, Jia Shi, Wei-Ming Hu, Neil MacNaughton, Jaebock Lee, Bharat Baddepudi, Yunrui Li, J. William Lee, Vipin Gokhale, Mark Dilman, Niloy Mukherjee, Vinay Srihari, Kumar Rajamani, Hochak Hung
-
Publication number: 20100036843Abstract: Described herein are techniques for generating a global checkpoint system change number and computing a snapshot query using the global checkpoint system change number without a need to acquire global locks. In many cases, the need to acquire global locks is eliminated, thereby saving the overhead attendant to processing global locks.Type: ApplicationFiled: October 2, 2008Publication date: February 11, 2010Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Neil MacNaughton, Tirthankar Lahiri, Varun Malhotra
-
Patent number: 7600063Abstract: 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.Type: GrantFiled: September 15, 2006Date of Patent: October 6, 2009Assignee: Oracle International CorporationInventors: Juan Loaiza, Neil MacNaughton, Eugene Ho, Vipin Gokhale, Kiran Goyal, Tirthankar Lahiri
-
Patent number: 7577690Abstract: 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.Type: GrantFiled: April 17, 2006Date of Patent: August 18, 2009Assignee: Oracle International CorporationInventors: Sashikanth Chandrasekaran, Roger J. Bamford, William H. Bridge, David Brower, Neil MacNaughton, Wilson Wai Shun Chan, Vinay Srihari
-
Patent number: 7447786Abstract: 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.Type: GrantFiled: May 5, 2006Date of Patent: November 4, 2008Assignee: Oracle International CorporationInventors: Juan Loaiza, Sashikanth Chandrasekaran, Neil Macnaughton