Expanding variable sub-column widths as needed to store data in memory
AssigneeMedallia, Inc.
InventorThorvald Natvig
Life of this patent
Estimating the term…
Abstract
A set of data storage values is received. It is determined that a data storage value in the set will not fit in an available memory segment including variable data column widths based at least in part on data sizes specified in a plurality of segment layout maps. A memory segment is selected for which a column width of a column will be expanded. A column width of the selected memory segment is expanded. A segment layout map corresponding to the selected memory segment is updated. The set of data storage values is stored in the selected memory segment.
Claims20
A system, comprising:
- a processor configured to:
- select a column included in a memory segment to store a data storage value, wherein:
- the column comprises a sub-column that stores data of a type associated with the data storage value;
- and
- a corresponding variable column width of the sub-column is not more than
- a maximum allowable column width associated with the column;
- determine that a data size associated with the corresponding variable column width of the sub-column is less than a size associated with the data storage value;
- determine that the data size associated with the corresponding variable column width of the sub-column can be increased to accommodate the size associated with the data storage value without causing a column width of the column to exceed the maximum allowable column width associated with the column;
- increase the data size associated with the corresponding variable column width of the sub-column to accommodate the size associated with the data storage value;
- and
- store the data storage value in the sub-column;
- and
- a memory coupled to the processor and configured to provide the processor with instructions.
A method, comprising:
- selecting a column included in a memory segment to store a data storage value, wherein:
- the column comprises a sub-column that stores data of a type associated with the data storage value;
- and
- a corresponding variable column width of the sub-column is not more than a maximum allowable column width associated with the column;
- determining that a data size associated with the corresponding variable column width of the sub-column is less than a size associated with the data storage value;
- determining that the data size associated with the corresponding variable column width of the sub-column can be increased to accommodate the size associated with the data storage value without causing a column width of the column to exceed the maximum allowable column width associated with the column;
- increasing the data size associated with the corresponding variable column width of the sub-column to accommodate the size associated with the data storage value;
- and
- storing the data storage value in the sub-column.
A computer program product, the computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for:
- selecting a column included in a memory segment to store a data storage value, wherein:
- the column comprises a sub-column that stores data of a type associated with the data storage value;
- and
- a corresponding variable column width of the sub-column is not more than a maximum allowable column width associated with the column;
- determining that a data size associated with the corresponding variable column width of the sub-column is less than a size associated with the data storage value;
- determining that the data size associated with the corresponding variable column width of the sub-column can be increased to accommodate the size associated with the data storage value without causing a column width of the column to exceed the maximum allowable column width associated with the column;
- increasing the data size associated with the corresponding variable column width of the sub-column to accommodate the size associated with the data storage value;
- and
- storing the data storage value in the sub-column.
Dependencies are inferred from the claim text.