Implement the hash-join algorithm for a DBMS. Use C, C++, or Java to write the program. However, the program should include sufficient comments to make it readable.

Need to:

(1) a BRIEF report/description about the program design and implementation (e.g., high-level program diagram and data/file structures) and program usage;

(2) the program source code;

(3) proof of compilation (e.g., the screen snapshot of a successful compilation);

(4) sample execution outputs.

Please assemble all the above required contents in a single Word or PDF file.

The program specification is given as follows. Let R1(a1, a2, a3) and R2(b1, b2, b3, b4) be two relations with all integer attributes. Tuples in these two relations are sequentially stored in two data files, respectively.

The other details has been attached in the order