发明名称 Intra-block partitioning for database management
摘要 A method for storing database information includes storing a table having data values in a column major order. The data values are stored in a list of blocks. The method also includes assigning a tuple sequence number (TSN) to each data value in each column of the table according to a sequence order in the table. The data values that correspond to each other across a plurality of columns of the table have equivalent TSNs. The method also includes assigning each data value to a partition based on a representation of the data value. The method also includes assigning a tuple map value to each data value. The tuple map value identifies the partition in which each data value is located.
申请公布号 US9535939(B2) 申请公布日期 2017.01.03
申请号 US201213485707 申请日期 2012.05.31
申请人 International Business Machines Corporation 发明人 Barber Ronald J.;Kim Min-Soo;Lightstone Sam S.;Lohman Guy M.;Qiao Lin;Raman Vijayshankar;Shekita Eugene J.;Sidle Richard S.
分类号 G06F17/30 主分类号 G06F17/30
代理机构 代理人 Holman Jeffrey T.
主权项 1. A computer program product, comprising: a non-transitory computer readable storage medium to store a computer readable program, wherein the computer readable program, when executed by a processor within a computer, causes the computer to perform operations for storing database information, the operations comprising: storing a table comprising data values in a column major order, wherein the data values comprise encoded and unencoded data values, wherein the data values within each column are stored in a list of blocks, wherein each block comprises a predetermined block size determined according to a configuration of a database in which the table is stored, wherein each block comprises an array; assigning a tuple sequence number (TSN) to each data value in each column of the table according to a sequence order in the table, wherein data values that correspond to each other across a plurality of columns of the table have equivalent TSNs; identifying a bit length of each encoded data value and an encoding representation of each encoded data value; assigning each encoded data value in a block to one of a plurality of partitions within the block based on the bit length of each encoded data value and the encoding representation of each encoded data value, and assigning the unencoded data values to a separate partition from the encoded data values, the unencoded data values stored in an unencoded format and each other partition comprising data values stored in a distinct encoding format, representing each partition in the array within the block, wherein the array is an index separate from the plurality of partitions; indexing the data values in the block in an array contained in the block by assigning a tuple map value to each data value, wherein the tuple map value identifies the partition in which each data value is located; and storing the tuple map value in the array within the block.
地址 Armonk NY US