26-09-2019 дата публикации
Номер: US20190294615A1
Принадлежит:
Computer-implemented method for allocating columns of a table stored in a database system into at least two sets of columns, a first set and a second set, the data of the columns allocated to the first set being stored on a primary storage medium using a column-oriented data structure and the data of columns allocated to the second set being stored on a secondary storage medium using a row-oriented data structure, wherein the method comprises the step of allocating the columns of the table to the first and the second set autonomously on the basis of a performance-cost model. 2. Method according to claim 1 , wherein the step of allocating the columns is carried out repeatedly during operation of the database.3. Method according to claim 1 , wherein the performance-cost model takes into account at least one of the following parameters:an execution time of a workload that the database has experienced during operation, the execution time preferably taking into account successive columnar filtering; anda total available space on the primary storage medium.4. Method according to claim 3 , wherein the performance-cost model further takes into account costs for reallocating columns.5. Method according to claim 1 , wherein the step of allocating the columns comprises the step of:iteratively adding columns to the first set so that, in each iteration, a column is added to the first set thathas not been added in a previous iteration and that,in accordance with the performance-cost-model, provides the largest performance gain per occupied space on the primary storage medium if it is added to the first set.7. Method according to claim 1 ,the database being a combined OLTP and OLAP database,the primary storage medium being a DRAM medium,the secondary storage medium not being a DRAM medium, andthe secondary storage medium being at least one of a SSD, a HDD, and a non-volatile storage.8. Method according to claim 1 , wherein at least one of the columns of the table is manually ...
Подробнее