- Horizontal partitioning (declustering)
- Spreading the tuples of a single relation across all disk drives in the system so that every relation is stored in fragments and every scan is inherently parallel. Gamma applies it to all relations without exception, using round robin, hashing, or one of two range schemes.
- Split table
- A small table at the output of an operator process that maps a value derived from each result tuple, a hash value, a range bound, or nothing at all for round robin, onto the processor and port of a destination process. It is the only place in Gamma where parallelism is expressed, which is why operator code can be written as if it were sequential.
- Horizontal partitioning attribute (HPA)
- The attribute on which a relation was declustered. When a query's qualified attribute is the HPA and range partitioning was used, the optimizer can route the query to just the relevant sites; when it is not the HPA, the query must be sent to every site.
- Multiprocessor index
- An index built when a relation is range partitioned, in which the disks and their processors are themselves the nodes of a primary clustered index and the root page is kept with the schema on the host machine. The optimizer consults that root page to direct selections on the partitioning key to the right processors.
- Building phase and probing phase
- The two halves of Gamma's partitioned hash join: building consumes the first source relation into in-memory hash tables and bit vector filters at each site, probing then streams the second relation against those tables. They are separated by a scheduler barrier and are treated as separate operators for control purposes.
- Bit vector filter
- An approximate set built by hashing the join attribute values of the outer relation during the building phase, then collected by the scheduler and installed in the split tables of the processes producing the inner relation. Inner tuples that miss the filter are discarded before they reach the network.
- Local join and remote join
- The paper's terms for running a join entirely on processors that have disks attached versus entirely on diskless processors. Remote joins measured slightly faster, establishing that a complex operator can be offloaded away from the storage nodes.
- NOSE and WiSS
- NOSE is the purpose-built operating system underneath Gamma, giving lightweight processes with shared memory, non-preemptive scheduling to avoid convoys, and a reliable timer-based message protocol. WiSS, the Wisconsin Storage System, supplies file, record, index and scan services, with page formats that embed NOSE message headers so pages can be shipped without copying.