Efficient Handling of Tuples with Embedded Large Objects

Stefan Dieker and Ralf Hartmut Güting
 Praktische Informatik IV, FernUniversität Hagen
D-58084 Hagen
{stefan.dieker,gueting}@fernuni-hagen.de
 
Abstract: Modern database systems and storage manager toolkits usually provide a large object abstraction. Very often large objects are not used as standalone entities, but rather embedded within an aggregate of different types, i.e. a tuple. Depending on the large object's size and access probability, query performance depends on the representation of the large object: either inlined within the aggregate or swapped out to a separate object. This paper describes a sound and general large object interface extension which automatically switches the representation of large objects according to their actual size. The optimum threshold size for switching the large object's representation is determined, based upon a linear cost model. Furthermore, a SHORE-based implementation and its performance are presented. It turns out that switching the representation of large objects yields great performance improvements for objects whose size is varying from quite small to large.

 Keywords: Extensible database systems, data type programming interface, large objects, tuple representation, Shore

 Published: FernUniversität Hagen, Informatik-Report 236, August 1998. To appear in Data and Knowledge Engineering.