Column-store database architecture utilizing positional delta tree update system and methods
First Claim
1. A database engine implemented in a computer system that is coupled to a database store that provides for the storage of a database table, said database engine being operative in responsive to database query requests relative to said database table to return a current sequence of data tuples corresponding to a predetermined database query request, said database engine comprising:
- a write-store structure that provides for the storage of data tuple updates pending application to said database table, the data tuple updates being stored in a positional delta tree data structure having a tree node and one or more leaf nodes that stores differential updates;
a computer implemented merge scan processor, coupled to said write-store structure, operative to retrieve from said database table an initial sequence of data tuples responsive to said predetermined database query request, said merge scan processor being further dynamically operative to selectively merge said data tuple updates with said initial sequence of data tuples using the positional delta tree data structure to provide said current sequence of data tuples;
an update processor, coupled to said write-store structure, said update processor operative, in response to database update requests relative to said database table, to receive and store differential data tuples in said write-store structure, wherein said update processor, within a defined transaction, is operative to allocate a transaction-store to receive and store differential data tuples, said update processor being further operative to transfer differential data tuples stored in said transaction-store to said write-store structure conditionally on commit of said defined transaction; and
a query processor operative to allocate a snapshot write-store structure with respect to said defined transaction wherein said snapshot write-store structure contains a copy of the differential data tuples existing in said write-store structure at the initiation of said defined transaction, wherein database query requests relative to said database table complete relative to said snapshot write-store structure in preference to said write-store structure.
4 Assignments
0 Petitions
Accused Products
Abstract
A column-store database computer system responsive to database requests for the update and retrieval of data from within a stable data table providing for the storage of database tuples within a column-store organized database structure. A positional delta tree data structure is implemented in the memory space of the computer system and is operatively coupled in an update data transfer path between a database engine interface and the stable data table. The positional delta tree data structure includes a differential data storage layer operative to store differential update data values in positionally defined relative reference to database tuples stored by the stable data table.
69 Citations
24 Claims
-
1. A database engine implemented in a computer system that is coupled to a database store that provides for the storage of a database table, said database engine being operative in responsive to database query requests relative to said database table to return a current sequence of data tuples corresponding to a predetermined database query request, said database engine comprising:
-
a write-store structure that provides for the storage of data tuple updates pending application to said database table, the data tuple updates being stored in a positional delta tree data structure having a tree node and one or more leaf nodes that stores differential updates; a computer implemented merge scan processor, coupled to said write-store structure, operative to retrieve from said database table an initial sequence of data tuples responsive to said predetermined database query request, said merge scan processor being further dynamically operative to selectively merge said data tuple updates with said initial sequence of data tuples using the positional delta tree data structure to provide said current sequence of data tuples; an update processor, coupled to said write-store structure, said update processor operative, in response to database update requests relative to said database table, to receive and store differential data tuples in said write-store structure, wherein said update processor, within a defined transaction, is operative to allocate a transaction-store to receive and store differential data tuples, said update processor being further operative to transfer differential data tuples stored in said transaction-store to said write-store structure conditionally on commit of said defined transaction; and a query processor operative to allocate a snapshot write-store structure with respect to said defined transaction wherein said snapshot write-store structure contains a copy of the differential data tuples existing in said write-store structure at the initiation of said defined transaction, wherein database query requests relative to said database table complete relative to said snapshot write-store structure in preference to said write-store structure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A database engine implemented in a computer system that is coupled to a database store that provides for the storage of a database table, said database engine being operative in responsive to database query requests relative to said database table to return a current sequence of data tuples corresponding to a predetermined database query request, said database engine comprising:
-
a write-store structure that provides for the storage of data tuple updates pending application to said database table, the data tuple updates being stored in a positional delta tree data structure having a tree node and one or more leaf nodes that stores differential updates; a computer implemented merge scan processor, coupled to said write-store structure, operative to retrieve from said database table an initial sequence of data tuples responsive to said predetermined database query request, said merge scan processor being further dynamically operative to selectively merge said data tuple updates with said initial sequence of data tuples using the positional delta tree data structure to provide said current sequence of data tuples; an update processor, coupled to said write-store structure, said update processor operative, in response to database update requests relative to said database table, to receive and store differential data tuples in said positional delta tree and wherein said positional delta tree stores said differential update in a manner to identify an update tuple data position within said database table; and a query processor, coupled to said write-store structure, said query processor operative to respond to query requests to provide responsive tuple data, with respect to said database table, wherein said query processor operates to dynamically merge said differential update with tuple data retrieved from said database table using the positional delta tree and the position of tuple data read from said database table. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
Specification