Patent US5878409A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5878409A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for implementing partial declustering in a parallel database system

Assignee: International Business Machines Corp
•
Filing: 1996-04-10
•
Granted: 1999-03-02
•
Expires: 2016-04-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for distributing data of a table across a parallel data base system having a plurality of interlinked database nodes. The table is partitioned in accordance with a predetermined partitioning arrangement and data of the table is distributed across a subset of the nodes in accordance with the partitioning arrangement. The partitioning arrangement can comprise horizontal or vertical partitioning. The partitioning arrangement can comprise a partitioning map defining the relationship of partitions of the table to said subset of nodes.

Inventors

  • 👤 Chaitanya Baru
  • 👤 Gilles Fecteau
  • 👤 Jo-Anne Kirton
  • 👤 Lubor J. Kollar
  • 👤 Fred Koo

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 18:00
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/27; G06F16/278; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99932; Y10S707/99951; Y10S707/99952; Y10S707/99953

Claims Analysis

Total Claims: 38
Claim 1
Independent Claim 118 words
For a statically partitioned parallel database system comprising a plurality of interlinked database nodes, each of the nodes having associated storage and processor resources, a method of distributing data of a table across the nodes, comprising: selecting a subset of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the table; associating the subset of nodes with each other; associating the table with the subset of nodes; partitioning the table across the subset of nodes in accordance with a predetermined partitioning arrangement; and distributing data of the table across the subset of nodes in accordance with the partitioning arrangement.
Claim 2
Dependent Claim 118 words
For a statically partitioned parallel database system comprising a plurality of interlinked database nodes, each of the nodes having associated storage and processor resources, a method of distributing data of a table across the nodes, comprising: selecting a subset of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the table; associating the subset of nodes with each other; associating the table with the subset of nodes; partitioning the table across the subset of nodes in accordance with a predetermined partitioning arrangement; and distributing data of the table across the subset of nodes in accordance with the partitioning arrangement.
Claim 3
Dependent Claim 40 words
The method of claim 1 wherein the partitioning is selected from the group of at least one of a horizontal partitioning, vertical partitioning, or a partitioning map defining the relationship of partitions of the table to the subset of nodes.
Claim 4
Dependent Claim 85 words
The method of claim 2 in which data is distributed to the subset of nodes as applied to a partitioning key value, and information contained in a partitioning map, wherein: a partitioning key is a set of user defined fields for the table; and a partitioning key value is the value of a selected set of the fields for a particular row of the table, in the case of horizontal partitioning; or, for a particular column of the table, in the case of vertical partitioning.
Claim 5
Dependent Claim 66 words
The method of claim 3 wherein the partitioning method is applied to the key value to obtain an index value to the partitioning map which defines the location in the partitioning map which provides the node number where the particular row is to be stored, in the case of horizontal partitioning; or, where the particular column is to be stored, in the case of vertical partitioning.
Claim 6
Dependent Claim 23 words
The method of claim 4 wherein the partitioning method comprises a partitioning method selected from hash partitioning, range partitioning or round robin partitioning.
Claim 7
Dependent Claim 55 words
The method of claim 2 wherein the nodes selected for the subset are selected based on one or more of the following factors: the size of the table; the capacity of storage at each node; the maximum number of horizontal or vertical partitions, respectively; and the nature of operations to be performed on the table.
Claim 8
Dependent Claim 27 words
The method of claim 1 wherein each of the nodes in the subset of nodes is associated with its own storage resources and at least one processor.
Claim 9
Dependent Claim 94 words
The method of claim 1 as applied to a plurality of tables comprising: selecting subsets of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the tables; associating the subsets of nodes with each other; associating each of the tables with the subsets of nodes; partitioning the tables across the subsets of nodes in accordance with predetermined partitioning arrangements; and distributing data of the tables across subsets of nodes in accordance with the partitioning arrangements.
Claim 10
Dependent Claim 17 words
The method of claim 8 wherein each table is partitioned in accordance with an unique partitioning arrangement.
Claim 11
Dependent Claim 15 words
The method of claim 8 wherein the subsets of nodes are selectively nonoverlapping or overlapping.
Claim 12
Dependent Claim 125 words
A statically partitioned parallel database system comprising a plurality of interlinked database nodes, each of the nodes having associated storage and processor resources, comprising: data distribution means for distributing data of a table across the nodes, comprising: selecting a subset of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the table; associating the subset of nodes with each other; associating the table with the subset of nodes; partitioning means for partitioning the table across the subset of nodes in accordance with a predetermined partitioning arrangement; and, distributing means for distributing data of the table across the subset of nodes in accordance with the partitioning arrangement.
Claim 13
Dependent Claim 125 words
A statically partitioned parallel database system comprising a plurality of interlinked database nodes, each of the nodes having associated storage and processor resources, comprising: data distribution means for distributing data of a table across the nodes, comprising: selecting a subset of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the table; associating the subset of nodes with each other; associating the table with the subset of nodes; partitioning means for partitioning the table across the subset of nodes in accordance with a predetermined partitioning arrangement; and, distributing means for distributing data of the table across the subset of nodes in accordance with the partitioning arrangement.
Claim 14
Dependent Claim 40 words
The apparatus of claim 11 wherein the partitioning is selected from the group of at least one of a horizontal partitioning, vertical partitioning, or a partitioning map defining the relationship of partitions of the table to the subset of nodes.
Claim 15
Dependent Claim 89 words
The apparatus of claim 11 comprising means for distributing data to the subset of nodes using the means for partitioning applied to a partitioning key value, and information contained in the partitioning map, wherein: a partitioning key is a set of user defined fields for the table; and, a partitioning key value is the value of a selected set of the fields for a particular row of the table, in the case of horizontal partitioning or, for a particular column of the table, in the case of vertical partitioning.
Claim 16
Dependent Claim 67 words
The apparatus of claim 13 wherein the means for partitioning is operated on the key value to obtain an index value to the partitioning map which defines the location in the partitioning map which provides the node number where the particular row is to be stored in the case of horizontal partitioning; or, where the particular column is to be stored in the case of vertical partitioning.
Claim 17
Dependent Claim 26 words
The apparatus of claim 14 wherein the means for partitioning comprises partitioning means selected from hash partitioning means, range partitioning means or round robin partitioning means.
Claim 18
Dependent Claim 55 words
The apparatus of claim 12 wherein the nodes selected for the subset are selected based on one or more of the following factors: the size of the table; the capacity of storage at each node; the maximum number of horizontal or vertical partitions respectively; and the nature of operations to be performed on the table.
Claim 19
Dependent Claim 28 words
The apparatus of claim 11 in which each of the nodes in the subset of nodes is associated with its own storage resources and at least one processor.
Claim 20
Dependent Claim 104 words
The apparatus of claim 11 applied to a plurality of tables comprising: means for selecting subsets of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the tables; means for associating the subsets of nodes with each other; means for associating each of the tables with the subsets of nodes; means for partitioning the tables across the subsets of nodes in accordance with predetermined partitioning arrangements; and means for distributing data of the tables across the subsets of nodes in accordance with the partitioning arrangements.
Claim 21
Dependent Claim 12 words
The apparatus of claim 18 in which each partitioning arrangement is unique.
Claim 22
Dependent Claim 16 words
The apparatus of claim 18 in which the subsets of nodes are selectively nonoverlapping or overlapping.
Claim 23
Dependent Claim 57 words
The apparatus of claim 11 comprising a computer program product having a recording medium embodying the apparatus in the medium for operation in conjunction with a parallel data processing system to distribute data of a table across the subset of nodes of the processing system to facilitate processing of the table data by the data processing system.
Claim 24
Dependent Claim 134 words
An article of manufacture comprising: a computer usable medium having computer readable program code embodied therein for causing a computer system to distribute data of a table across a subset of nodes of a parallel database system; the computer readable program code in the article of manufacture comprising: computer readable program code for causing a computer to select a subset of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the table; associate the subset of nodes with each other; associate the table with the subset of nodes; partition the table in accordance with a predetermined partitioning arrangement; and distribute data of the table across the subset of nodes in accordance with the partitioning arrangement.
Claim 25
Dependent Claim 134 words
An article of manufacture comprising: a computer usable medium having computer readable program code embodied therein for causing a computer system to distribute data of a table across a subset of nodes of a parallel database system; the computer readable program code in the article of manufacture comprising: computer readable program code for causing a computer to select a subset of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the table; associate the subset of nodes with each other; associate the table with the subset of nodes; partition the table in accordance with a predetermined partitioning arrangement; and distribute data of the table across the subset of nodes in accordance with the partitioning arrangement.
Claim 26
Dependent Claim 54 words
The article of manufacture of claim 22 wherein the partitioning comprises computer readable program code for causing a computer to select from the group of at least one of a horizontal partitioning, vertical partitioning of the table, or a partitioning map defining the relationship of partitions of the table to the subset of nodes.
Claim 27
Dependent Claim 96 words
The article of manufacture of claim 23 comprising computer readable program code for causing a computer to distribute data to the subset of nodes using the code applied to a partitioning key value, and information contained in the partitioning map, wherein: a partitioning key is a set of user defined fields for the table; and, a partitioning key value is the value of a selected set of the fields for a particular row of the table, in the case of horizontal partitioning or, for a particular column of the table, in the case of vertical partitioning.
Claim 28
Dependent Claim 76 words
The article of manufacture of claim 24 comprising computer readable program code for causing a computer to utilize the partitioning code with the key value to obtain an index value to the partitioning map which defines the location in the partitioning map which provides the node number where the particular row is to be stored, in the case of horizontal partitioning; or, where the particular column is to be stored in the case of vertical partitioning.
Claim 29
Dependent Claim 23 words
The article of manufacture of claim 25 wherein the partitioning code comprises partitioning selected from hash partitioning, range partitioning or round robin partitioning.
Claim 30
Dependent Claim 57 words
The article of manufacture of claim 23 wherein the nodes selected for the subset are selected based on one or more of the following factors: the size of the table; the capacity of storage at each node; the maximum number of horizontal or vertical partitions respectively; and the nature of operations to be performed on the table.
Claim 31
Dependent Claim 30 words
The article of manufacture of claim 22 in which each of the nodes in the subset of nodes is associated with its own storage resources and at least one processor.
Claim 32
Dependent Claim 59 words
The article of manufacture of claim 22, for use with a plurality of tables, comprising: computer readable program code for causing a computer to partition the tables in accordance with predetermined partitioning arrangements; and computer readable program code for causing a computer to distribute data of the tables across subsets of the nodes in accordance with the partitioning arrangements.
Claim 33
Dependent Claim 14 words
The article of manufacture of claim 29 in which each partitioning arrangement is unique.
Claim 34
Dependent Claim 18 words
The article of manufacture of claim 29 in which the subsets of nodes are relatively nonoverlapping or overlapping.
Claim 35
Dependent Claim 130 words
A program storage device readable by a computer system, tangibly embodying a program of instructions executable by the system to perform the method steps for distributing data of a table across a subset of nodes of a statically partitioned parallel database system comprising a plurality of interlinked database nodes, the method steps comprising: selecting a subset of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the table; associating the subset of nodes with each other; associating the table with the subset of nodes; partitioning the table in accordance with a predetermined partitioning arrangement; and distributing data of the table across the subset of nodes in accordance with the partitioning arrangement.
Claim 36
Dependent Claim 130 words
A program storage device readable by a computer system, tangibly embodying a program of instructions executable by the system to perform the method steps for distributing data of a table across a subset of nodes of a statically partitioned parallel database system comprising a plurality of interlinked database nodes, the method steps comprising: selecting a subset of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the table; associating the subset of nodes with each other; associating the table with the subset of nodes; partitioning the table in accordance with a predetermined partitioning arrangement; and distributing data of the table across the subset of nodes in accordance with the partitioning arrangement.
Claim 37
Dependent Claim 160 words
A memory for storing data for access by a program being executed on a data processing system, comprising: a data structure stored in the memory, the data structure including information resident in a data base used by the program and including: a plurality of data objects stored in the memory, each of the data objects containing different information from the data base; a data object for selecting a subset of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the table; a data object for associating the subset of nodes with each other; a data object for associating the table with the subset of nodes; a data object for partitioning the table in accordance with a predetermined partitioning arrangement; and a data object for distributing data of the table across the subset of the nodes in accordance with the partitioning arrangement.
Claim 38
Dependent Claim 160 words
A memory for storing data for access by a program being executed on a data processing system, comprising: a data structure stored in the memory, the data structure including information resident in a data base used by the program and including: a plurality of data objects stored in the memory, each of the data objects containing different information from the data base; a data object for selecting a subset of nodes to be associated with each other, wherein the nodes to be associated with each other are selected based on a nature of operations to be performed on the table; a data object for associating the subset of nodes with each other; a data object for associating the table with the subset of nodes; a data object for partitioning the table in accordance with a predetermined partitioning arrangement; and a data object for distributing data of the table across the subset of the nodes in accordance with the partitioning arrangement.

References Cited (Backward Citations)

US5448727A Cited
US5515531A Cited
US5551027A Cited
US5689678A Cited
US5546575A Cited
US5530658A Cited
US5710938A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-03-01 2002-08-31 2003-03-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-03-01 2006-08-31 2007-03-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-03-01 2010-08-31 2011-03-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag