发明名称 Join operation partitioning
摘要 Partitioned join operations are performed between a first database object and a second database object by determining an agent group for an agent in response to the agent receiving rows of the second database object to process; partitioning the rows to determine a target hash table for each row and adding the partitioned rows to work to be performed by the agent group; and distributing the work for the group to agents of the group by assigning to a single agent all the rows associated with a particular hash table to perform a join operation on the assigned rows. Each partition is assigned a first counter value indicating an upper bound of a task id range that is most recently assigned to an agent in the agent group for processing, and a second counter value indicating the highest task id that has been processed for that partition.
申请公布号 US9311359(B2) 申请公布日期 2016.04.12
申请号 US201313753740 申请日期 2013.01.30
申请人 INTERNATIONAL BUSINESS MACHINES CORPORATION 发明人 Attaluri Gopi K.;Raman Vijayshankar
分类号 G06F7/00;G06F17/30 主分类号 G06F7/00
代理机构 Edell, Shapiro & Finnan, LLC 代理人 Kashef Mohammed;Edell, Shapiro & Finnan, LLC
主权项 1. An apparatus for performing partitioned join operations between a first database object and a second database object, comprising: a processor including: a determining module configured to: determine an agent group for an agent in response to the agent receiving rows of the second database object to process, wherein the rows of the first database object are partitioned into a plurality of hash tables; anddetermine an amount of the received rows of the second database object and adding the agent to the agent group in response to the determined amount of the received rows of the second database object exceeding a predetermined quantity of rows;a partitioning module configured to partition the received rows of the second database object to determine a target hash table from among the plurality of hash tables for each received row and adding the partitioned rows to a pool of rows representing work to be performed by a plurality of agents of the agent group; and a distributing module configured to distribute the work for the group to the plurality of agents of the agent group by assigning to a single agent for each of the plurality of hash tables all the rows of the pool associated with that particular hash table to perform a join operation on the assigned rows.
地址 Armonk NY US