Executing a parallel single cursor model
    21.
    发明授权
    Executing a parallel single cursor model 有权
    执行并行单光标模型

    公开(公告)号:US07685095B2

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

    申请号:US10944175

    申请日:2004-09-16

    IPC分类号: G06F17/30

    摘要: Techniques are provided for executing database statements, or portions thereof, in parallel without using slave SQL to communicate to each slave the operations to be performed by the slave. Techniques are provided for incorporating within a shared cursor the code fragments that govern both sides of the interaction between a query coordinator (QC) and remotely-located slaves. Further, techniques are provided for the QC to communicate with each slave on how and which portions of the execution plan to execute and when. A state-transition engine for slave execution under the control of the query-coordinator is also provided.

    摘要翻译: 提供了用于并行地执行数据库语句或其部分的技术,而不使用从属SQL向从属单元通信由从属单元执行的操作。 提供了在共享游标中并入管理查询协调器(QC)和远程定位的从站之间的交互的两侧的代码片段的技术。 此外,提供了用于QC的技术以与每个从属单元通信以执行执行计划以及何时执行计划的哪些部分。 还提供了在查询协调器的控制下从属执行的状态转换引擎。

    SQL tuning sets
    22.
    发明授权
    SQL tuning sets 有权
    SQL调优集

    公开(公告)号:US07664778B2

    公开(公告)日:2010-02-16

    申请号:US10936449

    申请日:2004-09-07

    IPC分类号: G06F7/00 G06F17/00

    摘要: A method and system for storing one or more database query language statements and performance information for each query language statement as a persistent database object. In one or more embodiments, the method and system stores the resource intensive statements and the performance information for each resource intensive statement as a second persistent database object.

    摘要翻译: 用于将每个查询语言语句的一个或多个数据库查询语言语句和性能信息存储为持久数据库对象的方法和系统。 在一个或多个实施例中,该方法和系统将资源密集型语句和每个资源密集型语句的性能信息存储为第二持久数据库对象。

    Hybrid optimization strategies in automatic SQL tuning
    23.
    发明申请
    Hybrid optimization strategies in automatic SQL tuning 有权
    自动SQL调优中的混合优化策略

    公开(公告)号:US20100030758A1

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

    申请号:US12221131

    申请日:2008-07-30

    IPC分类号: G06F17/30

    摘要: Systems, methods, and other embodiments associated with hybrid optimization strategies in automatic SQL tuning are described. One example method includes receiving a first (e.g., cost-based) execution plan for a user structured query language statement (User SQL) from a first (e.g., cost-based) optimizer. The example method may also include receiving a second (e.g., rules-based) execution plan for the User SQL from a second, different (e.g., rules-based) query optimizer. The method may include identifying a preferred execution plan based on data produced by test executing the execution plans in a reproduced execution environment that reproduces at least a portion of an execution environment in which the user SQL runs. The method may also include controlling a database to execute the User SQL using the preferred execution plan.

    摘要翻译: 描述了与自动SQL调优中的混合优化策略相关联的系统,方法和其他实施例。 一个示例性方法包括从第一(例如基于成本的)优化器接收用户结构化查询语言语句(User SQL)的第一(例如基于成本的)执行计划。 示例性方法还可以包括从第二不同(例如,基于规则的)查询优化器接收针对用户SQL的第二(例如基于规则的)执行计划。 该方法可以包括基于在再现执行用户SQL运行的执行环境的至少一部分的再现执行环境中执行执行计划的测试产生的数据来识别优选执行计划。 该方法还可以包括控制数据库以使用优选的执行计划来执行User SQL。

    SCRUBBING AND EDITING OF DIAGNOSTIC DATA
    24.
    发明申请
    SCRUBBING AND EDITING OF DIAGNOSTIC DATA 有权
    诊断数据的编辑和编辑

    公开(公告)号:US20090106262A1

    公开(公告)日:2009-04-23

    申请号:US12251685

    申请日:2008-10-15

    IPC分类号: G06F17/30

    摘要: Techniques that enable a user or customer at a system site to review and, if desired, modify data identified at the system site for transmission to a diagnosis site prior to the transmission. The identified diagnostic data may be modified such that data that the user does not want to be sent to the diagnosis site (e.g., sensitive data) is excluded from the data communicated to the diagnosis site. The data may be modified by removing or excluding the sensitive data from the data that is communicated to the diagnosis site or replacing the sensitive data with non-sensitive data. The modified data may then be communicated from the system site to the diagnosis site in the form of a package.

    摘要翻译: 允许系统站点上的用户或客户审查技术,并且如果需要,修改在系统现场识别的数据,以便在传输之前传送到诊断位置。 所识别的诊断数据可以被修改,使得用户不希望将其发送到诊断位点的数据(例如敏感数据)被排除在传送到诊断位点的数据中。 可以通过从传送到诊断站点的数据中删除或排除敏感数据或用非敏感数据替换敏感数据来修改数据。 然后可以以包的形式将修改的数据从系统站点传送到诊断站点。

    SQL Execution Plan Verification
    25.
    发明申请
    SQL Execution Plan Verification 有权
    SQL执行计划验证

    公开(公告)号:US20090106219A1

    公开(公告)日:2009-04-23

    申请号:US12188683

    申请日:2008-08-08

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30469 G06F17/30463

    摘要: 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.

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

    NON-INTRUSIVE GATHERING OF DIAGNOSTIC DATA USING ASYNCHRONOUS MECHANISMS
    26.
    发明申请
    NON-INTRUSIVE GATHERING OF DIAGNOSTIC DATA USING ASYNCHRONOUS MECHANISMS 有权
    使用异步机制诊断数据的非侵入性数据

    公开(公告)号:US20090105989A1

    公开(公告)日:2009-04-23

    申请号:US12251711

    申请日:2008-10-15

    IPC分类号: G21C17/00

    摘要: Techniques for non-intrusive performance of diagnostic actions including actions that result in gathering of diagnostic data in response to a condition detected in a monitored system. In one embodiment, the diagnostic actions are performed asynchronously by processes or threads that are different from the failing process or thread that receives or detects the condition that triggers the diagnostic actions such that the failing process or thread can continue processing without being affected by the executions of the diagnostic actions. Multiple asynchronous processes or threads that are different from the failing process or thread may be spawned to perform multiple diagnostic actions in parallel. The asynchronous processes or threads may be monitored to ensure that they do not adversely impact the monitored system.

    摘要翻译: 用于非侵入式执行诊断动作的技术,包括导致响应于在受监视系统中检测到的状况而收集诊断数据的动作。 在一个实施例中,诊断动作由与接收或检测触发诊断动作的状况不同的进程或线程不同的进程或线程异步执行,使得故障进程或线程可以继续处理而不受执行的影响 的诊断动作。 可能会产生与故障进程或线程不同的多个异步进程或线程,以并行执行多个诊断操作。 可以监视异步进程或线程,以确保它们不会对受监视的系统产生不利影响。

    Efficient data aggregation operations using hash tables
    27.
    发明授权
    Efficient data aggregation operations using hash tables 有权
    使用哈希表进行有效的数据聚合操作

    公开(公告)号:US07469241B2

    公开(公告)日:2008-12-23

    申请号:US11156068

    申请日:2005-06-17

    IPC分类号: G06F7/00 G06F17/30

    摘要: Hash aggregation operates in two phases. In the first phase, data read from underlying row source is partitioned on GROUP BY keys with on-the-fly aggregation. It is determined into which partition an entry corresponding to the incoming record should be grouped, and whether a matching entry is already present in the partition, using a hash function and a hash table built for the partition. For aggregation operations, if a match is found, then a measure value from the incoming record is aggregated with a measure value for the entry existing in the partition. If there is not enough system volatile memory to complete the first phase, then a partition is selected for storing persistently. Thus, only one partition at a time is stored persistently, as necessary. In the second phase, one persistently stored partition is processed at a time, whereby aggregation of the data in that partition is completed and results are returned.

    摘要翻译: 哈希聚合分为两个阶段。 在第一阶段,从基础行源读取的数据在具有即时聚合的GROUP BY密钥上进行分区。 确定哪个分区对应于输入记录的条目应该被分组,以及使用为该分区构建的散列函数和哈希表是否已经存在分区中的匹配条目。 对于聚合操作,如果找到匹配项,则来自记录的度量值将与分区中存在的条目的度量值进行聚合。 如果没有足够的系统易失性存储器来完成第一阶段,则选择一个分区来持久存储。 因此,必要时,一次只能存储一个分区。 在第二阶段,一次处理一个持久存储的分区,从而完成该分区中的数据的聚合,并返回结果。

    Approximating a database statistic
    28.
    发明申请
    Approximating a database statistic 有权
    近似数据库统计

    公开(公告)号:US20080120274A1

    公开(公告)日:2008-05-22

    申请号:US11796102

    申请日:2007-04-25

    IPC分类号: G06F7/00

    摘要: A method and apparatus for approximating a database statistic, such as the number of distinct values (NDV) is provided. To approximate the NDV for a portion of a table, a synopsis of distinct values is constructed. Each value in the portion is mapped to a domain of values. The mapping function is implemented with a uniform hash function, in one embodiment. If the resultant domain value does not exist in the synopsis, the domain value is added to the synopsis. If the synopsis reaches its capacity, a portion of the domain values are discarded from the synopsis. The statistic is approximated based on the number (N) of domain values in the synopsis and the portion of the domain that is represented in the synopsis relative to the size of the domain.

    摘要翻译: 提供了用于近似数据库统计量的方法和装置,例如不同值(NDV)的数量。 为了近似表的一部分的NDV,构建了不同值的概要。 该部分中的每个值都映射到值的域。 在一个实施例中,映射功能是用均匀散列函数实现的。 如果在概要中不存在结果域值,则将域值添加到概要中。 如果概要达到其容量,则域值的一部分将从摘要中被丢弃。 统计量基于概要中的域值的数量(N)和在概要中相对于域的大小表示的域的部分近似。

    Performing recursive database operations
    29.
    发明授权
    Performing recursive database operations 有权
    执行递归数据库操作

    公开(公告)号:US07155446B2

    公开(公告)日:2006-12-26

    申请号:US10867923

    申请日:2004-06-14

    IPC分类号: G06F17/00

    摘要: A method and apparatus for performing recursive database operations is provided. According to one aspect, a plurality of first-stage slaves and a plurality of second-stage slaves are established in a database server. During one or more iterations of a recursive database operation, the first-stage slaves concurrently process data items stored in a data repository and send results to the second-stage slaves. The second-stage slaves receive the results and concurrently process those results. The second-stage slaves store the results of the second-stage slaves' processing in the data repository. Subsequent iterations of the recursive database operation proceed in this manner until the recursive database operation has been completed. In each iteration, the first-stage slaves consume the product of the second-stage slaves' previous iteration's processing, and the second-stage slaves consume the product of the first-stage slaves' current iteration's processing.

    摘要翻译: 提供了一种用于执行递归数据库操作的方法和装置。 根据一个方面,在数据库服务器中建立多个第一级从站和多个第二级从站。 在递归数据库操作的一个或多个迭代期间,第一级从站同时处理存储在数据存储库中的数据项,并将结果发送到第二级从站。 第二阶段的奴隶收到结果并同时处理这些结果。 第二级从站将数据存储库中的第二级从站处理的结果存储起来。 递归数据库操作的后续迭代以这种方式进行,直到递归数据库操作完成。 在每次迭代中,第一级从站消耗第二级从站先前迭代处理的乘积,第二级从站消耗第一级从站当前迭代处理的乘积。

    Parallel partition-wise aggregation
    30.
    发明申请
    Parallel partition-wise aggregation 有权
    并行分区聚合

    公开(公告)号:US20060182046A1

    公开(公告)日:2006-08-17

    申请号:US11060260

    申请日:2005-02-16

    IPC分类号: H04L12/16 H04Q11/00

    CPC分类号: G06F9/4494

    摘要: Techniques are provided for performing a parallel aggregation operation on data that resides in a container, such as a relational table. During generation of the execution plan for the operation, it is determined whether partition-wise aggregation should be performed, based on the grouping keys involved in the aggregation and the partition keys used to partition the container. If partition-wise aggregation is to be performed, then the assignments given to the slave processes that are assigned to scan a container are made on a partition-wise basis. The scan slaves themselves may perform full or partial aggregation (depending on whether they are the only scan slaves assigned to the partition). If the scan slaves perform no aggregation, or only partial aggregation, then the scan slaves redistribute the data items to aggregation slaves that are local to the scan slaves.

    摘要翻译: 提供了用于对驻留在诸如关系表的容器中的数据执行并行聚合操作的技术。 在生成操作的执行计划时,基于聚合中涉及的分组密钥和用于分区容器的分区密钥,确定是否应该执行分区聚合。 如果要执行分区聚合,则分配给分配给扫描容器的从属进程的分配是以分区方式进行的。 扫描从站本身可以执行完全或部分聚合(取决于它们是否是分配给分区的唯一扫描从站)。 如果扫描从站不执行聚合或仅执行部分聚合,则扫描从站将数据项重新分配到扫描从站本地的聚合从站。