Evan P. Harris

Learn More
The join operation is one of the most frequently used and expensive query processing operations in relational database systems. One method of joining two relations is to use a hash-based join algorithm. Hash-based join algorithms typically have two phases, a partitioning phase and a partition joining phase. We describe how an optimal multi-attribute hash(More)
The sorting or partitioning of relations is very common in relational database systems. Implementations of the join operation include the sort–merge join algorithm, which sorts both relations, and the hash join algorithm, which usually partitions both relations. We describe how clustering records using an optimal multi-attribute hash (MAH) "le, taking the(More)
We apply a more realistic cost model than has often been used in the past to the problems of: (1) implementing join algorithms, (2) implementing relational operations which make use of multi-attribute hash les, and (3) creating better multi-attribute hash le organisations using knowledge of the queries which will be asked. This results in a substantial(More)
A new scheme for physically accessing tuples by multiple transactions is described for database systems using a shared memory buuer cache. Using this scheme, a transaction must rst obtain logical permission to access a tuple, for example, by taking a lock on the tuple. Once logical permission has been granted, a page level latch is taken for the initial(More)