OPTIMIZATION TECHNIQUE OF GENERALIZED DISJUNCTIVE SEMI/ANTI JOIN
    11.
    发明申请
    OPTIMIZATION TECHNIQUE OF GENERALIZED DISJUNCTIVE SEMI/ANTI JOIN 审中-公开
    通用分光光度计的优化技术

    公开(公告)号:US20140067789A1

    公开(公告)日:2014-03-06

    申请号:US13603302

    申请日:2012-09-04

    IPC分类号: G06F17/30

    摘要: A method, apparatus, and stored instructions are provided for transforming a query representation by unnesting a predicate condition that is based on whether or not a result exists for a subquery of the predicate condition. An initial query representation is received. The initial query representation represents an initial query that includes an EXISTS-equivalent predicate or a NOT-EXISTS-equivalent predicate and at least one other predicate in a disjunction. The initial query representation is transformed into a semantically equivalent transformed query representation that represents a transformed query. The transformed query includes, instead of the EXISTS-equivalent predicate or a NOT-EXISTS-equivalent predicate, a join operator that references the data object. The transformed query representation, when used for execution, causes the at least one other predicate to be applied separately from a join operation caused by the join operator such that execution of the initial representation is semantically equivalent to execution of the transformed representation.

    摘要翻译: 提供了一种方法,装置和存储的指令,用于通过不知道基于谓词条件的子查询的结果是否存在的谓词条件来转换查询表示。 收到初始查询表示。 初始查询表示代表一个初始查询,其中包含EXISTS等效谓词或NOT-EXISTS等价谓词和至少一个其他谓词。 初始查询表示被转换成表示变换查询的语义上等同的变换查询表示。 转换后的查询包括引用数据对象的连接运算符,而不是EXISTS等效谓词或NOT-EXISTS等效谓词。 经变换的查询表示当用于执行时,使至少一个其他谓词与由连接运算符引起的连接操作分开应用,使得初始表示的执行在语义上等同于转换表示的执行。

    Delaying evaluation of expensive expressions in a query
    12.
    发明授权
    Delaying evaluation of expensive expressions in a query 有权
    在查询中延迟评估昂贵的表达式

    公开(公告)号:US07877379B2

    公开(公告)日:2011-01-25

    申请号:US11242361

    申请日:2005-09-30

    IPC分类号: G06F7/00

    摘要: Techniques are provided for delaying evaluation of expensive expressions in a query. Expensive expressions in the query are established by cost information or by looking up a list of known expensive expressions for a match. After an execution plan is determined by using the early evaluation technique, one or more equivalent execution plans is established. The one or more equivalent execution plans may include both a type of execution plans that delay evaluation of expensive expressions and a type of execution plans that do not. In addition, the one or more equivalent execution plans may include both parallelized and non-parallelized alternatives to the execution plan identified by the early evaluation technique. Finally, based on a set of criteria, which may include comparing cost information among all the equivalent execution plans generated thus far, the best execution plan is chosen for the query.

    摘要翻译: 提供了用于延迟查询中昂贵表达式的评估的技术。 查询中的昂贵表达式是通过成本信息建立的,或通过查找匹配的已知昂贵表达式的列表来确定。 在通过使用早期评估技术确定执行计划之后,建立一个或多个等效执行计划。 一个或多个等效执行计划可以包括延迟对昂贵表达式的评估的执行计划的类型以及不执行计划的类型。 此外,一个或多个等效执行计划可以包括由早期评估技术识别的执行计划的并行化和非并行化替代方案。 最后,基于一组标准,其中可能包括比较到目前为止生成的所有等效执行计划中的成本信息,为查询选择最佳执行计划。

    Efficient search space analysis for join factorization
    13.
    发明授权
    Efficient search space analysis for join factorization 有权
    用于连接分解的高效搜索空间分析

    公开(公告)号:US07809713B2

    公开(公告)日:2010-10-05

    申请号:US11716107

    申请日:2007-03-08

    IPC分类号: G06F17/30

    摘要: Under a type of query transformation referred to herein as join factorization, the branches of an UNION/UNION ALL query that join a common table are combined to reduce accesses to the common table. The transformation can be expressed as (T1 join T2) union all (T1 join T3)=T1 join (T2 union all T3), where T1, T2 and T3 are three tables. A given query may be rewritten in many alternate ways using join factorization. Evaluating each alternative can be expensive. Therefore, the alternatives are generated and evaluated in a way that minimizes the cost of evaluating the alternatives.

    摘要翻译: 在这里称为连接因式分解的一种类型的查询变换中,加入公共表的UNION / UNION ALL查询的分支被组合以减少对公共表的访问。 转换可以表示为(T1连接T2)联合全部(T1连接T3)= T1连接(T2联合全T3),其中T1,T2和T3是三个表。 给定的查询可以使用连接因式分解以许多替代方式重写。 评估每个替代品可能是昂贵的。 因此,以最小化评估替代品的成本的方式生成和评估替代方案。

    Extended cursor sharing
    14.
    发明授权
    Extended cursor sharing 有权
    扩展光标共享

    公开(公告)号:US07702623B2

    公开(公告)日:2010-04-20

    申请号:US11831951

    申请日:2007-07-31

    IPC分类号: G06F17/30

    摘要: Techniques for sharing cursors are provided. When a new query is issued, a database server determines whether the new query is semantically equivalent to a previous query. If so, then database server computes statistics associated with the new query. Based on the statistics, the database server determines whether compiling the new query would produce an execution plan that satisfies certain criteria. If so, then the cursor is used to execute the new query. In another approach, one cursor sharing technique (CST) is used to determine which cursor to use to execute a first set of semantically-equivalent queries. Statistics are gathered during execution of the first set of queries. The database server determines, based on the statistics, when to switch from using the first CST to a different CST. The different CST is used to determine which cursor to use to execute a second set of queries that are semantically-equivalent to the first set.

    摘要翻译: 提供了共享光标的技术。 当发出新的查询时,数据库服务器确定新查询在语义上等同于先前的查询。 如果是这样,则数据库服务器计算与新查询关联的统计信息。 基于统计信息,数据库服务器确定是否编译新查询将生成满足特定条件的执行计划。 如果是这样,那么游标用于执行新的查询。 在另一种方法中,使用一个游标共享技术(CST)来确定用于执行第一组语义等效查询的游标。 在第一组查询执行期间收集统计信息。 数据库服务器根据统计信息确定何时从使用第一个CST切换到另一个CST。 不同的CST用于确定哪个游标用于执行第二组查询语义上等同于第一组查询。

    ADAPTIVE SELECTION OF A DISTRIBUTION METHOD DURING EXECUTION OF PARALLEL JOIN OPERATIONS
    17.
    发明申请
    ADAPTIVE SELECTION OF A DISTRIBUTION METHOD DURING EXECUTION OF PARALLEL JOIN OPERATIONS 有权
    并行执行期间自适应选择分配方法

    公开(公告)号:US20140280023A1

    公开(公告)日:2014-09-18

    申请号:US13839399

    申请日:2013-03-15

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30466 G06F17/30498

    摘要: A method, system, and computer program product for high-performance database systems. The method commences by estimating, during a compile phase, a statically-calculated system cost of performing parallel join operations over two relations, then selecting, during the compile phase, a first distribution method to perform the parallel join operations. Instructions (e.g., table partitioning) are communicated to two or more execution units for execution of the parallel join operations, and during execution, various measurements are taken pertaining to the performance of a first portion of the parallel join operations using the selected first distribution method. Then, responsive to the measurements a second distribution method is selected and corresponding instructions are communicated to the two or more execution units. The parallel join operations continue, now using the second distribution method.

    摘要翻译: 用于高性能数据库系统的方法,系统和计算机程序产品。 该方法通过在编译阶段估计在两个关系上执行并行连接操作的静态计算的系统成本,然后在编译阶段期间选​​择执行并行连接操作的第一分发方法来开始。 将指令(例如,表分区)传送到两个或更多个执行单元以执行并行连接操作,并且在执行期间,使用所选择的第一分配方法对并行连接操作的第一部分的性能进行各种测量 。 然后,响应于测量,选择第二分配方法,并将相应的指令传送给两个或更多个执行单元。 并行连接操作继续,现在使用第二个分发方法。

    Adaptive cursor sharing
    19.
    发明授权
    Adaptive cursor sharing 有权
    自适应光标共享

    公开(公告)号:US07689550B2

    公开(公告)日:2010-03-30

    申请号:US11831952

    申请日:2007-07-31

    IPC分类号: G06F17/30

    摘要: Techniques for sharing cursors are provided. When a new query is issued, a database server determines whether the new query is semantically equivalent to a previous query. If so, then database server computes statistics associated with the new query. Based on the statistics, the database server determines whether compiling the new query would produce an execution plan that satisfies certain criteria. If so, then the cursor is used to execute the new query. In another approach, one cursor sharing technique (CST) is used to determine which cursor to use to execute a first set of semantically-equivalent queries. Statistics are gathered during execution of the first set of queries. The database server determines, based on the statistics, when to switch from using the first CST to a different CST. The different CST is used to determine which cursor to use to execute a second set of queries that are semantically-equivalent to the first set.

    摘要翻译: 提供了共享光标的技术。 当发出新的查询时,数据库服务器确定新查询在语义上等同于先前的查询。 如果是这样,则数据库服务器计算与新查询关联的统计信息。 基于统计信息,数据库服务器确定是否编译新查询将生成满足特定条件的执行计划。 如果是这样,那么游标用于执行新的查询。 在另一种方法中,使用一个游标共享技术(CST)来确定用于执行第一组语义等效查询的游标。 在第一组查询执行期间收集统计信息。 数据库服务器根据统计信息确定何时从使用第一个CST切换到另一个CST。 不同的CST用于确定哪个游标用于执行第二组查询语义上等同于第一组查询。

    Join factorization of union/union all queries
    20.
    发明授权
    Join factorization of union/union all queries 有权
    加入联盟/联盟所有查询的因式分解

    公开(公告)号:US07644062B2

    公开(公告)日:2010-01-05

    申请号:US11716010

    申请日:2007-03-08

    IPC分类号: G06F7/00 G06F17/30

    摘要: Under a type of query transformation referred to herein as join factorization, the branches of an UNION/UNION ALL query that join a common table are combined to reduce accesses to the common table. The transformation can be expressed as (T1 join T2) union all (T1 join T3)=T1 join (T2 union all T3), where T1, T2 and T3 are three tables. A given query may be rewritten in many alternate ways using join factorization. Evaluating each alternative can be expensive. Therefore, the alternatives are generated and evaluated in a way that minimizes the cost of evaluating the alternatives.

    摘要翻译: 在这里称为连接因式分解的一种类型的查询变换中,加入公共表的UNION / UNION ALL查询的分支被组合以减少对公共表的访问。 转换可以表示为(T1连接T2)联合全部(T1连接T3)= T1连接(T2联合全T3),其中T1,T2和T3是三个表。 给定的查询可以使用连接因式分解以许多替代方式重写。 评估每个替代品可能是昂贵的。 因此,以最小化评估替代品的成本的方式生成和评估替代方案。