摘要:
A method and system of processing database transactions in a distributed online transaction processing (OLTP) database is provided. Overhead and network bandwidth associated with a global transaction manager are reduced and scalability improved by determining whether incoming statements are single-shard or multi-shard. For single-shard statements, a local transaction identifier (TXID) stored and associated with a data record reference by the statement is retrieved. The retrieved TXID is compared against a copy of a list of prepared transactions that are pending in a respective data node. If the TXID is in the copy of the prepared list, the statement is caused to await until the previous transaction has been committed or aborted. The visibility of a change committed by the previous is then determined, and the statement is processed.
摘要:
Provided are a method, system, and article of manufacture for the traversal of empty regions in a searchable data structure such as a table. A plurality of elements are allocated in logical storage, wherein the plurality of elements correspond to entries of the searchable data structure. An indicator is maintained corresponding to contiguously allocated empty elements in the plurality of elements. An operation is performed on the searchable data structure by avoiding the contiguously allocated empty elements.
摘要:
Embodiments of the present invention address deficiencies of the art in respect to programmatic database access and provide a method, system and computer program product for programmatic partial updating of a row. In one embodiment, a data processing system for programmatic partial updating of a row in a database can include a database proxy driver configured to expose an interface for interacting with the database and to accept an execution of a prepared statement without requiring set values for all fields bound by the prepared statement. The interface can include, for example, a Java Database Connectivity (JDBC) compliant interface. The prepared statement can include a binding to multiple fields in a designated row and a set of setter methods defined for a subset of the multiple fields.
摘要:
A software thread is dispatched for causing the system to poll a device for determining whether a condition has occurred. Subsequently, the software thread is undispatched and, in response thereto, an interrupt is enabled on the device, so that the device is enabled to generate the interrupt in response to an occurrence of the condition, and so that the system ceases polling the device for determining whether the condition has occurred. Eventually, the software thread is redispatched and, in response thereto, the interrupt is disabled on the device, so that the system resumes polling the device for determining whether the condition has occurred.
摘要:
An ordering of operations in log records includes: performing update operations on a shared database object by a node; writing log records for the update operations into a local buffer by the node, the log records each including a local virtual timestamp; determining that a log flush to write the log records in the local buffer to a persistent storage is to be performed; in response, sending a request from the node to a log flush sequence server for a log flush sequence number; receiving the log flush sequence number by the node; inserting the log flush sequence number into the log records in the local buffer; and performing the log flush to write the log records in the local buffer to the persistent storage, where the log records written to the persistent storage comprises the local virtual timestamps and the log flush sequence number.
摘要:
Performing a redistribute of data in a database system including a plurality of nodes is disclosed. The data includes a plurality of partitions distributed between the plurality of nodes. At least one new node is being added. At least one partition of the plurality of partitions is selected to be moved from the plurality of nodes only to the at least one new node. The at least one partition is moved only to the at least one new node. At least one partition is removed from the plurality of nodes.
摘要:
Lock communications in a shared disk database system is reduced by several approaches: sending a single message to a lock manager for locks required for an operation and locks that will be required in the future, the operations may include row update, row delete, large scan, and row insert; performing an operation in two executions, where in a first execution locks required for the operation is determined without performing the operation, and in a second execution a single message is sent to a lock manager for the required locks and the operation is performed; in free space searching, sending a single message to a lock manager for row and page locks before a row insert is actually performed; and granting locks in an unfair manner.
摘要:
A software thread is dispatched for causing the system to poll a device for determining whether a condition has occurred. Subsequently, the software thread is undispatched and, in response thereto, an interrupt is enabled on the device, so that the device is enabled to generate the interrupt in response to an occurrence of the condition, and so that the system ceases polling the device for determining whether the condition has occurred. Eventually, the software thread is redispatched and, in response thereto, the interrupt is disabled on the device, so that the system resumes polling the device for determining whether the condition has occurred.
摘要:
Lock communications in a shared disk database system is reduced by several approaches: sending a single message to a lock manager for locks required for an operation and locks that will be required in the future, the operations may include row update, row delete, large scan, and row insert; performing an operation in two executions, where in a first execution locks required for the operation is determined without performing the operation, and in a second execution a single message is sent to a lock manager for the required locks and the operation is performed; in free space searching, sending a single message to a lock manager for row and page locks before a row insert is actually performed; and granting locks in an unfair manner.
摘要:
A method for performing a redistribute of data in a database system including a plurality of nodes is disclosed. The data includes a plurality of partitions distributed between the plurality of nodes. At least one new node is being added. The method and system include selecting at least one partition of the plurality of partitions to be moved from the plurality of nodes only to the at least one new node. The method and system also include moving the at least one partition only to the at least one new node. The method and system further include removing the at least one partition from the plurality of nodes.