Selecting buckets for redistributing data between nodes in a parallel database in the incremental mode
First Claim
1. A process for redistributing data between nodes in a parallel database system, wherein the redistributing process is operating concurrently with other processes, each process operating in a respective time period allotted to the respective process, comprising the steps of:
- determining redistributable data from at least one transmitting node which may be redistributed to a receiving node within a redistribution time period allotted to the redistributing process; and
redistributing the redistributable data from the at least one transmitting node to the receiving node within the redistribution time period.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system and program for determining a set of tables from which data can be redistributed between nodes in a parallel database. First, a list of candidate tables from those stored in the memories associated with a plurality of nodes in the parallel database is established. The list is ordered according a workload of each of the candidate tables. Next, each of the candidate tables is tested to determine whether it can be scanned at each of the plurality of nodes at which the candidate table is stored within a predetermined time period. Any candidate table which can be scanned within the predetermined time period is added to the set of tables from which data can be redistributed. Once the set of tables for redistribution are established, data sets, or buckets, within the redistribution tables are selected. The selected buckets are redistributed from the plurality of nodes to a receiving node. The receiving node is a new node to the parallel database system or an underutilized node in the parallel database system.
-
Citations
15 Claims
-
1. A process for redistributing data between nodes in a parallel database system, wherein the redistributing process is operating concurrently with other processes, each process operating in a respective time period allotted to the respective process, comprising the steps of:
-
determining redistributable data from at least one transmitting node which may be redistributed to a receiving node within a redistribution time period allotted to the redistributing process; and redistributing the redistributable data from the at least one transmitting node to the receiving node within the redistribution time period. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system for redistributing data between nodes in a parallel database system in which a redistribution process operates concurrently with other processes, each process operating in a respective time period allotted to the respective process, comprising:
-
means for determining redistributable data from at least one transmitting node which may be redistributed to a receiving node within a redistribution time period allotted to the redistribution process; and means for redistributing the redistributable data from the at least one transmitting node to the receiving node within the redistribution time period. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer program product readable in a computer memory for redistributing data between nodes in a parallel database system, which when executed causes a redistribution process to operate concurrently with other processes, each process operating in a respective time period allotted to the respective process, the product comprising:
-
means for determining redistributable data from at least one transmitting node which may be redistributed to a receiving node within a redistribution time period allotted to the redistribution process; and means for redistributing the redistributable data from the at least one transmitting node to the receiving node within the redistribution time period. - View Dependent Claims (12, 13, 14, 15)
-
Specification