Patents by Inventor Yunrui Li

Yunrui Li 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: 20200026609
    Abstract: Techniques are provided for creating a backup of a source pluggable database (SPD) of a source container database and porting the backup for recovery into a different target container database. In an embodiment, a source database server retrieves metadata that describes backups of the SPD. The source database server inserts, into a unplugged pluggable database of the SPD, the metadata that describes each of the backups. For example, unplugging the SPD may automatically create the unplugged pluggable database. Eventually, the unplugged pluggable database may be plugged into the target container database. A target database server transfers the metadata that describes each of the backups from the unplugged pluggable database and into the target container database. Based on at least one backup and the metadata that describes backups of the SPD, the target database server restores a target pluggable database within the target container database.
    Type: Application
    Filed: September 1, 2016
    Publication date: January 23, 2020
    Inventors: Kumar Rajamani, Muthu Olagappan, Yunrui Li, Giridhar Ravipati, Jing Zheng
  • Patent number: 10459810
    Abstract: Techniques are described herein for quick identification of a set of units of data for which recovery operations are to be performed to redo or undo changes made by the failed node. When a lock is requested by an instance, lock information for the lock request is replicated by another instance. If the instance fails, the other instance may use the replicated lock information to determine a set of data blocks for recovery operations. The set of data blocks is available in memory of a recovery instance when a given node fails, and does not have to be completely generated by scanning a redo log.
    Type: Grant
    Filed: July 6, 2017
    Date of Patent: October 29, 2019
    Assignee: Oracle International Corporation
    Inventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan
  • Publication number: 20190108107
    Abstract: A method, apparatus, and system for a time-based checkpoint target is provided for standby databases. Change records received from a primary database are applied for a standby database, creating dirty buffer queues. As the change records are applied, a mapping is maintained, which maps timestamps to logical times of change records that were most recently applied at the timestamp for the standby database. On a periodic dirty buffer queue processing interval, the mapping is used to determine a target logical time that is mapped to a target timestamp that is prior to a present timestamp by at least a checkpoint delay. The dirty buffer queues are then processed up to the target logical time, creating an incremental checkpoint. On a periodic header update interval, file headers reflecting a consistent logical time for the checkpoint are also updated. The intervals and the checkpoint delay are adjustable by user or application.
    Type: Application
    Filed: December 10, 2018
    Publication date: April 11, 2019
    Inventors: Jonghyun Lee, Yunrui Li, Mahesh Baburao Girkar, Amrish Srivastava
  • Publication number: 20190102087
    Abstract: A shared storage architecture persistently stores database files in non-volatile random access memories (NVRAMs) of computing nodes of a multi-node DBMS. The computing nodes of the multi-node DBMS not only collectively store database data on NVRAMs of the computing nodes, but also host database server instances that process queries in parallel, host database sessions and database processes, and together manage access to a database stored on the NVRAMs of the computing nodes. To perform a data block read operation from persistent storage, a data block may be transferred directly over a network between NVRAM of a computing node that persistently stores the data block to a database buffer in non-volatile RAM of another computing node that requests the data block. The transfer is accomplished using remote direct memory access (“RDMA).
    Type: Application
    Filed: September 29, 2017
    Publication date: April 4, 2019
    Inventors: Jia Shi, Yiliang Jin, Zheren R. Zhang, Zuoyu Tao, Vijay Sridharan, Kothanda Umamageswaran, Graham Ivey, Yunrui Li
  • Publication number: 20190102421
    Abstract: A database session in an active standby server on which an active standby database resides receives a DML statement. The session is suspended while the statement is redirected over a database link to a primary database on which the statement is executed. Information associated with execution of the statement is communicated to the session in the active standby server. Redo records describing changes to the contents of the primary database are applied to the active standby database and control is returned to the session. Prior to commitment of a transaction including the statement, a query directed to data to which the statement was directed is received at the active standby server from a client and executed on the active standby database absent use of a database link based on whether information associated with a database session associated with the client matches the information associated with execution of the statement.
    Type: Application
    Filed: January 31, 2018
    Publication date: April 4, 2019
    Applicant: Oracle International Corporation
    Inventors: Sachin Vijaykumar SONAWANE, Mahesh Baburao GIRKAR, Yunrui LI, Thomas Baby, Vivekanandhan Raja
  • Publication number: 20190095297
    Abstract: A computer program product, system, and computer implemented method for automatic maintenance of standby databases for non-logged workloads, the process comprising: maintaining a redo stream of redo records sent from a primary database to a standby database, identifying a change made at the primary database for which a redo record was not created, inserting a placeholder redo record into the redo stream corresponding to the change identified at the primary database for which the redo record was not created, sending, to the standby database, a copy of one or more data blocks corresponding to the change that is associated with the placeholder redo record, receiving the placeholder redo record from the redo stream, identifying the copy of the one or more data blocks sent from the primary database corresponding to the placeholder redo record, and applying the copy of one or more data blocks to update the standby database.
    Type: Application
    Filed: November 30, 2017
    Publication date: March 28, 2019
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Ian Stuart Neall, Yunrui Li, Steven J. Mcgee, Yi Ding, German Shegalov, Shanshan Song
  • Publication number: 20190012244
    Abstract: Techniques are described herein for quick identification of a set of units of data for which recovery operations are to be performed to redo or undo changes made by the failed node. When a lock is requested by an instance, lock information for the lock request is replicated by another instance. If the instance fails, the other instance may use the replicated lock information to determine a set of data blocks for recovery operations. The set of data blocks is available in memory of a recovery instance when a given node fails, and does not have to be completely generated by scanning a redo log.
    Type: Application
    Filed: July 6, 2017
    Publication date: January 10, 2019
    Inventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan
  • Patent number: 10152396
    Abstract: A method, apparatus, and system for a time-based checkpoint target is provided for standby databases. Change records received from a primary database are applied for a standby database, creating dirty buffer queues. As the change records are applied, a mapping is maintained, which maps timestamps to logical times of change records that were most recently applied at the timestamp for the standby database. On a periodic dirty buffer queue processing interval, the mapping is used to determine a target logical time that is mapped to a target timestamp that is prior to a present timestamp by at least a checkpoint delay. The dirty buffer queues are then processed up to the target logical time, creating an incremental checkpoint. On a periodic header update interval, file headers reflecting a consistent logical time for the checkpoint are also updated. The intervals and the checkpoint delay are adjustable by user or application.
    Type: Grant
    Filed: May 5, 2014
    Date of Patent: December 11, 2018
    Assignee: Oracle International Corporation
    Inventors: Jonghyun Lee, Yunrui Li, Mahesh Baburao Girkar, Amrish Srivastava
  • Publication number: 20180300204
    Abstract: Techniques related to instance recovery using Bloom filters are disclosed. A multi-node node database management system (DBMS) includes a first database server instance and a second database server instance. A recovery set includes a set of data blocks that have been modified by a first database server instance and not persisted. A Bloom filter is generated to indicate whether data blocks are excluded from the recovery set. The Bloom filter is sent to the second database server instance, which determines whether the Bloom filter indicates that a particular data block is excluded from the recovery set. Based on determining that the Bloom filter indicates that the particular data block is excluded from the recovery set, access to the particular data block is granted.
    Type: Application
    Filed: April 17, 2017
    Publication date: October 18, 2018
    Inventors: Anjan Kumar Amirishetty, Yunrui Li, Tolga Yurek, Wilson Wai Shun Chan
  • Patent number: 10055250
    Abstract: Each of a plurality of Worker processes are allowed to perform any and all of the following tasks involving logged work items: (1) reading a subset of the work items from a log; (2) sequentially ordering work items for corresponding data objects; (3) applying a sequentially ordered set of work items to a corresponding data object; and (4) transmitting a subset of work items to a Worker process running on another database server in a cluster, if necessary. These tasks can be performed concurrently, at will, and as available, by the Worker processes. An improved checkpointing technique eliminates the need for the Worker processes to get to a synchronization point and stop. Instead, a Coordinator process examines the current state of progress of the Worker processes and computes a past point in the sequence of work items at which all work items before that point have been completely processed, and records this point as the checkpoint.
    Type: Grant
    Filed: October 21, 2013
    Date of Patent: August 21, 2018
    Assignee: Oracle International Corporation
    Inventors: Wei Hu, Yunrui Li, Vinay Srihari, Ramana Yerneni
  • Publication number: 20180121511
    Abstract: A refreshable PDB clone is associated with a PDB-specific logical timestamp (LT) service that continuously reflects the LT of the most recent changes that have fully committed within the PDB clone during a refresh operation. Such an LT service is used to perform queries over the changing data in the PDB clone while the PDB clone is undergoing a refresh operation. Furthermore, a PDB-specific LT service can facilitate write operations in a standby CDB, where the standby CDB is a physical standby of a source CDB. Specifically, a standby CDB is configured with a private read-write PDB that does not replicate data from the source CDB. This private PDB may accommodate a write operation required by a query over data in the standby CDB. A PDB-specific LT service provides LTs for such a private PDB where the PDB-specific LT service provides LTs to order changes made within the private PDB.
    Type: Application
    Filed: October 31, 2016
    Publication date: May 3, 2018
    Inventors: Yunrui Li, Kumar Rajamani
  • Patent number: 9928147
    Abstract: Embodiment provide that each pluggable database (PDB) in a container database is associated with a distinct distributed lock manager (DLM) domain. Thus, in order to access a PDB, a database server instance joins the DLM domain for the PDB. To perform actions on the PDB, the instance secures locks that belong to the DLM domain for the particular PDB. As such, buffers storing data for the PDB may be managed separately from buffers storing data for other PDBs using the PDB-specific DLM domains. An instance forcefully closing a particular PDB marks the DLM domain of the PDB as invalid, which allows detection of the forceful closure by a recovery instance. Detection of an invalid DLM domain by an instance causes the instance to automatically recover the PDB by accessing pertinent ranges of redo logs and replaying changes made to data blocks for the PDB indicated in the logs.
    Type: Grant
    Filed: February 3, 2016
    Date of Patent: March 27, 2018
    Assignee: Oracle International Corporation
    Inventors: Yunrui Li, Chi Cao Minh, Wilson Chan, Tolga Yurek, Ping-Hsiu Hsieh
  • Publication number: 20180075041
    Abstract: Techniques are provided for using a sparse file to create a hot archive of a pluggable database of a container database. In an embodiment and while a source pluggable database is in service, a source database server creates a clone of the source pluggable database. Also while the source pluggable database is in service, the source database server creates an archive of the source pluggable database that is based on the clone. Eventually, a need arises to consume the archive. A target database server (which may also be the source database server) creates a target pluggable database based on the archive.
    Type: Application
    Filed: September 15, 2016
    Publication date: March 15, 2018
    Inventors: Margaret Susairaj, Giridhar Ravipati, Kumar Rajamani, Yunrui Li, Jaebock Lee, Sanket Jain
  • Publication number: 20180074915
    Abstract: Herein are techniques of zero data loss with asynchronously replicated redo logs. In an embodiment, a first server instance (FSI) of a plurality of server instances (PSI) of a primary database (PDB) sends, to a standby database (SDB) during an shutdown of FSI, a first recovery count (RC) and a remainder of an instance redo log (IRL). In response to recovering FSI, a second server instance of PSI increments a recovery counter to a second RC (SRC), publishes SRC to PSI, and sends SRC to SDB. After restarting FSI, FSI makes a change to contents of PDB, and stores, into IRL, a redo entry that defines the change. During failover, a database management system (DBMS) detects whether RCs associated with FSRL and SSRL are unanimous. If unanimous, DBMS fully rolls forward SDB by replaying FSRL and SSRL. Otherwise, DBMS limits replay and indicates that FSRL and SSRL might be inconsistent.
    Type: Application
    Filed: September 15, 2016
    Publication date: March 15, 2018
    Inventors: Hongjie Yang, Yunrui Li, Mahesh Baburao Girkar
  • Publication number: 20180060181
    Abstract: Techniques are provided for creating a backup of a source pluggable database (SPD) of a source container database and porting the backup for recovery into a different target container database. In an embodiment, a source database server retrieves metadata that describes backups of the SPD. The source database server inserts, into a unplugged pluggable database of the SPD, the metadata that describes each of the backups. For example, unplugging the SPD may automatically create the unplugged pluggable database. Eventually, the unplugged pluggable database may be plugged into the target container database. A target database server transfers the metadata that describes each of the backups from the unplugged pluggable database and into the target container database. Based on at least one backup and the metadata that describes backups of the SPD, the target database server restores a target pluggable database within the target container database.
    Type: Application
    Filed: September 1, 2016
    Publication date: March 1, 2018
    Inventors: Kumar Rajamani, Muthu Olagappan, Yunrui Li, Giridhar Ravipati, Jing Zheng
  • Patent number: 9892153
    Abstract: Techniques are described that determine occurrences of lost write by comparing version identifiers of corresponding replica data blocks and checkpoints of data files that include the data blocks. A method determines lost writes that may have occurred among a first set of data blocks and a second set of data blocks. Each data block in the first set of data blocks corresponds to a respective data block in the second set that is a version of data blocks in the first set. The data blocks in the first set and the second set are associated with version identifiers. The second set of data blocks is associated with a second checkpoint for which any version of a data block in the second set associated a version identifier below the second checkpoint has been acknowledged to a database server as having been written to persistent storage.
    Type: Grant
    Filed: December 19, 2014
    Date of Patent: February 13, 2018
    Assignee: Oracle International Corporation
    Inventors: Yunrui Li, Mahesh Baburao Girkar, Hongyi Yao
  • Patent number: 9767178
    Abstract: A method, apparatus, and system for multi-instance redo apply is provided for standby databases. A multi-instance primary database generates a plurality of redo records, which are received and applied by a physical standby running a multi-instance standby database. Each standby instance runs a set of processes that utilize non-blocking, single-task threads for high parallelism. At each standby instance for the multi-instance redo, the plurality of redo records are merged into a stream from one or more redo strands in logical time order, distributed to standby instances according to determined apply slave processes using an intelligent workload distribution function, reemerged after receiving updates from remote instances, and applied in logical time order by the apply slave processes. Redo apply progress is tracked at each instance locally and also globally, allowing a consistent query logical time to be maintained and published to service database read query requests concurrently with the redo apply.
    Type: Grant
    Filed: October 30, 2013
    Date of Patent: September 19, 2017
    Assignee: Oracle International Corporation
    Inventors: Amrish Srivastava, Yunrui Li, Mahesh Baburao Girkar
  • Publication number: 20170220428
    Abstract: Embodiment provide that each pluggable database (PDB) in a container database is associated with a distinct distributed lock manager (DLM) domain. Thus, in order to access a PDB, a database server instance joins the DLM domain for the PDB. To perform actions on the PDB, the instance secures locks that belong to the DLM domain for the particular PDB. As such, buffers storing data for the PDB may be managed separately from buffers storing data for other PDBs using the PDB-specific DLM domains. An instance forcefully closing a particular PDB marks the DLM domain of the PDB as invalid, which allows detection of the forceful closure by a recovery instance. Detection of an invalid DLM domain by an instance causes the instance to automatically recover the PDB by accessing pertinent ranges of redo logs and replaying changes made to data blocks for the PDB indicated in the logs.
    Type: Application
    Filed: February 3, 2016
    Publication date: August 3, 2017
    Inventors: Yunrui Li, Chi Cao Minh, Wilson Chan, Tolga Yurek, Ping-Hsiu Hsieh
  • Publication number: 20170212817
    Abstract: A method, apparatus, and system for multi-instance redo apply is provided for standby databases. A multi-instance primary database generates a plurality of redo records, which are received and applied by a physical standby running a multi-instance standby database. Each standby instance runs a set of processes that utilize non-blocking, single-task threads for high parallelism. At each standby instance for the multi-instance redo, the plurality of redo records are merged into a stream from one or more redo strands in logical time order, distributed to standby instances according to determined apply slave processes using an intelligent workload distribution function, remerged after receiving updates from remote instances, and applied in logical time order by the apply slave processes. Redo apply progress is tracked at each instance locally and also globally, allowing a consistent query logical time to be maintained and published to service database read query requests concurrently with the redo apply.
    Type: Application
    Filed: April 7, 2017
    Publication date: July 27, 2017
    Inventors: Amrish Srivastava, Yunrui Li, Mahesh Baburao Girkar
  • Patent number: RE47106
    Abstract: Each of a plurality of Worker processes are allowed to perform any and all of the following tasks involving logged work items: (1) reading a subset of the work items from a log; (2) sequentially ordering work items for corresponding data objects; (3) applying a sequentially ordered set of work items to a corresponding data object; and (4) transmitting a subset of work items to a Worker process running on another database server in a cluster, if necessary. These tasks can be performed concurrently, at will, and as available, by the Worker processes. An improved checkpointing technique eliminates the need for the Worker processes to get to a synchronization point and stop. Instead, a Coordinator process examines the current state of progress of the Worker processes and computes a past point in the sequence of work items at which all work items before that point have been completely processed, and records this point as the checkpoint.
    Type: Grant
    Filed: February 28, 2014
    Date of Patent: October 30, 2018
    Assignee: Oracle International Corporation
    Inventors: Wei Hu, Yunrui Li, Vinay Srihari, Ramana Yerneni