G06F16/2336

PARALLEL READS OF DATA STAGING TABLE

Systems and methods to read records of a data staging table, where each record of the data staging table is associated with a package identifier, a key value of a record of a first database table, values of one or more non-key fields of the record of the first database table, and a database operation, include reading of one or more records of the data staging table, each of the read one or more records associated with a package identifier indicating the record is not being processed, and not including a same key value as any other record of the data staging table associated with a package identifier indicating the record is being processed, updating the package identifier of each of the read records of the data staging table to a first package identifier indicating that the record is being processed, creating a transaction record of a transaction queue associating the data staging table and the first package identifier, determining that the read one or more records have been processed, and, in response to the determination, deleting the one or more read rows from the data staging table and the transaction record.

TRANSACTION ORDERING

Nodes of a database service may receive a read request to perform a read of a record stored by the database service and a transaction request to perform a transaction to the record. First and second indications of time may be associated with the read and transaction, respectively. A potential read anomaly (e.g., fuzzy read, read skew, etc.) may be detected based, at least in part, on a determination that the first indication of time is within a threshold value of the second indication of time. In response to detecting the potential read anomaly, the read may be performed after the transaction specified by the transaction request, regardless of whether the first indication of time is indicative of an earlier point in time than the second indication of time.

METHODS AND SYSTEMS FOR NON-BLOCKING TRANSACTIONS
20230021150 · 2023-01-19 ·

Methods and systems for executing non-blocking transactions at a database are provided. The method includes receiving a write transaction that is directed to a partition of a table stored by a cluster of database nodes. The method includes generating, at a database node of the cluster, a synthetic timestamp based on a first time associated with the database node and a duration, wherein the synthetic timestamp exceeds the first time by the duration. The method includes executing, based on determining the synthetic timestamp, one or more operations of the write transaction at one or more replicas of the partition. The method includes committing, based on a threshold number of acknowledgements, the one or more operations of the write transaction at the one or more replicas. The method includes sending, based on a second time exceeding the synthetic timestamp, an indication of success of the write transaction.

Lock management associated with a key-value database system

A first data structure lock to access a first data structure of a first set of data structures to perform an operation associated with a transaction is acquired. The operation associated with the transaction is executed, wherein the operation is one of inserting the transaction into the first data structure or removing the transaction from the first data structure. An oldest active transaction of the first data structure is identified. A globally oldest active transaction of the set of the data structures in view of the oldest active transaction is determined. A second set of data structures is accessed, the second set of data structures including information associated with completed transactions to identify a set of data locks associated with completed transactions each having a transaction completion identifier that satisfies a condition when compared to a transaction start identifier associated with the globally oldest active transaction. The set of data locks are released.

Native persistent store support for blockchains

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.

Computer-readable recording medium for storing data processing program, data processing method, and data processing apparatus
11615111 · 2023-03-28 · ·

A method includes: repeatedly executing a first processing configured to generate, in response to input of conversion examples of values set, a conversion program for converting values of records, convert the values of the records by executing the conversion program, and display a conversion result; and executing a second processing configured to select one or more second records from the records, each of the one or more records being a record on an upper side of a first record, the first record being a record for which a conversion example is added in second or subsequent input, determine whether a value of each second record is changed in a latest conversion result from a previous conversion result, and in response that a value of the second record is changed, cause the first processing to highlight a value of the second record in display of the latest conversion result.

Point-to-point distributed decentralized system
11481375 · 2022-10-25 · ·

Embodiments relate to high throughput blockchain systems that can handle large numbers of real-time operations. A system may include a server that handles the matching of operations in a quick and trusted manner and a blockchain that executes the matched operations in a decentralized manner after the matching is confirmed by the server. The server may receive an operation request from a user. To confirm the operation request, the user may cause a broadcast of entry on the blockchain that confirms the validity of the operation request. Upon verifying the operation request, the server may match the operation request with other operation requests that meet the criteria specified by the user's request. A set of code instructions recorded on the blockchain may generate one or more entries that execute the operations related to the match.

LOCK RELEASE MANAGEMENT ASSOCIATED WITH A KEY-VALUE DATABASE SYSTEM
20230105836 · 2023-04-06 ·

A global lock is used to access a first set of data structures. An active transaction having a transaction start identifier is identified as a globally oldest active transaction associated with the first set of data structures. A first marker value of a first data structure of a second set of data structures is compared to the transaction start identifier to determine satisfaction of a first condition. In response to satisfying the first condition, the first data structure is accessed to identify a first set of data locks associated with one or more transactions each having a transaction completion identifier that satisfies a second condition when compared to the transaction start identifier. In response to satisfying the second condition, the first set of data locks is released.

Message processing node and database in a message processing system and methods of operating the same

There is provided a method of operating a message processing node in a message processing system. Upon receipt of a message for a transaction referring to an object for which a record is stored in a database (300), a request is sent to the database to lock the record for the object (302). Where the record is unlocked, a message is received from the database indicating that the request to lock the record is successful (304) and the received message for the transaction is processed (306). Where the record has been locked previously by another message processing node, a message is received from the database indicating that the request to lock the record is unsuccessful and identifying the message processing node to which the record is locked (308) and the received message for the transaction referring to the object is forwarded to the identified message processing node (310).

Database processing method, apparatus, and electronic device

Embodiments of the disclosure provide a database processing method, a database processing apparatus, and an electronic device. The database processing method can include: providing a plurality of transactions to a transaction queue, wherein each transaction of the plurality of transactions includes an encapsulated write request for writing data into a database; generating auto-increment identifiers (IDs) for data rows of the data corresponding to the plurality of transactions according to an order of the transactions in the transaction queue; and writing the data into the database according to the auto-increment IDs assigned to the data rows of the data in the transaction.