Efficient evaluation of queries with multiple predicate expressions

    公开(公告)号:US10810208B2

    公开(公告)日:2020-10-20

    申请号:US15702431

    申请日:2017-09-12

    Abstract: Techniques related to efficient evaluation of queries with multiple predicate expressions are disclosed. A first predicate expression (PE) is evaluated against a plurality of rows in a first column vector (CV) to determine that a subset of rows does not satisfy the first PE. The subset comprises less than all of the plurality of rows. When a query specifies the first PE in conjunction with a second PE, a selectivity of the first PE is determined. If the selectivity meets a threshold, the second PE is evaluated against all of the plurality of rows in a second CV. If the selectivity does not meet the threshold, the second PE is evaluated against only the subset of rows in the second CV. When a query specifies the first PE in disjunction with the second PE, the second PE may be evaluated against only the subset of rows in the second CV.

    MATERIALIZING EXPRESSIONS WITHIN IN-MEMORY VIRTUAL COLUMN UNITS TO ACCELERATE ANALYTIC QUERIES
    8.
    发明申请
    MATERIALIZING EXPRESSIONS WITHIN IN-MEMORY VIRTUAL COLUMN UNITS TO ACCELERATE ANALYTIC QUERIES 审中-公开
    在存储器虚拟色谱单元中进行表示以加速分析查询

    公开(公告)号:US20170031975A1

    公开(公告)日:2017-02-02

    申请号:US15146799

    申请日:2016-05-04

    Abstract: Techniques are described for materializing pre-computed results of expressions. In an embodiment, a set of one or more column units are stored in volatile or non-volatile memory. Each column unit corresponds to a column that belongs to an on-disk table within a database managed by a database server instance and includes data items from the corresponding column. A set of one or more virtual column units, and data that associates the set of one or more column units with the set of one or more virtual column units, are also stored in memory. The set of one or more virtual column units includes a particular virtual column unit storing results that are derived by evaluating an expression on at least one column of the on-disk table.

    Abstract translation: 描述了用于实现预先计算的表达式结果的技术。 在一个实施例中,一组一个或多个列单元存储在易失性或非易失性存储器中。 每个列单元对应于属于由数据库服务器实例管理的数据库中的磁盘表上的列,并包括来自相应列的数据项。 一组一个或多个虚拟列单元以及将一个或多个列单元的集合与一个或多个虚拟列单元的集合相关联的数据也存储在存储器中。 一个或多个虚拟列单元的集合包括存储通过评估磁盘表的至少一列上的表达而导出的结果的特定虚拟列单元。

    Evaluating SQL expressions on dictionary encoded vectors

    公开(公告)号:US11294816B2

    公开(公告)日:2022-04-05

    申请号:US15397714

    申请日:2017-01-03

    Abstract: Techniques are described herein for reducing the number of redundant evaluations that occur when an expression is evaluated against an encoded column vector by caching results of expression evaluations. When executing a query that includes an expression that references columns for which dictionary-encoded column vectors exist, the database server performs a cost-based analysis to determine which expressions (or sub-expressions) would benefit from caching the expression's evaluation result. For each such expression, the database server performs the necessary computations and caches the results for each of the possible distinct input values. When evaluating an expression for a row with a particular set of input codes, a look-up is performed based on the input code combination to retrieve the pre-computed results of that evaluation from the cache.

Patent Agency Ranking