Function Materialization in Object Bases: Design, Realization, and Evaluation

0
94

Authors: Alfons Kemper, Christoph Kilger, Guido Moerkotte

Tags: 1994, conceptual modeling

View materialization is a well-known optimization technique of relational database systems. In this work, we present a similar, yet more powerful, optimization concept for objectoriented data models: function materialization. Exploiting the object-oriented paradigm –namely, classiJcation, object identify, and encapsulation-facilitates a rather easy incorporation of function materialization into (existing) object-oriented systems. Only those types (classes) whose instances are involved in some materialization are appropriately modified and recompiled, thus leaving the remainder of the object system invariant. Furthermore, the exploitation of encapsulation (information hiding) and object identity provides for additional performance-tuning measures that drastically decrease the invalidation and rematerialization overhead incurred by updates in the object base. First, it allows us to cleanly separate the object instances that are irrelevant for the materialized functions from those that are involved in the materialization of some function result, and thus to penalize only those involved objects upon update. Second, the principle of information hiding facilitates fine-grained control over the invalidation of precomputed results. Based on specifications given by the data type implementor, the system can exploit operational semantics to better distinguish between update operations that invalidate a materialized result and those that require no rematerialization. The paper concludes with a quantitative analysis of function materialization based on two sample performance benchmarks obtained from our experimental object base system GOM.

Read the full paper here: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=298175