OUTER SEMI JOIN FOR DISJUNCTIVE SUBQUERY UNNESTING

    公开(公告)号:US20240126757A1

    公开(公告)日:2024-04-18

    申请号:US17966036

    申请日:2022-10-14

    CPC classification number: G06F16/24544 G06F16/24535 G06F16/24537

    Abstract: A new type of table join operation, outer semi join (OSJ), is provided, which can be used by an optimizer layer and an execution layer of a database management system (DBMS). OSJ combines the semantics of both left outer-join and semi-join. The concept of an anti-join marker (AJM) is also introduced, which specifies whether a matching row was not found between joined tables for each result row in an OSJ operation. The OSJ operation supports unnesting of a class of disjunctive ANY, ALL, EXISTS, NOT EXISTS, IN, and NOT IN subqueries for execution plan optimization. The disjunction may contain filter predicates. For unnesting, OSJ avoids the need of using a distinct operator on the right table and also supports using inequality (e.g. >, >=,

    Bitmap-based count distinct query rewrite in a relational SQL algebra

    公开(公告)号:US11379476B2

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

    申请号:US16653639

    申请日:2019-10-15

    Abstract: Techniques are described for storing and maintaining, in a materialized view, bitmap data that represents a bitmap of each possible distinct value of an expression and rewriting a query for a count of distinct values of the expression using the materialized view. The materialized view contains bitmap data that represents a bitmap of each possible distinct value of a first expression, and aggregate values of additional expressions, and is stored in memory or on disk by a database system. The database system receives a query that requests a number of distinct values, of the first expression, and an aggregate value for an additional expression. In response, the database system, rewrites the query to: compute the number of distinct values by counting the bits in the bitmap data of the materialized view that are set to the first value, and obtains the aggregate value for the additional expression in the materialized view.

    Techniques for using zone map information for post index access pruning
    4.
    发明授权
    Techniques for using zone map information for post index access pruning 有权
    使用区域地图信息进行后索引访问修剪的技术

    公开(公告)号:US09514187B2

    公开(公告)日:2016-12-06

    申请号:US14245934

    申请日:2014-04-04

    Inventor: Mohamed Ziauddin

    CPC classification number: G06F17/30486 G06F17/30339 G06F17/30463

    Abstract: Techniques for using zone map information for post index access pruning. In one embodiment, for example, a method for using zone map information for post index access pruning comprises: receiving a query statement comprising a first filter predicate on an indexed column of a database table and a second filter predicate on a zoned column of a database table; identifying zero or more pruneable zones of a zone map based on a value for the zoned column in the second filter predicate; obtaining a set of data record addresses from an index on the indexed column based on a value for the indexed column in the first filter predicate; and pruning, from access paths for processing the query statement, any data records, corresponding to data record addresses in the set of data record addresses, that are physically located in one of the pruneable zones.

    Abstract translation: 使用区域地图信息进行后索引访问修剪的技术。 在一个实施例中,例如,用于使用区域映射信息用于后索引访问修剪的方法包括:在数据库表的索引列上接收包括第一过滤谓词的查询语句,以及在数据库的分区列上的第二过滤谓词 表; 基于第二过滤谓词中分区列的值,识别区域映射的零个或多个可修剪区域; 基于第一个过滤谓词中的索引列的值,从索引列索引获取一组数据记录地址; 并且从用于处理查询语句的访问路径修剪对应于物理位于可修剪区域之一的数据记录地址集合中的数据记录地址的任何数据记录。

    SQL EXECUTION PLAN VERIFICATION
    5.
    发明申请
    SQL EXECUTION PLAN VERIFICATION 审中-公开
    SQL执行计划验证

    公开(公告)号:US20140236921A1

    公开(公告)日:2014-08-21

    申请号:US14251521

    申请日:2014-04-11

    CPC classification number: G06F17/30469 G06F17/30463

    Abstract: Approaches, techniques, and mechanisms are disclosed for ensuring that a database command is executed according to a query plan that has been verified to be actually optimal. Except in rare circumstances, a database server does not execute a query plan unless it is first verified by the database server. The database server receives a request to execute a database command. The database server determines an unverified plan is the best plan for satisfying the request. Rather than risk the unknown behavior of an unverified plan, the database server instead satisfies the request according to a verified plan. Subsequently—for example as part of a scheduled job—the database server executes the unverified plan to determine performance statistics. Based at least on the performance statistics, the database server determines whether or not to verify the unverified plan. Techniques for concurrent and optimistic verifications are also disclosed.

    Abstract translation: 公开了方法,技术和机制,以确保根据已被验证为实际最佳的查询计划来执行数据库命令。 除非在极少数情况下,数据库服务器不执行查询计划,除非数据库服务器首先进行了验证。 数据库服务器接收执行数据库命令的请求。 数据库服务器确定未验证的计划是满足请求的最佳方案。 而不是冒险未验证的计划的未知行为,数据库服务器而是根据验证的计划满足请求。 随后 - 例如作为计划作业的一部分 - 数据库服务器执行未验证的计划以确定性能统计信息。 至少基于性能统计,数据库服务器确定是否验证未验证的计划。 还公开了并发和乐观验证的技术。

    Parallel execution of queries with a recursive clause

    公开(公告)号:US10678792B2

    公开(公告)日:2020-06-09

    申请号:US15268528

    申请日:2016-09-16

    Abstract: Techniques are described herein for executing queries with a recursive clause using a plurality of processes that execute database operations in parallel. Each process of the plurality of processes either generate or are assigned a segment that is part of a temporary table. For each iteration of the recursive query, work granules are divided up and assigned to each of the plurality of processes. As each respective process produces a portion of a result set for a given iteration, that process appends said portion of the result set to the respective segment that the respective process manages. Each slave process then publishes, to one or more sources, a reference to the newly generated results. During the next iteration, any slave process may access any of the data from the previous iteration.

    SQL execution plan verification
    9.
    发明授权

    公开(公告)号:US10229158B2

    公开(公告)日:2019-03-12

    申请号:US14251521

    申请日:2014-04-11

    Abstract: Approaches, techniques, and mechanisms are disclosed for ensuring that a database command is executed according to a query plan that has been verified to be actually optimal. Except in rare circumstances, a database server does not execute a query plan unless it is first verified by the database server. The database server receives a request to execute a database command. The database server determines an unverified plan is the best plan for satisfying the request. Rather than risk the unknown behavior of an unverified plan, the database server instead satisfies the request according to a verified plan. Subsequently—for example as part of a scheduled job—the database server executes the unverified plan to determine performance statistics. Based at least on the performance statistics, the database server determines whether or not to verify the unverified plan. Techniques for concurrent and optimistic verifications are also disclosed.

    PARALLEL EXECUTION OF QUERIES WITH A RECURSIVE CLAUSE

    公开(公告)号:US20170116276A1

    公开(公告)日:2017-04-27

    申请号:US15268528

    申请日:2016-09-16

    Abstract: Techniques are described herein for executing queries with a recursive clause using a plurality of processes that execute database operations in parallel. Each process of the plurality of processes either generate or are assigned a segment that is part of a temporary table. For each iteration of the recursive query, work granules are divided up and assigned to each of the plurality of processes. As each respective process produces a portion of a result set for a given iteration, that process appends said portion of the result set to the respective segment that the respective process manages. Each slave process then publishes, to one or more sources, a reference to the newly generated results. During the next iteration, any slave process may access any of the data from the previous iteration.

Patent Agency Ranking