Abstract
Processing costs in distributed environments is most often dominated by 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. Data placement in relational database systems is comparatively simple because the data is flat, structured, and passive. Objects are characterized by an inheritance hierarchy (other hierarchies could also be considered including, class composition and execution), unstructured (possibly 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 fragmentation and allocation of objects is still a relatively untouched field of study.
Similar to relations, objects can be fragmented both horizontally and vertically. Vertical fragmentation must minimize application execution time by splitting a class so that all class attributes and methods frequently accessed together are grouped together into a single fragment. This paper adopts a classification of classes into four main models, and contributes by proposing algorithms for vertically fragmenting the four realizable class models consisting of simple or complex attributes combined with simple or complex methods. Vertical fragmentation entails splitting classes into a set of “smaller” equivalent classes (actually fragments of the class' extent) that can later be placed precisely where they are used. Our approach consists of grouping into a fragment, all attributes and methods of the class frequently accessed together by applications running on either this class, its subclasses, its containing classes or its complex method classes.
Similar content being viewed by others
References
S. Chakravarthy, J. Muthuraj, R. Varadarajan, and S.B. Navathe, “An objective function for vertically partitioning relations in distributed databases and its analysis,” Distributed and Parallel Databases, vol. 2, no. 1, pp. 183-207, 1993.
D. Cornell and P.S. Yu, “A vertical partitioning algorithm for relational databases,” in Proceedings of the Third International Conference on Data Engineering, IEEE, 1987.
C.I. Ezeife and Ken Barker, “A comprehensive approach to horizontal class fragmentation in a distributed object based system,” International Journal of Distributed and Parallel Databases, vol. 1, 1995.
C.I. Ezeife and Ken Barker, “Vertical class fragmentation for advanced object models in a distributed objectbased system,” in Proceedings of the 7th International Conference on Computing and Information, Trent, Canada, IEEE Publication, July 1995, vol. 1, pp. 613-632.
J.A. Hoffer and D.G. Severance, “The use of cluster analysis in physical database design,” in Proceedings of the 1st International Conference on Very Large Databases, Morgan Kaufmann Publishers, Inc., vol. 1, 1975.
M.F. Hornick and S.B. Zdonik, “A shared, segmented memory system for an object-oriented database,” ACM Transactions on Office Information Systems, vol. 5, no. 1, 1987.
Itasca Systems Inc., “Itasca distributed object database management system,” Technical Summary Release 2.0, 1991.
K. Karlapalem, S.B. Navathe, and M.M.A. Morsi, “Issues in distribution design of object-oriented databases,” in Distributed Object Management, M. Tamer Ozsu, U. Dayal, and P. Valduriez (Eds.), Morgan Kaufmann Publishers, 1994, pp. 148-164.
M.L. Kersten, S. Plomp, and C.A. Van Den Berg, “Object storage management in Goblin,” in Distributed Object Management, M. Tamer Ozsu, U. Dayal, and P. Valduriez (Eds.), Morgan Kaufmann Publishers, 1994.
B. Liskov, M. Day, and L. Shrira, “Distributed object management in Thor,” in Distributed Object Management, M. Tamer Ozsu, U. Dayal, and P. Valduriez (Eds.), Morgan Kaufmann Publishers, 1994.
W.T. McCormick, P.J. Schweitzer, and T.W. White, “Problem decomposition and data reorganization by a clustering technique,” Operations Research, vol. 20, no. 5, 1972.
S.B. Navathe, S. Ceri, G. Wiederhold, and J. Dou, “Vertical partitioning algorithms for database design,” ACM Transactions on Database Systems, vol. 9, no. 4, 1984.
S.B. Navathe and M. Ra, “Vertical partitioning for database design: A graphical algorithm,” in Proceedings of the ACM SIGMOD, ACM, 1989.
G. Oliver and A. Laurent, “Object grouping in EOS,” in Distributed Object Management, M. Tamer Ozsu, U. Dayal, and P. Valduriez (Eds.), Morgan Kaufmann Publishers, 1994.
M.T. Ozsu and P. Valduriez, Principles of Distributed Database Systems, Prentice Hall, 1991.
G. Pernul, K. Karalapalem, and S.B. Navathe, “Relational database organization based on views and fragments,” in Proceedings of the Second Internationa Conference on Data and Expert System Applications, Berlin, 1991.
G. Wiederhold, Database Design, McGraw-Hill: New York, 1982.
S.B. Yao, S.B. Navathe, and J.L. Weldon, “An integrated approach to database design,” in Data Base Design Techniques I: Requirements and Logical Structures, pp. 1-30, Springer-Verlag, New York, Lecture Notes in Computer Science 132, 1982.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Ezeife, C., Barker, K. Distributed Object Based Design: Vertical Fragmentation of Classes. Distributed and Parallel Databases 6, 317–350 (1998). https://doi.org/10.1023/A:1008666830313
Issue Date:
DOI: https://doi.org/10.1023/A:1008666830313