DISTRIBUTED OBJECT-BASED DESIGN - VERTICAL FRAGMENTATION OF CLASSES

Citation
Ci. Ezeife et K. Barker, DISTRIBUTED OBJECT-BASED DESIGN - VERTICAL FRAGMENTATION OF CLASSES, DISTRIBUTED AND PARALLEL DATABASES, 6(4), 1998, pp. 317-350
Citations number
18
Categorie Soggetti
Computer Science Theory & Methods","Computer Science Information Systems","Computer Science Theory & Methods","Computer Science Information Systems
ISSN journal
09268782
Volume
6
Issue
4
Year of publication
1998
Pages
317 - 350
Database
ISI
SICI code
0926-8782(1998)6:4<317:DOD-VF>2.0.ZU;2-L
Abstract
Processing costs in distributed environments is most often dominated b y the network communications required for interprocess communication. It is well known from distributed relational database design research that careful placement of data ''near'' the users or processors where it is used is mandatory or system performance will suffer greatly. Dat a placement in relational database systems is comparatively simple bec ause the data is Bat, structured, and passive. Objects are characteriz ed by an inheritance hierarchy (other hierarchies could also be consid ered including, class composition and execution), unstructured (possib ly dynamic data), and contain a behavioral component that defines how the ''data'' is accessed by encapsulating it within the object per se. Algorithms currently exist for fragmenting relations, but the fragmen tation and allocation of objects is still a relatively untouched field of study. Similar to relations, objects can be fragmented both horizo ntally and vertically. Vertical fragmentation must minimize applicatio n execution time by splitting a class so that all class attributes and methods frequently accessed together are grouped together into a sing le fragment. This paper adopts a classification of classes into four m ain models, and contributes by proposing algorithms for vertically fra gmenting the four realizable class models consisting of simple or comp lex attributes combined with simple or complex methods. Vertical fragm entation entails splitting classes into a set of ''smaller'' equivalen t classes (actually fragments of the class' extent) that can later be placed precisely where they are used. Our approach consists of groupin g into a fragment, all attributes and methods of the class frequently accessed together by applications running on either this class: its su bclasses, its containing classes or its complex method classes.