#include <JoinMethods.h>
Static Public Member Functions | |
| static void | tupleNestedLoop (string filename1, int numCols1, int colSizes1[], int joinCol1, string filename2, int numCols2, int colSizes2[], int joinCol2, string filenameOut, int numPagesOut, BufferManager *bufMgr) |
| Joins two heap files using tuple nested loop algorithm, and places results in a new heapfile. | |
| static void | blockNestedLoop (string filename1, int numCols1, int colSizes1[], int joinCol1, string filename2, int numCols2, int colSizes2[], int joinCol2, string filenameOut, int numPagesOut, BufferManager *bufMgr) |
| Joins two heap files using block nested loop algorithm, and places results in a new heapfile. | |
| static void JoinMethods::blockNestedLoop | ( | string | filename1, | |
| int | numCols1, | |||
| int | colSizes1[], | |||
| int | joinCol1, | |||
| string | filename2, | |||
| int | numCols2, | |||
| int | colSizes2[], | |||
| int | joinCol2, | |||
| string | filenameOut, | |||
| int | numPagesOut, | |||
| BufferManager * | bufMgr | |||
| ) | [static] |
Joins two heap files using block nested loop algorithm, and places results in a new heapfile.
Each new record produced for the new heapfile is a concatenation of the two source records.
| filename1 | name of heap file containing relation 1. | |
| numCols1 | number of columns in relation 1. | |
| colSizes1 | array containing sizes of columns in relation 1. | |
| joinCol1 | join column of relation 1. Legitimate values of joinCol1 are in the range from 0 to (numCols1-1), inclusive. | |
| filename2 | name of heap file containing relation 2. | |
| numCols2 | number of columns in relation 2. | |
| colSizes2 | array containing sizes of columns in relation 2. | |
| joinCol2 | join column of relation 2. Legitimate values of joinCol2 are in the range from 0 to (numCols2-1), inclusive. | |
| filenameOut | name of output heap file to be created. | |
| numPagesOut | number of pages to be contained in new output heap file. | |
| bufMgr | reference to a buffer manager to contain pages in memory while working. |
| IOException | passed through from underlying file system. | |
| JoinLengthsDifferentException | if the lengths of the two join fields are not the same. |
| static void JoinMethods::tupleNestedLoop | ( | string | filename1, | |
| int | numCols1, | |||
| int | colSizes1[], | |||
| int | joinCol1, | |||
| string | filename2, | |||
| int | numCols2, | |||
| int | colSizes2[], | |||
| int | joinCol2, | |||
| string | filenameOut, | |||
| int | numPagesOut, | |||
| BufferManager * | bufMgr | |||
| ) | [static] |
Joins two heap files using tuple nested loop algorithm, and places results in a new heapfile.
Each new record produced for the new heapfile is a concatenation of the two source records.
| filename1 | name of heap file containing relation 1. | |
| numCols1 | number of columns in relation 1. | |
| colSizes1 | array containing sizes of columns in relation 1. | |
| joinCol1 | join column of relation 1. Legitimate values of joinCol1 are in the range from 0 to (numCols1-1), inclusive. | |
| filename2 | name of heap file containing relation 2. | |
| numCols2 | number of columns in relation 2. | |
| colSizes2 | array containing sizes of columns in relation 2. | |
| joinCol2 | join column of relation 2. Legitimate values of joinCol2 are in the range from 0 to (numCols2-1), inclusive. | |
| filenameOut | name of output heap file to be created. | |
| numPagesOut | number of pages to be contained in new output heap file. | |
| bufMgr | pointer to a buffer manager to contain pages in memory while working. |
| JoinLengthsDifferentException | if the lengths of the two join fields are not the same. |
1.4.7