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.
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.
Abstract:
Techniques for taking one or more nodes of a multi-node database system offline are provided. Initially, the multi-node database system uses a first data access management system (e.g., a distributed lock management system) to manage access to data stored in a database. In response to determining that one or more nodes need to be taken offline or otherwise become unavailable, the remaining nodes implement a second data access management system (e.g., an affinity-based access system) to manage access to data stored in the database. After the offline nodes are brought back online, all the nodes in the multi-node database system implement the first data access management system again. The transitions between the two data access management system may involve multiple phases that involve communicating different types of information between nodes that are taken offline and nodes that are not taken offline.
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.
Abstract:
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.
Abstract:
Techniques for taking one or more nodes of a multi-node database system offline are provided. Initially, the multi-node database system uses a first data access management system (e.g., a distributed lock management system) to manage access to data stored in a database. In response to determining that one or more nodes need to be taken offline or otherwise become unavailable, the remaining nodes implement a second data access management system (e.g., an affinity-based access system) to manage access to data stored in the database. After the offline nodes are brought back online, all the nodes in the multi-node database system implement the first data access management system again. The transitions between the two data access management system may involve multiple phases that involve communicating different types of information between nodes that are taken offline and nodes that are not taken offline.
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.
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.
Abstract:
According to embodiments, reconfiguration of lock masters for a cluster of nodes is optimized using coordinated hash indexes to index into the master hash table and into local hash tables stored on the nodes of the cluster. A DBMS uses a hybrid hash index, a portion of which represents a corresponding master hash index, to index into both the master hash table and into a local hash table for a given lock. The hash index used to store lock metadata in a particular local hash table bucket, on a particular node, encodes the lock master index, for a master hash table, to which the locks in the local hash table bucket correspond. Only the portions of the local hash table on the lock master that correspond to the index of the master hash table bucket need to be scanned in order to perform needed tasks for lock master reconfiguration.
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.