摘要:
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.
摘要:
A method, system, and computer program product is disclosed for caching results in a client-side cache. Embodiments of a method, a system, and a computer program product are disclosed that associate a first snapshot of a database with a client that indicates a state of the database after a last database request by the client, and indicate any number of invalid cached results in the client cache for the client based upon the first snapshot. In some embodiments, the method further includes receiving a second snapshot that indicates a state of the database upon receipt of a database server request by the client, and updating the first snapshot with the second snapshot.
摘要:
A system and method for enabling a second database instance to more quickly process a request to execute a database statement that has previously been executed by a first database instance is described. In one embodiment, the method involves sending the database statement from the first database instance to the second database instance, and generating by the second database instance one or more structures needed to prepare the statement for execution, such as a parse tree and an execution plan for the statement. If at some point in the future, the second database instance receives a request to execute the same statement, the above structures can be used for execution, thereby eliminating the need for one or more potentially time-consuming operations, such as generation of a parse tree or execution plan for the statement.
摘要:
A method and system for recovering after failure of a first server to which a client was connected for accessing a resource is provided. When it is detected that a connection between the first server and the client has failed, the client is automatically connected with a second server that has access to the resource. After automatically connecting the client, the client accesses the resource through the second server. The client stores information about the state of the session with the first server so that processing can continue where it left off after the client connects with the second server. The client may be pre-connected to the second server prior to the failure of the first server to reduce the latency caused by switching in response to a failure. The second server may be configured to pre-parse the commands that the client issues to the first server to further reduce the latency associated with switching to the second server.
摘要:
A method and system are provided for maintaining a checkpoint value that indicates which records of a plurality of records associated with updates made before a failure have to be processed after the failure. According to one aspect of the invention, an ordered list of buffers is maintained in volatile memory. The ordered list of buffers has a head and a tail. The ordered list of buffers is maintained by writing a record that indicates the update to nonvolatile memory and adding the buffer to the tail of the ordered list whenever an update is made to a data item within a buffer in volatile memory. When a data item contained in a buffer within the ordered list is stored in nonvolatile memory, the buffer can be removed from the ordered list. A checkpoint value that identifies a record associated with a buffer located at the head of the ordered list is written to nonvolatile memory. According to another aspect, after a failure, the record associated with the checkpoint value is identified. If a particular record was stored to nonvolatile memory before the record associated with the checkpoint value, the particular record is not processed. If the particular record was not stored to nonvolatile memory before the record associated with the checkpoint value, the particular record is processed.
摘要:
One embodiment of the present invention provides a system for performing selective encryption/decryption in a data storage system. During operation, the system receives a data block from a storage medium at an input/output layer, wherein the input/output layer serves as an interface between the storage medium and a buffer cache. Next, the system determines whether the data block is an encrypted data block. If not, the system stores the data block in the buffer cache. Otherwise, if the data block is an encrypted data block, the system retrieves a storage-key, wherein the storage-key is associated with a subset of storage, which is associated with the encrypted data block. Using the storage-key, the system then decrypts the encrypted data block to produce a decrypted data block. Finally, the system stores the decrypted data block in the buffer cache, wherein the data block remains encrypted in the storage medium.
摘要:
Techniques are provided for managing, within a storage system, the sequence in which I/O requests are processed by the storage system based, at least in part, on one or more logical characteristics of the I/O requests. The logical characteristics may include, for example, the identity of the user for whom the I/O request was submitted, the service that submitted the I/O request, the database targeted by the I/O request, an indication of a consumer group to which the I/O request maps, the reason why the I/O request was issued, a priority category of the I/O request, etc. Techniques are also provided for automatically establishing a scheduling policy within a storage system, and for dynamically changing the scheduling policy in response to changes in workload.
摘要:
Techniques are provided for managing, within a storage system, the sequence in which I/O requests are processed by the storage system based, at least in part, on one or more logical characteristics of the I/O requests. The logical characteristics may include, for example, the identity of the user for whom the I/O request was submitted, the service that submitted the I/O request, the database targeted by the I/O request, an indication of a consumer group to which the I/O request maps, the reason why the I/O request was issued, a priority category of the I/O request, etc. Techniques are also provided for automatically establishing a scheduling policy within a storage system, and for dynamically changing the scheduling policy in response to changes in workload.
摘要:
Techniques are provided for managing, within a storage system, the sequence in which I/O requests are processed by the storage system based, at least in part, on a one or more logical characteristics of the I/O requests. The logical characteristics may include, for example, the identity of the user for whom the I/O request was submitted, the service that submitted the I/O request, the database targeted by the I/O request, an indication of a consumer group to which the I/O request maps, the reason why the I/O request was issued, a priority category of the I/O request, etc. Techniques are also provided for automatically establishing a scheduling policy within a storage system, and for dynamically changing the scheduling policy in response to changes in workload.
摘要:
Techniques for maintaining a cascading index are provided. In one approach, one or more branch node compression techniques are applied to the main index of a cascading index. In an approach, a Bloom filter is generated and associated with, e.g., a branch node in the main index. The Bloom filter is used to determine whether, without accessing any leaf blocks, a particular key value exists, e.g., in leaf blocks associated with the branch node. In an approach, a new redo record is generated in response to a merge operation between two levels of the cascading index. The new redo record comprises (a) one or more addresses of blocks that are affected by the merge operation, (b) data is that being “pushed down” to a lower level of the cascading index, and (c) one or more addresses of blocks that are written to disk storage as a result of the merge operation.