Patents by Inventor J. William Lee
J. William Lee 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).
-
Publication number: 20230342355Abstract: Techniques are described herein for an integrated in-front database cache (“IIDC”) providing an in-memory, consistent, and automatically managed cache for primary database data. An IIDC comprises a database server instance that (a) caches data blocks from a source database managed by a second database server instance, and (b) performs recovery on the cached data using redo records for the database data. The IIDC instance implements relational algebra and is configured to run any complexity of query over the cached database data. Any cache miss results in the IIDC instance fetching the needed block(s) from a second database server instance managing the source database that provides the IIDC instance with the latest version of the requested data block(s) that is available to the second instance. Because redo records are used to continuously update the data blocks in an IIDC cache, the IIDC guarantees consistency of query results.Type: ApplicationFiled: April 25, 2022Publication date: October 26, 2023Inventors: YUNRUI LI, WEI-MING HU, JUAN R. LOAIZA, J. WILLIAM LEE, ADAM Y. LEE, CARLOS RUIZ, AMRISH SRIVASTAVA, GARRET F. SWART, MAHESH BABURAO GIRKAR
-
Patent number: 11645241Abstract: Techniques herein store database blocks (DBBs) in byte-addressable persistent memory (PMEM) and prevent tearing without deadlocking or waiting. In an embodiment, a computer hosts a DBMS. A reader process of the DBMS obtains, without locking and from metadata in PMEM, a first memory address for directly accessing a current version, which is a particular version, of a DBB in PMEM. Concurrently and without locking: a) the reader process reads the particular version of the DBB in PMEM, and b) a writer process of the DBMS replaces, in the metadata in PMEM, the first memory address with a second memory address for directly accessing a new version of the DBB in PMEM. In an embodiment, a computer performs without locking: a) storing, in PMEM, a DBB, b) copying into volatile memory, or reading, an image of the DBB, and c) detecting whether the image of the DBB is torn.Type: GrantFiled: March 9, 2020Date of Patent: May 9, 2023Assignee: Oracle International CorporationInventors: J. William Lee, William H. Bridge, Jr., Ankur Kemkar, Vipin Gokhale, Sivaram Prasad Soma, Vishvesh Mohanarangam Selvakumaar, Juan R. Loaiza, Wei-Ming Hu, Neil J. S. MacNaughton, Adam Y. Lee
-
Patent number: 11256627Abstract: A method and an apparatus for implementing a buffer cache for a persistent file system in a non-volatile memory is provided. A set of data is maintained in one or more extents in a non-volatile random-access memory (NVRAM) of a computing device. At least one buffer header is allocated in a dynamic random-access memory (DRAM) of the computing device. In response to a read request by a first process executing on the computing device to access one or more first data blocks in a first extent of the one or more extents, the first process is granted direct read access of the first extent in the NVRAM. A reference to the first extent in the NVRAM is stored in a first buffer header. The first buffer header is associated with the first process. The first process uses the first buffer header to directly access the one or more first data blocks in the NVRAM.Type: GrantFiled: June 22, 2020Date of Patent: February 22, 2022Assignee: Oracle International CorporationInventors: Juan R. Loaiza, J. William Lee, Wei-Ming Hu, Kothanda Umamageswaran, Neil J. S. MacNaughton, Adam Y. Lee
-
Publication number: 20210081372Abstract: Techniques herein store database blocks (DBBs) in byte-addressable persistent memory (PMEM) and prevent tearing without deadlocking or waiting. In an embodiment, a computer hosts a DBMS. A reader process of the DBMS obtains, without locking and from metadata in PMEM, a first memory address for directly accessing a current version, which is a particular version, of a DBB in PMEM. Concurrently and without locking: a) the reader process reads the particular version of the DBB in PMEM, and b) a writer process of the DBMS replaces, in the metadata in PMEM, the first memory address with a second memory address for directly accessing a new version of the DBB in PMEM. In an embodiment, a computer performs without locking: a) storing, in PMEM, a DBB, b) copying into volatile memory, or reading, an image of the DBB, and c) detecting whether the image of the DBB is torn.Type: ApplicationFiled: March 9, 2020Publication date: March 18, 2021Inventors: J. William Lee, William H. Bridge, JR., Ankur Kemkar, Vipin Gokhale, Sivaram Prasad Soma, Vishvesh Mohanarangam Selvakumaar, Juan R. Loaiza, Wei-Ming Hu, Neil J.S. MacNaughton, Adam Y. Lee
-
Publication number: 20200320010Abstract: A method and apparatus for implementing a buffer cache for a persistent file system in non-volatile memory is provided. A set of data is maintained in one or more extents in non-volatile random-access memory (NVRAM) of a computing device. At least one buffer header is allocated in dynamic random-access memory (DRAM) of the computing device. In response to a read request by a first process executing on the computing device to access one or more first data blocks in a first extent of the one or more extents, the first process is granted direct read access of the first extent in NVRAM. A reference to the first extent in NVRAM is stored in a first buffer header. The first buffer header is associated with the first process. The first process uses the first buffer header to directly access the one or more first data blocks in NVRAM.Type: ApplicationFiled: June 22, 2020Publication date: October 8, 2020Inventors: Juan R. Loaiza, J. William Lee, Wei-Ming Hu, Kothanda Umamageswaran, Neil J.S. MacNaughton, Adam Y. Lee
-
Patent number: 10719446Abstract: A method and apparatus for implementing a buffer cache for a persistent file system in non-volatile memory is provided. A set of data is maintained in one or more extents in non-volatile random-access memory (NVRAM) of a computing device. At least one buffer header is allocated in dynamic random-access memory (DRAM) of the computing device. In response to a read request by a first process executing on the computing device to access one or more first data blocks in a first extent of the one or more extents, the first process is granted direct read access of the first extent in NVRAM. A reference to the first extent in NVRAM is stored in a first buffer header. The first buffer header is associated with the first process. The first process uses the first buffer header to directly access the one or more first data blocks in NVRAM.Type: GrantFiled: August 31, 2017Date of Patent: July 21, 2020Assignee: Oracle International CorporationInventors: Juan R. Loaiza, J. William Lee, Wei-Ming Hu, Kothanda Umamageswaran, Neil J. S. MacNaughton, Adam Y. Lee
-
Patent number: 10592416Abstract: A storage device uses non-volatile memory devices for caching. The storage device operates in a mode referred to herein as write-back mode. In write-back mode, a storage device responds to a request to write data by persistently writing the data to a cache in a non-volatile memory device and acknowledges to the requestor that the data is written persistently in the storage device. The acknowledgement is sent without necessarily having written the data that was requested to be written to primary storage. Instead, the data is written to primary storage later.Type: GrantFiled: November 3, 2011Date of Patent: March 17, 2020Assignee: Oracle International CorporationInventors: Bharat Chandra Baddepudi, Juan R. Loaiza, Wei-Ming Hu, Kothanda Umamageswaran, Alex Tsukerman, Boris Erlikhman, J. William Lee, Jia Shi, Kiran B. Goyal, Selcuk Aya
-
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
-
Publication number: 20190065383Abstract: A method and apparatus for implementing a buffer cache for a persistent file system in non-volatile memory is provided. A set of data is maintained in one or more extents in non-volatile random-access memory (NVRAM) of a computing device. At least one buffer header is allocated in dynamic random-access memory (DRAM) of the computing device. In response to a read request by a first process executing on the computing device to access one or more first data blocks in a first extent of the one or more extents, the first process is granted direct read access of the first extent in NVRAM. A reference to the first extent in NVRAM is stored in a first buffer header. The first buffer header is associated with the first process. The first process uses the first buffer header to directly access the one or more first data blocks in NVRAM.Type: ApplicationFiled: August 31, 2017Publication date: February 28, 2019Inventors: Juan R. Loaiza, J. William Lee, Wei-Ming Hu, Kothanda Umamageswaran, Neil J.S. MacNaughton, Adam Y. Lee
-
Patent number: 9298564Abstract: In an approach, a database server maintains a container database which comprises: one or more pluggable databases, a root database that stores an undo log for rolling back transactions on the consolidated database, and a redo log for replaying modifications to the container database. The database server restores a particular pluggable with a backup version that corresponds to a first point in time. The database server generates a clone database loaded with a backup version of the root database that corresponds to the first point in time. The database server applies the redo log to recover the particular pluggable database and the clone database to a second point in time that is later than the first point in time. The database server identifies, based on the clone database, one or more active transactions on the particular pluggable database. The database server rolls back the one or more active transactions.Type: GrantFiled: March 14, 2013Date of Patent: March 29, 2016Assignee: Oracle International CorporationInventors: J. William Lee, Vipin Gokhale, Muthu Olagappan, Sanket Hase, Vivekanandhan Raja, Michael John Skarpelos, Michael Stewart
-
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
-
Publication number: 20140095452Abstract: In an approach, a database server maintains a container database which comprises: one or more pluggable databases, a root database that stores an undo log for rolling back transactions on the consolidated database, and a redo log for replaying modifications to the container database. The database server restores a particular pluggable with a backup version that corresponds to a first point in time. The database server generates a clone database loaded with a backup version of the root database that corresponds to the first point in time. The database server applies the redo log to recover the particular pluggable database and the clone database to a second point in time that is later than the first point in time. The database server identifies, based on the clone database, one or more active transactions on the particular pluggable database. The database server rolls back the one or more active transactions.Type: ApplicationFiled: March 14, 2013Publication date: April 3, 2014Inventors: J. William LEE, Vipin Gokhale, Muthu Olagappan, Sanket Hase, Vivekanandhan Raja, Michael John Skarpelos, Michael Stewart
-
Publication number: 20130086330Abstract: A storage device uses non-volatile memory devices for caching. The storage device operates in a mode referred to herein as write-back mode. In write-back mode, a storage device responds to a request to write data by persistently writing the data to a cache in a non-volatile memory device and acknowledges to the requestor that the data is written persistently in the storage device. The acknowledgement is sent without necessarily having written the data that was requested to be written to primary storage. Instead, the data is written to primary storage later.Type: ApplicationFiled: November 3, 2011Publication date: April 4, 2013Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: BHARAT CHANDRA BADDEPUDI, JUAN R. LOAIZA, WEI-MING HU, KOTHANDA UMAMAGESWARAN, ALEX TSUKERMAN, BORIS ERLIKHMAN, J. WILLIAM LEE, JIA SHI, KIRAN B. GOYAL, SELCUK AYA
-
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
-
Patent number: 7631018Abstract: Techniques are described herein for returning a repository to a prior state. The repository may be, for example a database, and the prior state may be, for example the consistent state that the database had at a particular point in time in the past. When a operator-caused error has been introduced to the database by changes made by an already-committed transaction, the techniques described herein may be used to recover from the error by returning the database to a point in time prior to the commit time of the transaction that introduced the error. The techniques involve the generation of “physical undo” information, and the use of the physical undo information in conjunction with physiological undo and physiological redo to efficiently return a repository to the prior state.Type: GrantFiled: January 11, 2007Date of Patent: December 8, 2009Assignee: Oracle International CorporationInventors: J. William Lee, Juan Loaiza, Michael J. Stewart, Wei-Ming Hu, William H. Bridge, Jr.
-
Patent number: 7627614Abstract: Techniques are provided for detecting lost writes so that data corruption can be avoided. According to one technique, lost writes are detected by comparing version numbers that are indicated in redo log entries with version numbers that are indicated in corresponding blocks in a standby database. According to one technique, which may be used in conjunction with the above technique, lost writes are detected by logging read operations that occur relative to a primary database, and comparing version numbers that are indicated in read log entries with version numbers that are indicated in corresponding blocks in a standby database. According to one technique, lost writes are detected by comparing, in response to read operations, (a) version numbers that are stored in a persistent in-memory cache with (b) version numbers that are indicated in corresponding blocks that are read from a primary database.Type: GrantFiled: March 3, 2005Date of Patent: December 1, 2009Assignee: Oracle International CorporationInventors: Wei Ming Hu, Mark Dilman, J. William Lee, Juan R. Loaiza, Vinay Srihari
-
Patent number: 7571173Abstract: A method and apparatus for creating a target database on a target platform based on a source database on a source platform is provided. A target database is created on the target platform based on data, metadata (for example, data in the system tablespace and control files), and external objects (for example, password files and externally stored tables) comprised within the source database. Data and metadata stored in tablespaces of the source database are converted to the format compatible with the target platform. The conversion of the data and metadata may be performed either at the source database or the target database. Redo information and undo information of the source database are not copied from the source database to the target database. Certain files, e.g., a password files, and links to externally stored object may be recreated on the target database.Type: GrantFiled: October 15, 2004Date of Patent: August 4, 2009Assignee: Oracle International CorporationInventors: Wanli Yang, Bipul Sinha, Amit Ganesh, Wei Hu, Alok Pareek, Alexander H. Hwang, Steven Charles Wertheimer, Francisco M. Sanchez, Dmitry Mikhailovich Potapov, Shen-Ban Meng, Juan R. Loaiza, William H. Bridge, J. William Lee
-
Publication number: 20080235291Abstract: 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: ApplicationFiled: January 29, 2007Publication date: September 25, 2008Inventors: 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
-
Patent number: 7181476Abstract: Techniques are described herein for returning a repository to a prior state. The repository may be, for example a database, and the prior state may be, for example the consistent state that the database had at a particular point in time in the past. When a operator-caused error has been introduced to the database by changes made by an already-committed transaction, the techniques described herein may be used to recover from the error by returning the database to a point in time prior to the commit time of the transaction that introduced the error. The techniques involve the generation of “physical undo” information, and the use of the physical undo information in conjunction with physiological undo and physiological redo to efficiently return a repository to the prior state.Type: GrantFiled: April 30, 2003Date of Patent: February 20, 2007Assignee: Oracle International CorporationInventors: J. William Lee, Juan Loaiza, Michael J. Stewart, Wei-Ming Hu, William H. Bridge, Jr.
-
Patent number: 7031987Abstract: Provided herein is a mechanism that allows a given database system to access data blocks from another database system, where data blocks from the given database system and data blocks from the other database system have different sizes. According to an aspect of the present invention, a tablespace in the other database system contained the data blocks. The tablespace is detached from the other database system and integrated into the given database, which is capable of processing data stored in data blocks of a different sizes.Type: GrantFiled: May 30, 2001Date of Patent: April 18, 2006Assignee: Oracle International CorporationInventors: Sreedhar Mukkamalla, Arvind Nithrakashyap, Tirthankar Lahiri, Alok Pareek, Juan R. Loaiza, J. William Lee, Gary C. Ngai