In implementing parallelism in their database software, database vendors use one of three software architectures, commonly referred to as:
The sharing refers to the sharing of disk and memory by multiple processors.
Implementing each of these software architectures requires an appropriate underlying parallel hardware architecture. Some software architectures are a better match than others for a given hardware architecture. For example, a shared everything software architecture is a natural match for SMP hardware, because all processors in an SMP system share the same memory and disk. Other combinations are not so good. Implementing a shared everything software architecture on an MPP platform, for example, is not a good choice, because MPP hardware is based on a distributed memory architecture. The software implementation of a shared memory abstraction on top of the distributed memory of the individual nodes in an MPP system would be difficult, and performance would be poor.
The three figures in this section, Figure 2.6 through Figure 2.8, highlight the differences among the three database software architectures with respect to the sharing of memory and disks. They do not imply any particular underlying hardware architecture. It is possible to implement more than one software architecture on a given type of hardware architecture. For example, on IBM RS/6000 SP, which is an MPP system, Oracle ...