Systems and Methods of Increasing Database Access Concurrency Using Granular Timestamps
AssigneeGoogle Inc.
InventorsWilson Cheng-Yi Hsieh, Alexander Lloyd, Eric Hugh Veach
Life of this patent
Estimating the term…
Loading patent…
AssigneeGoogle Inc.
InventorsWilson Cheng-Yi Hsieh, Alexander Lloyd, Eric Hugh Veach
Estimating the term…
A method reads and writes data from a database table. Each row in the table has a primary key and multiple non-key columns. Each non-key column has one or more column values, and each column value has an associated timestamp that identifies when the column value was stored. The timestamps associated with the column values in each non-key column provide a unique order for the column values. A read transaction is initiated to read from a first non-key column of a first row. A write transaction is in progress that is updating a second non-key column of the first row, where the second non-key column is distinct from the first non-key column. The write transaction holds a lock on the second non-key column of the first row. The method concurrently reads the data from the first non-key column and writes a new column value to the second non-key column.
A method of reading and writing data from a database table that has a plurality of rows, each row comprising a primary key and a plurality of non-key columns, wherein each non-key column comprises one or more column values, each column value has an associated timestamp that identifies when the associated column value was stored, and the timestamps associated with the column values in each non-key column provide a unique order for the column values that comprise the non-key column, the method comprising:
A database management system, comprising one or more server computers, each server computer including:
A non-transitory computer readable storage medium storing one or more programs configured for execution by one or more server computers, each server computer having one or more processors and memory storing one or more programs for execution by the one or more processors, the one or more programs comprising instructions for:
Dependencies are inferred from the claim text.