Omega: A Parallel Object-based System (Synopsis)
Shahram Ghandeharizadeh, Vera Choi, Clifford Ker, Kai-Ming Lin · International Conference on Parallel and Distributed Information Systems · 1993
This paper provides an overview of the Omega database machine and the tecniques employed in its implementation. Omega is a parallel object-based system that supports a functional data model and implements the following constructs: unique object identifiers, complex objects, a type hierarchy, inheritance, and user-defined methods. Omega employs several key technical ideas that enable the architecture to scale to a large number of processors. First, objects of an application are horizontally declustered across multiple disk drives, enabling the system to scan objects in parallel. Second, the physical design of the system is very flexible as it represents an object as a collection of sub-objects where each sub-object represents the membership of that object in a type. An object is independent of its sub-objects and the objects and the objects it contains (in the case of a complex object). Given an application, the database administrator may analyze the workload of the application and control the placement of its objects, different sub-objects, and the subcomponents of each complex object across the processors in order to obtain the best performance for the workload of that application. Third, Omega employs a data flow processing technique for those queries that either traverse the subcomponents of a complex object or reference an inherited function.In addition to describing Omega, we present preliminary performance numbers from the system to demonstrate the feasibility of a parallel object-based system.