Materializing data from an in-memory array to an on-disk page structure
First Claim
1. A method for implementation by one or more data processors forming part of at least one computing system, the method comprising:
- inserting, by a transaction thread, a data value into a column of data held in an in-memory array, the in-memory array being located in main system memory of one or more computing systems and having a memory address associated with it, the transaction thread writing the data value directly into the memory array;
reserving, by the transaction thread, one or more rows of a page-based layout into which the in-memory array is mirrored, the reserving comprising indicating that the reserved one or more rows are in use, the page-based layout comprising one or more pages maintained in a persistent storage;
materializing the column of data, the materializing comprising copying data in the column of data from the in-memory array to at least one page of the one or more pages, the at least one page being marked for materialization.
1 Assignment
0 Petitions
Accused Products
Abstract
The subject matter disclosed herein provides methods for materializing data from an in-memory array to one or more pages. An in-memory array holding a column of data can be maintained. One or more pages can be maintained. Each of the one or more pages can have one or more rows for storing the column of data. At least one of the one or more pages can be marked for materialization. The column of data can be materialized by copying the data from the in-memory array to the one or more rows of the one or more pages. The materializing can be based on the marking. Related apparatus, systems, techniques, and articles are also described.
-
Citations
20 Claims
-
1. A method for implementation by one or more data processors forming part of at least one computing system, the method comprising:
-
inserting, by a transaction thread, a data value into a column of data held in an in-memory array, the in-memory array being located in main system memory of one or more computing systems and having a memory address associated with it, the transaction thread writing the data value directly into the memory array; reserving, by the transaction thread, one or more rows of a page-based layout into which the in-memory array is mirrored, the reserving comprising indicating that the reserved one or more rows are in use, the page-based layout comprising one or more pages maintained in a persistent storage; materializing the column of data, the materializing comprising copying data in the column of data from the in-memory array to at least one page of the one or more pages, the at least one page being marked for materialization. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable medium containing instructions to configure a processor to perform operations comprising:
-
inserting, by a transaction thread, a data value into a column of data held in an in-memory array, the in-memory array being located in main system memory of one or more computing systems and having a memory address associated with it, the transaction thread writing the data value directly into the memory array; reserving, by the transaction thread, one or more rows of a page-based layout into which the in-memory array is mirrored, the reserving comprising indicating that the reserved one or more rows are in use, the page-based layout comprising one or more pages maintained in a persistent storage; materializing the column of data, the materializing comprising copying data in the column of data from the in-memory array to at least one page of the one or more pages, the at least one page being marked for materialization. - View Dependent Claims (16, 17)
-
-
18. A system comprising:
-
at least one processor; and at least one memory, wherein the at least one processor and the at least one memory are configured to perform operations comprising; inserting, by a transaction thread, a data value into a column of data held in an in-memory array, the in-memory array being located in main system memory of one or more computing systems and having a memory address associated with it, the transaction thread writing the data value directly into the memory array; reserving, by the transaction thread, one or more rows of a page-based layout into which the in-memory array is mirrored, the reserving comprising indicating that the reserved one or more rows are in use, the page-based layout comprising one or more pages maintained in a persistent storage; materializing the column of data, the materializing comprising copying data in the column of data from the in-memory array to at least one page of the one or more pages, the at least one page being marked for materialization. - View Dependent Claims (19, 20)
-
Specification