摘要:
A system for controlling concurrency of access to data in a database system is provided. The system includes receiving a lock request for access to data in the database system, in which the lock request is a request for a page lock or a row lock for a corresponding row or page in the database system containing the data. The method further includes identifying a partition in the database system that contains the row or the page in the database system containing the data; associating the lock request with a partition lock on the partition that contains the row or the page in the database system containing the data; and accessing the data using the partition lock.
摘要:
A system for controlling concurrency of access to data in a database system is provided. The system includes receiving a lock request for access to data in the database system, in which the lock request is a request for a page lock or a row lock for a corresponding row or page in the database system containing the data. The method further includes identifying a partition in the database system that contains the row or the page in the database system containing the data; associating the lock request with a partition lock on the partition that contains the row or the page in the database system containing the data; and accessing the data using the partition lock.
摘要:
A method and system for controlling concurrency of access to data in a database system, includes: partitioning a table in the database system into a plurality of partitions; receiving a request for access to data; determining a partition of the plurality of partitions that contains the data; determining if the data has been committed; and if so, avoiding locking the partition in response to the request. By avoiding locking the partition when the data has been committed, the number of partition locks that need to be requested from a local resource lock manager is reduced, improving performance.
摘要:
A method for generating an execution plan for updating and retrieving data from a database in a single process includes: receiving a statement by a server to update a database with a first set of data and to retrieve a second set of data from the database; building a first execution plan to update the database with the first set of data; building a second execution plan to retrieve the second set of data from the database; and building a single execution plan including a combination of the first and second execution plans. The single execution plan allows for the updating and retrieval of data with a single crossing of an interface between a client and the database. By performing both functions in this manner, the efficiency of performing such tasks on the database is significantly increased.
摘要:
The present invention is related to a method and system for preserving an original table schema for a table in a database system that supports dynamic table schema changes. The method and system includes storing the original table schema for the table in a designated table prior to performing a schema change on the table. By storing the original table schema in the designated table, a backup copy of the table that includes rows which are not self-describing can be used for data recovery.
摘要:
A method for selectively releasing locks when rolling back to a savepoint includes: providing at least one savepoint in a transaction, where the at least one savepoint and the transaction are separate lock owners, where at least one lock is assigned to the at least one savepoint and at least one lock is assigned to the transaction; rolling back the transaction to the at least one savepoint; and releasing any locks owned by the at least one savepoint, where any locks owned by the transaction is maintained. Ownership of locks to persist until commit is assigned to the transaction. Ownership of locks to be released when rolled back to a savepoint is assigned to the savepoint. When roll back to a given savepoint occurs, locks owned by the savepoint are released while locks owned by the transaction are maintained.
摘要:
System, method, and program product for managing transactions on a plurality of Database Management Systems residing on separate participant servers and a coordinator server. A single transaction proceeds by multiple steps across more then one of the plurality of Database Management Systems as participants. Savepoints are assigned to the participants across the Database Management System, with at least one savepoint within a multiple step transaction. The DBMS responds to application requests to rollback to savepoint by rolling back the transaction, across the Database Management System participants, to the savepoint Further disclosed is a program product that contains code, which, either as written on the medium, or as instantiated in RAM, or both, controls the operation of a distributed database management system.
摘要:
A method is disclosed for deferring enforcement of referential constraints in large-scale data base operations such as the population or loading of relational tables 10, 12. First, the new rows are loaded in a Data Load phase 24 into the tables, and information on the new rows and their constraints is extracted and sorted 26 into a sorted key data set 68. Any primary indexes 22 required for constraint checking are then updated 28 using the sorted key data set. The new rows are then checked 70 for constraint violations, such violations are rectified 72 to restore the table's referential integrity, and a deletion data set 80 is produced. The deletion data set is merged and sorted 86 with row information 53 stored during loading, and the result is used to copy 88 the new rows violating referential constraints to a separate discard data set 48 where they can be corrected and reloaded into the table. Finally, an error summary report 36 is generated for use in correcting the discard data set.
摘要:
According to the method, apparatus, and computer readable medium of the present invention, a scan is performed by accessing all rows of a table in a relational database, evaluating each row to determine whether the row satifies a set of predicates of a database query, and returning the row if it satisfies the set of predicates. According to a preferred embodiment of the present invention, all rows are evaluated regardless of current locks. The scan is continued if the row does not satisfy the set of predicates regardless of the current lock on the row. The locking semantics according to the invention has the advantage that it completely removes the problem of lock contention on the rows that do not satisfy statement predicates.