Sort-merge-join on a large architected register file
AssigneeInternational Business Machines Corporation
InventorsJeffrey H. Derby, Robert Kevin Montoye, Dheeraj Sreedhar
Life of this patent
Estimating the term…
Abstract
Methods and arrangements for joining data sets. There are accepted: a first data set which forms a table in a relational database, and a second data set which forms a table in a relational database, each of the first and second data sets comprising a key value. Each of the first and second data sets is hashed based on the key value, and are thereupon sorted based on the key value. The sorted first and second data sets are joined with one another based on the key value. Other variants and embodiments are broadly contemplated herein.
Claims20
A method of joining data sets, said method comprising:
- utilizing at least one processor to execute computer code configured to perform the steps of:
- accepting a first data set which forms a table in a relational database;
- accepting a second data set which forms a table in a relational database;
- each of the first and second data sets comprising a key value;
- hashing each of the first and second data sets based on the key value;
- thereupon sorting each of the first and second data sets based on the key value;
- and
- joining the sorted first and second data sets with one another based on the key value.
An apparatus comprising:
- at least one processor;
- and
- a computer readable storage medium having computer readable program code embodied therewith and executable by the at least one processor, the computer readable program code comprising:
- a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
- computer readable program code configured to accept a first data set which forms a table in a relational database;
- computer readable program code configured to accept a second data set which forms a table in a relational database;
- each of the first and second data sets comprising a key value;
- computer readable program code configured to hash each of the first and second data sets based on the key value;
- computer readable program code configured to thereupon sort each of the first and second data sets based on the key value;
- and
- computer readable program code configured to join the sorted first and second data sets with one another based on the key value.
A computer program product comprising:
- a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
- computer readable program code configured to accept a first data set which forms a table in a relational database;
- computer readable program code configured to accept second data set which forms a table in a relational database;
- each of the first and second data sets comprising a key value;
- computer readable program code configured to hash each of the first and second data sets based on the key value;
- computer readable program code configured to thereupon sort each of the first and second data sets based on the key value;
- and
- computer readable program code configured to join the sorted first and second data sets with one another based on the key value.
A method comprising:
- accepting a first data set which forms a table in a relational database;
- accepting a second data set which forms a table in a relational database;
- each of the first and second data sets comprising a key value;
- hashing each of the first and second data sets based on the key value;
- said hashing comprising:
- performing a hash across SIMD lanes of each of the first and second data sets based on the key value;
- and
- partitioning the data sets into disjoint sets;
- thereupon sorting each of the first and second data sets based on the key value;
- and
- joining the sorted first and second data sets with one another based on the key value.
Dependencies are inferred from the claim text.