-
公开(公告)号:US11847110B2
公开(公告)日:2023-12-19
申请号:US17202024
申请日:2021-03-15
Applicant: Oracle International Corporation
Inventor: Sachin Vijaykumar Sonawane , Mahesh Baburao Girkar , Yunrui Li , Thomas Baby , Vivekanandhan Raja
CPC classification number: G06F16/2365 , G06F16/2379 , G06F16/275 , G06F11/1458
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.
-
公开(公告)号:US20180074915A1
公开(公告)日:2018-03-15
申请号:US15266375
申请日:2016-09-15
Applicant: Oracle International Corporation
Inventor: Hongjie Yang , Yunrui Li , Mahesh Baburao Girkar
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.
-
公开(公告)号:US09767178B2
公开(公告)日:2017-09-19
申请号:US14067129
申请日:2013-10-30
Applicant: ORACLE INTERNATIONAL CORPORATION
Inventor: Amrish Srivastava , Yunrui Li , Mahesh Baburao Girkar
CPC classification number: G06F17/30575 , G06F11/14 , G06F11/2038 , G06F11/2094 , G06F11/2097 , G06F2201/80
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.
-
公开(公告)号:US20170212817A1
公开(公告)日:2017-07-27
申请号:US15482225
申请日:2017-04-07
Applicant: Oracle International Corporation
Inventor: Amrish Srivastava , Yunrui Li , Mahesh Baburao Girkar
CPC classification number: G06F16/27 , G06F11/14 , G06F11/2038 , G06F11/2094 , G06F11/2097 , G06F2201/80
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.
-
公开(公告)号:US11048599B2
公开(公告)日:2021-06-29
申请号:US16215046
申请日:2018-12-10
Applicant: Oracle International Corporation
Inventor: Jonghyun Lee , Yunrui Li , Mahesh Baburao Girkar , Amrish Srivastava
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.
-
公开(公告)号:US20210034606A1
公开(公告)日:2021-02-04
申请号:US16932633
申请日:2020-07-17
Applicant: Oracle International Corporation
Inventor: James W. Stamos , Mahesh Baburao Girkar , Wei Ming Hu , Juan R. Loaiza , Sachin Vijaykumar Sonawane , Hongjie Yang
Abstract: Distributed ledgered data is stored within a distributed persistent storage system comprising multiple persistent storage systems as distributed ledgered participants. In various embodiments, the distributed ledgered data is maintained using the native capabilities of a persistent storage system. The distributed ledgered data is replicated as persistent data objects in a “ledgered repository of objects” that are replicated at each of the persistent storage systems. Changes at one persistent storage system are recorded within a block in a distributed blockchain that is distributed across each of the other distributed ledgered participants. The other distributed ledgered participants read the changes from the blockchain and apply the changes to the respective replicas at each of the other distributed ledgered participants. Hence, this approach is referred to as blockchain apply. Blockchain apply may be used to replicate the repository objects of various forms of PSSs. In a DBMS, a repository of objects is a table, where each record or row is an object in the repository. In a file system, a repository of objects is a directory, where each directory and file therein is an object in the repository. In a document storage system (DOCS), a repository of objects is a collection of documents, where each document is an object in the repository.
-
公开(公告)号:US20190108107A1
公开(公告)日:2019-04-11
申请号:US16215046
申请日:2018-12-10
Applicant: Oracle International Corporation
Inventor: Jonghyun Lee , Yunrui Li , Mahesh Baburao Girkar , Amrish Srivastava
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.
-
公开(公告)号:US09892153B2
公开(公告)日:2018-02-13
申请号:US14578093
申请日:2014-12-19
Applicant: ORACLE INTERNATIONAL CORPORATION
Inventor: Yunrui Li , Mahesh Baburao Girkar , Hongyi Yao
CPC classification number: G06F17/30368 , G06F3/06 , G06F3/0619 , G06F3/065 , G06F3/0689 , G06F11/0751 , G06F11/1435 , G06F11/1451 , G06F11/1471 , G06F11/2094 , G06F17/30356 , G06F17/30575 , G06F2201/80 , G06F2201/84
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. The method proceed to determining the lost writes by determining that a data block in the first set and a data block in the second set satisfy criteria, such as the version identifier of the first data block is between the version identifier of the second data block and the second checkpoint.
-
公开(公告)号:US11586614B2
公开(公告)日:2023-02-21
申请号:US16932633
申请日:2020-07-17
Applicant: Oracle International Corporation
Inventor: James W. Stamos , Mahesh Baburao Girkar , Wei Ming Hu , Juan R. Loaiza , Sachin Vijaykumar Sonawane , Hongjie Yang
Abstract: Distributed ledgered data is stored within a distributed persistent storage system comprising multiple persistent storage systems as distributed ledgered participants. In various embodiments, the distributed ledgered data is maintained using the native capabilities of a persistent storage system. The distributed ledgered data is replicated as persistent data objects in a “ledgered repository of objects” that are replicated at each of the persistent storage systems. Changes at one persistent storage system are recorded within a block in a distributed blockchain that is distributed across each of the other distributed ledgered participants. The other distributed ledgered participants read the changes from the blockchain and apply the changes to the respective replicas at each of the other distributed ledgered participants. Hence, this approach is referred to as blockchain apply. Blockchain apply may be used to replicate the repository objects of various forms of PSSs. In a DBMS, a repository of objects is a table, where each record or row is an object in the repository. In a file system, a repository of objects is a directory, where each directory and file therein is an object in the repository. In a document storage system (DOCS), a repository of objects is a collection of documents, where each document is an object in the repository.
-
公开(公告)号:US10949413B2
公开(公告)日:2021-03-16
申请号:US15885281
申请日:2018-01-31
Applicant: Oracle International Corporation
Inventor: Sachin Vijaykumar Sonawane , Mahesh Baburao Girkar , Yunrui Li , Thomas Baby , Vivekanandhan Raja
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.
-
-
-
-
-
-
-
-
-