Patent ID: 8862571
Filing Date: 2014-10-14
Classification: G06F

Abstract:
1. A computer program product for query processing over tables laid out in column major order, comprising a non-transitory computer usable medium including a computer readable program, wherein the computer readable program when executed on a computer causes the computer to perform: accumulating table record attributes during execution of query plan operators on a table; determining selectivity of the query during execution of the query plan operators; compacting attributes and associated attribute values when said attribute values are to be consumed for an operation in the query plan during the execution of the query plan; wherein compacting of an attribute comprises forming an array of values for that attribute that contains only entries for those rows that satisfy a specific set of query predicates and performing compaction on the array of values using a fixed list of processor instructions without using branch or conditional instructions; and accumulating vectors of attribute values for table records during execution of a query plan as query plan operators are applied, wherein compaction is performed on attributes as needed independent of branch flow, and the vectors of attribute values are compacted on demand; when an attribute value is used at multiple places in a query, for a next and subsequent uses of that attribute, reusing the vector of values computed during the first usage of that attribute by re-compacting it according to a new list of predicates applied; and materializing table column record values late in query plan execution.