Patent ID: 9659050
Date: 2017-05-23
CPC Classifications: G06F

Claim:
1. A method for a database system, comprising: establishing a column-based in-memory database including a main store and a delta store, wherein the main store does not allow concurrent transactions on a same table and the delta store has a plurality of row-visibility bitmaps implementing a row-level versioning mechanism that allows concurrent transactions on the same table; receiving a transaction associated with the column-based in-memory database, the transaction comprising one or more internal operations associated with the transaction; for each table read by the transaction, determining a version of the tab in the delta store that represents a transaction-consistent snapshot of the database visible to the transaction, wherein each table is represented in the main store and the delta store, and each version of the table is represented by one or more bitmaps; for each table written by the e transaction, generating a private version of the table using one or more bitmaps, wherein the private version of the table is configured to accumulate results from the one or more internal operations, and wherein the private version of the table is invisible to a second transaction; upon execution of a Data Manipulation Language (DML) as part of the transaction, for each table written by the transaction, recording data changes generated by the transaction in the corresponding private version of the table; and upon commit of the transaction, for each table written by the transaction, generating a new public version of the table based on the private version of the table by marking the private versions of the table as public.