Method and apparatus to support bitmap filtering in a parallel system
    91.
    发明授权
    Method and apparatus to support bitmap filtering in a parallel system 有权
    支持并行系统中位图过滤的方法和装置

    公开(公告)号:US08145642B2

    公开(公告)日:2012-03-27

    申请号:US11001363

    申请日:2004-11-30

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30498

    摘要: Techniques are described for combining pieces of information from two sources. The techniques may be used to improve the performance, for example, of hash join operations that are parallelized using slaves distributed across multiple nodes. According to one technique, bitmap filtering operations are performed by the probe-phase producer slaves, rather than the probe-phase consumer slaves. To avoid having to merge separately built bitmap filter chunks, the left-hand rows may be sent to every probe-phase consumer slave. Alternatively, the merge operation may be avoided by distributing the rows of one source based on how the other source has been statically partitioned.

    摘要翻译: 描述了用于组合来自两个来源的信息的技术。 这些技术可以用于改进例如使用分布在多个节点上的从属并行化的散列连接操作的性能。 根据一种技术,位图过滤操作由探针相位生成器从站而不是探针相消费者从站执行。 为了避免必须合并单独构建的位图过滤器块,可以将左侧行发送到每个探针阶段的客户从站。 或者,可以基于如何静态地分割其他源来分发一个源的行来避免合并操作。

    Compilation and processing a parallel single cursor model
    92.
    发明授权
    Compilation and processing a parallel single cursor model 有权
    编译并处理并行单光标模型

    公开(公告)号:US08086645B2

    公开(公告)日:2011-12-27

    申请号:US10824887

    申请日:2004-04-13

    IPC分类号: G06F7/00

    CPC分类号: G06F17/30445

    摘要: Techniques are provided for executing query statements, or portions thereof, in parallel without using slave SQL to communicate to each slave the operations to be performed by the slave. Instead of generating one cursor for the query coordinator (QC) based on the original statement, and separate cursors for each DFO based on the slave SQL, the techniques involve sharing the cursor that is generated from the original statement among the various participants involved in the parallel execution of the operations specified in the original statement.

    摘要翻译: 提供了用于并行执行查询语句或其部分的技术,而不使用从属SQL向从机通知由从机执行的操作。 基于原始语句而不是为查询协调器(QC)生成一个游标,并且基于从属SQL为每个DFO分别设置游标,这些技术涉及共享从原始语句生成的游标, 并行执行原始语句中指定的操作。

    Merging synopses to determine number of distinct values in large databases
    93.
    发明授权
    Merging synopses to determine number of distinct values in large databases 有权
    合并摘要以确定大型数据库中不同值的数量

    公开(公告)号:US07603339B2

    公开(公告)日:2009-10-13

    申请号:US11796110

    申请日:2007-04-25

    IPC分类号: G06F7/00 G06F17/30 G06F17/00

    摘要: A method and apparatus for merging synopses to determine a database statistic, e.g., a number of distinct values (NDV), is disclosed. The merging can be used to determine an initial database statistic or to perform incremental statistics maintenance. For example, each synopsis can pertain to a different partition, such that merging the synopses generates a global statistic. When performing incremental maintenance, only those synopses whose partitions have changed need to be updated. Each synopsis contains domain values that summarize the statistic. However, the synopses may initially contain domain values that are not compatible with each other. Prior to merging the synopses the domain values in each synopsis is made compatible with the domain values in the other synopses. The adjustment is made such that each synopsis represents the same range of domain values, in one embodiment. After “compatible synopses” are formed, the synopses are merged by taking the union of the compatible synopses.

    摘要翻译: 公开了用于合并概要以确定数据库统计量的方法和装置,例如多个不同值(NDV)。 合并可用于确定初始数据库统计信息或执行增量统计维护。 例如,每个概要可以涉及不同的分区,以便合并概要会生成全局统计量。 执行增量维护时,只需要更新其分区已更改的概要文件。 每个概要包含总结统计量的域值。 但是,这些概要可能最初包含彼此不兼容的域值。 在合并概要之前,每个概要中的域值与其他概要中的域值兼容。 在一个实施例中进行调整,使得每个概要表示相同范围的域值。 在形成“兼容简介”之后,通过兼容兼容简报的合并来合并概要。

    Automatic Recognition and Capture of SQL Execution Plans
    94.
    发明申请
    Automatic Recognition and Capture of SQL Execution Plans 有权
    自动识别和捕获SQL执行计划

    公开(公告)号:US20090106320A1

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

    申请号:US12188662

    申请日:2008-08-08

    IPC分类号: G06F17/30 G06F9/44

    CPC分类号: G06F17/30469 G06F17/30463

    摘要: Approaches, techniques, and mechanisms are disclosed for capturing and utilizing information related to query plans exhibiting interesting characteristics. A database server receives a request to execute a command. The database server executes the command according to a query plan. In response to determining that the command matches one or more pre-defined criteria, the database server captures information related to the execution of the first command. The criteria may include, for example, whether or not the command is repeatable, the existence of bind variables, access of a particular object, high resource utilization, receipt from a particular user, client, or application, etc. The information recorded may include, for example, performance statistics collected during execution of the first plan, data indicating the execution context during execution of the first plan, and properties of the first plan. The recorded information may subsequently be utilized by the database server in executing other database other database commands.

    摘要翻译: 公开了用于捕获和利用与显示有趣特征的查询计划相关的信息的方法,技术和机制。 数据库服务器接收执行命令的请求。 数据库服务器根据查询计划执行该命令。 响应于确定该命令匹配一个或多个预定义标准,数据库服务器捕获与执行第一命令有关的信息。 标准可以包括例如,命令是否可重复,绑定变量的存在,特定对象的访问,高资源利用率,来自特定用户,客户端或应用程序的接收等。所记录的信息可以包括 例如,在执行第一计划期间收集的性能统计数据,在执行第一计划期间指示执行上下文的数据以及第一计划的属性。 记录的信息随后可被数据库服务器用于执行其他数据库命令。

    Managing memory in a system that includes a shared memory area and a private memory area
    95.
    发明申请
    Managing memory in a system that includes a shared memory area and a private memory area 有权
    在包含共享内存区域和专用内存区域的系统中管理内存

    公开(公告)号:US20080235481A1

    公开(公告)日:2008-09-25

    申请号:US11726060

    申请日:2007-03-20

    IPC分类号: G06F12/00

    CPC分类号: G06F12/0284 G06F9/52

    摘要: A method and apparatus for auto-tuning memory is provided. Memory on a computer system comprises at least one shared memory area and at least one private memory area. Addresses in the shared memory area are accessible to multiple processes. Addresses in the private memory area are dedicated to individual processes. Initially, a division in the amount of memory is established between the shared and private memory areas. Subsequently, a new division is determined. Consequently, memory from one memory area is “given” to the other memory area. In one approach, such sharing is achieved by causing the shared and private memory areas to be physically separate from each other both before and after a change in the division. The division of the amount of memory may be changed to a new division by deallocating memory from one of the memory areas and allocating that memory to the other of the memory areas.

    摘要翻译: 提供了一种用于自动调谐存储器的方法和装置。 计算机系统上的存储器包括至少一个共享存储器区域和至少一个专用存储器区域。 共享内存区域中的地址可以访问多个进程。 专用内存区域中的地址专用于各个进程。 最初,在共享和专用存储区之间建立了存储量的划分。 随后,确定了一个新的部门。 因此,来自一个存储器区域的存储器被“给予”另一个存储器区域。 在一种方法中,这种共享是通过使分区和专用存储器区域在分区改变之前和之后彼此物理上分开来实现的。 通过从存储区域之一释放存储器并将该存储器分配给存储区域中的另一个,可以将存储量的划分改变为新的划分。

    Dynamic and automatic memory management
    96.
    发明授权
    Dynamic and automatic memory management 有权
    动态和自动内存管理

    公开(公告)号:US07409517B2

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

    申请号:US09969290

    申请日:2001-10-01

    IPC分类号: G06F12/02

    CPC分类号: G06F9/5016

    摘要: An application program (such as a database) is responsive to a value (also called externally-set global value) that defines the amount of memory to be used by the application program for functions (such as queries) performed by the application program. In one embodiment, a sequence of instructions (also called “memory broker”) uses the externally-set global value to compute one or more internal values that are then used when allocating memory. The memory broker dynamically revises the internal value(s) based on memory being allocated for the functions, thereby to form a feedback loop.

    摘要翻译: 应用程序(例如数据库)响应于定义应用程序用于由应用程序执行的功能(例如查询)使用的存储器量的值(也称为外部设置的全局值)。 在一个实施例中,指令序列(也称为“存储代理”)使用外部设置的全局值来计算当分配存储器时然后使用的一个或多个内部值。 内存代理根据为功能分配的内存动态修改内部值,从而形成一个反馈循环。

    Parallel single cursor model on multiple-server configurations
    97.
    发明授权
    Parallel single cursor model on multiple-server configurations 有权
    多服务器配置上的并行单光标模型

    公开(公告)号:US07340452B2

    公开(公告)日:2008-03-04

    申请号:US10901411

    申请日:2004-07-27

    IPC分类号: G06F17/30

    摘要: A cursor that is generated from an original database statement includes a master plan that is shared among the various participants involved in the parallel execution of the operations specified in the original statement. For participants that cannot share the same cursor, such as slave processes on remote servers, a remote cursor is generated. Signatures are generated for both the master plan and the remote plans, and compared to ensure that the remote plans are equivalent to the master plans. Various parameters and statistics are provided to remote servers to increase the likelihood that the remote plans will be equivalent to the master plan.

    摘要翻译: 从原始数据库语句生成的游标包括在并行执行原始语句中指定的操作的各参与者之间共享的主计划。 对于无法共享相同光标的参与者(如远程服务器上的从属进程),将生成远程光标。 为主计划和远程计划生成签名,并进行比较,以确保远程计划等同于主计划。 向远程服务器提供了各种参数和统计信息,以增加远程计划与主计划相当的可能性。

    Dynamic performance views with a parallel single cursor model
    98.
    发明授权
    Dynamic performance views with a parallel single cursor model 有权
    具有并行单光标模型的动态性能视图

    公开(公告)号:US07203676B2

    公开(公告)日:2007-04-10

    申请号:US10898300

    申请日:2004-07-23

    IPC分类号: G06F17/30

    摘要: A query coordinator handles a multiple-server dynamic performance query by sending remote query slaves (1) first information for generating a complete plan for the query, and (2) second information for participating in the dynamic performance view portion of the query. If the slaves on the remote servers are unable to use the first information to generate an equivalent query (for example, if they reside in a database server that has closed the database), then the slaves on the remote servers use the second information to participate in the dynamic performance view portion of the query.

    摘要翻译: 查询协调器通过发送远程查询从站来处理多服务器动态性能查询(1)用于生成查询的完整计划的第一信息,以及(2)用于参与查询的动态性能视图部分的第二信息。 如果远程服务器上的从站无法使用第一个信息来生成等效查询(例如,如果它们位于已关闭数据库的数据库服务器中),则远程服务器上的从站将使用第二个信息来参与 在查询的动态性能视图部分。

    Performing recursive database operators
    99.
    发明申请
    Performing recursive database operators 有权
    执行递归数据库运算符

    公开(公告)号:US20070067327A1

    公开(公告)日:2007-03-22

    申请号:US11600272

    申请日:2006-11-14

    IPC分类号: G06F7/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.

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

    Distributing data items to corresponding buckets for use in parallel operations
    100.
    发明授权
    Distributing data items to corresponding buckets for use in parallel operations 有权
    将数据项分配到相应的桶中以用于并行操作

    公开(公告)号:US06978458B1

    公开(公告)日:2005-12-20

    申请号:US09715552

    申请日:2000-11-17

    IPC分类号: G06F9/46

    摘要: Techniques are provided for evenly distributing data items of a particular set of data to a plurality of buckets. The buckets of data items may then be assigned to processes to perform operations on the data items in parallel with the other processes. In one embodiment, the set of data (which may come from tables or be the result set of a previous operation) is divided into a plurality of subsets. For each subset of the plurality of subsets, a sample of data items is randomly selected. The sampling itself may be performed in parallel, with each sampling process using a different seed to randomize its selection of samples. The sampled data items are sorted and ranges are determined based on distribution keys of the sampled data items. The ranges are assigned to buckets, and the data items are then distributed to the buckets assigned to the range into which their distribution key falls.

    摘要翻译: 提供了用于将特定数据集合的数据项均匀分配到多个桶的技术。 然后可以将数据桶的桶分配给与其他处理并行地对数据项执行操作的处理。 在一个实施例中,数据集(其可以来自表格或作为先前操作的结果集)被分成多个子集。 对于多个子集的每个子集,随机选择数据项的样本。 采样本身可以并行执行,每个采样过程使用不同的种子随机选择样品。 对取样的数据项进行排序,并根据采样数据项的分配密钥确定范围。 范围被分配给桶,然后将数据项分配给分配给它们的分配密钥落入的范围的桶。