A VLSI systolic array processor chip for computing joins in a relational database

Abstract In this paper, we describe the design and implementation of a VLSI chip for computing joins in a relational database that uses attribute-based storage schema. The chip design is based on a systolic architecture that fully utilizes the principles of pipelining and parallelism in order to obtain high speed and throughput. The architecture implements an improved version of the algorithm previously proposed by Kung and Lehman 1 . A partitioning technique proposed in Leiserson and Saxe 2 is incorporated in the algorithm in order to derive maximum utilization of the processors. Although the time complexity of the algorithm is O ( n 2 / k ), where n is the number of attribute values and k is the number of processors, each step is a hardware clock cycle of 25 ns. Thus, a single chip can yield a throughput rate of 2.56 giga results per second operating at a rate of 40 MHz. Higher throughputs can be obtained by cascading multiple chips in a serial fashion.

[1]  Edward Babb,et al.  Implementing a relational database by means of specialzed hardware , 1979, TODS.

[2]  H. T. Kung,et al.  Systolic (VLSI) arrays for relational database operations , 1980, SIGMOD '80.

[3]  H. T. Kung Why systolic architectures? , 1982, Computer.

[4]  Toshihide Ibaraki,et al.  On the optimal nesting order for computing N-relational joins , 1984, TODS.

[5]  Haruo Yokota,et al.  The Design and Implementation of Relational Database Machine Delta , 1985, IWDM.

[6]  T. H. Merrett Practical hardware for linear execution of relational database operations , 1983, SGMD.

[7]  Benjamin W. Wah,et al.  DIALOG: a distributed processor organization for database machine , 1980, AFIPS '80.

[8]  Siang Wun Song A highly concurrent tree machine for database applications , 1989 .

[9]  Giovanni Maria Sacco Fragmentation: a technique for efficient query processing , 1986, TODS.

[10]  Leonard D. Shapiro,et al.  Join processing in database systems with large main memories , 1986, TODS.

[11]  Charles E. Leiserson,et al.  Optimizing synchronous systems , 1981, 22nd Annual Symposium on Foundations of Computer Science (sfcs 1981).

[12]  Michele Missikoff,et al.  The Architectur of a Relational Database Computer Known as DBMAC , 1983, Advanced Database Machine Architecture.

[13]  Kenneth C. Smith,et al.  RAP: an associative processor for data base management , 1975, AFIPS '75.

[14]  Raymond A. Lorie,et al.  SEQUEL-XRM, A Relational System , 1975, ACM Pacific.

[15]  M. Bonuccelli,et al.  VLSI algorithms and architecture for relational operations , 1989 .

[16]  D. J. De Witt,et al.  Direct—A Multiprocessor Organization for Supporting Relational Database Management Systems , 1979 .

[17]  Ramez Elmasri,et al.  Fundamentals of Database Systems , 1989 .

[18]  David K. Hsiao,et al.  Design and Analysis of a Relational Join Operation for VLSI , 1981, VLDB.

[19]  Kenneth C. Smith,et al.  RAP.2—An Associative Processor for Databases and Its Applications , 1979, IEEE Transactions on Computers.

[20]  David J. DeWitt,et al.  Parallel algorithms for the execution of relational database operations , 1983, TODS.