Abstract
The design of distributed databases involves making decisions on the fragmentation and placement of data and programs across the sites of a computer network. The first phase of the distribution design in a top-down approach is the fragmentation phase, which clusters in fragments the information accessed simultaneously by applications. Most distribution design algorithms propose a horizontal or vertical class fragmentation. However, the user has no assistance in the choice between these techniques. In this work we present a detailed methodology for the design of distributed object databases that includes: (i) an analysis phase, to indicate the most adequate fragmentation technique to be applied in each class of the database schema; (ii) a horizontal class fragmentation algorithm, and (iii) a vertical class fragmentation algorithm. Basically, the analysis phase is responsible for driving the choice between the horizontal and the vertical partitioning techniques, or even the combination of both, in order to assist distribution designers in the fragmentation phase of object databases. Experiments using our methodology have resulted in fragmentation schemas offering a high degree of parallelism together with an important reduction of irrelevant data.
Similar content being viewed by others
References
I. Ahmad, K. Karlapalem, Y. Kwok, and S. So, “Evolutionary algorithms for allocating data in distributed database systems,” International Journal of Distributed and Parallel Databases, vol. 11, no. 1, pp. 5–32, 2002.
F. Baião, M. Mattoso, J. Shavlik, and G. Zaverucha, “Applying theory revision to the design of distributed databases,” in Proceedings of the 13th International Conference on Inductive Logic Programming (ILP 2003), Lectures Notes in Artificial Intelligence, vol. 2835, Springer-Verlag, Szeged, Hungary, Sept. 2003, pp. 57–74.
F. Baião, M. Mattoso, and G. Zaverucha, “A framework for the design of distributed databases,” in Proceedings in Informatics 14, Distributed Data & Structures 4―Records of the 4th International Meeting, W. Litwin, and G. Lévy (Eds.), Carleton Scientific, 2002, pp. 29–36.
F. Baião, “A methodology and algorithms for the design of distributed databases using theory revision,” Ph.D. Thesis, Technical Report ES-565/01, COPPE/UFRJ, Dec 2001.
F. Baião and M. Mattoso, “A mixed fragmentation algorithm for distributed object oriented databases,” in Proceedings of the International Conference on Computing and Information (ICCI'98), Winnipeg, Canada, Jun. 1998, pp. 141–148. Also in Special Issue of the Journal of Computing and Information (JCI), vol. 3, no. 1, ICCI 98, March 2000, ISSN 1201-8511, pp. 141–148.
F. Baião, M. Mattoso, and G. Zaverucha, “Towards an inductive design of distributed object oriented databases,” in Proceedings of the Third IFCIS Conference on Cooperative Information Systems (CoopIS'98), IEEE CS Press, New York, USA, Ago 1998, pp. 88–197.
F. Baião, M. Mattoso, and G. Zaverucha, “Horizontal fragmentation in object DBMS: New issues and performance evaluation,” in Proceedings of the “19th IEEE International Performance, Computing and Communications Conference” (IPCCC 2000), IEEE CS Press, Phoenix, Feb. 2000, pp. 108–114.
K. Barker and S. Bhar, “A graphical approach to allocating class fragments in distributed objectbase systems,” International Journal of Distributed and Parallel Databases, vol. 10, no. 3, pp. 207–239, 2001.
L. Bellatreche, K. Karlapalem, and A. Simonet, “Algorithms and support for horizontal class partitioning in object-oriented databases,” International Journal of Distributed and Parallel Databases, vol. 8, no. 2, pp. 155–179, 2000.
L. Bellatreche, K. Karlapalem, and B. Basak, “Query-driven horizontal class partitioning in object-oriented databases,” in Proceedings of the “9th International Conference on Databases and Expert Systems,” (DEXA'98), Lecture Notes in Computer Science, vol. 1460, Vienna, Austria, 1998, pp. 692–701.
L. Bellatreche, A. Simonet, and M. Simonet, “Vertical fragmentation in distributed object database systems with complex attributes and methods,” in Proceedings of the “7th International Workshop on Database and Expert Systems Applications” (DEXA'96), IEEE Computer Society, Zurich, Switzerland, 1996, pp. 15–21.
V. Benzaken, C. Delobel, and G. Harrus, “Clustering strategies in O2: An overview,” in Building an Object Oriented Database System, F. Bancilhon, C. Delobel, and P. Kanellakis (Eds.), Morgan Kaufman Publishers Inc.: San Francisco, USA, 1992.
E. Bertino and P. Foscoli, “On modeling cost functions for object-oriented databases,” IEEE Trans. Knowledge and Data Engineering, vol. 9, no. 3, pp. 500–508, 1997.
G. Booch, J. Rumbaugh, and I. Jacobson, The unified Modeling Language User Guide, Addison Wesley Longman, Inc: USA, 1999.
M. Carcy, D. DeWitt, and J. Naughton, “The OO7 benchmark,” in Proceedings of the 1993 ACM SIGMOD, vol. 22, no. 2, Washington DC, 1993, pp. 12–21.
R. Cattel et al., The Object Data Standard ODMG 3.0, Morgan Kaufmann Publishers Inc.: San Francisco, USA, 2000.
S. Ceri and S. Navathe, “A comprehensive approach to fragmentation and allocation of data in distributed databases,” in Proceedings of the IEEE COMPCON Conference, 1983, pp. 426–431.
Y. Chen and S. Su, “Implementation and evaluation of parallel query processing algorithms and data partitioning heuristics in object oriented databases,” International Journal of Distributed and Parallel Databases, vol. 4, no. 2, pp. 107–142, 1996.
S. Cluet and C. Delobel, “A general framework for the optimization of object-oriented queries,” in Proceedings of the 1992 ACM SIGMOD, vol. 21, no. 2, San Diego, California, 1992, pp. 383–391.
D. Cornell and P.S Yu, “A vertical partitioning algorithm for relational databases,” in Proceedings of the 3rd International Conference on Data Engineering (ICDE'87), 1987.
F. Cruz, F. Baião, M. Mattoso, and G. Zaverucha, “Towards a theory revision approach for the vertical fragmentation of object oriented databases,” in Proceedings of the XVI Brazilian Symposium on Artificial Intelligence (SBIA'02), Lectures Notes in Artificial Intelligence, vol. 2507, Springer-Verlag: Recife, Brazil, Nov. 2002, pp. 216–226.
A. Eisenberg and J. Melton, “SQL 1999, formerly known as SQL 3,” in Proceedings of the 1999 ACM SIGMOD, vol. 28, no. 1, 1999, pp. 131–138.
C. Ezeife and K. Barker, “A comprehensive approach to horizontal class fragmentation in a distributed object based system,” International Journal of Distributed and Parallel Databases, vol. 3, no. 3, 1995, pp. 247–272.
C. Ezeife and K. Barker, “Distributed object based design: Vertical fragmentation of classes,” International Journal of Distributed and Parallel Databases, vol. 6, no. 4, pp. 317–350, 1998.
G. Gardarin, J. Gruser, and Z. Tang, “A cost model for clustered object-oriented databases,” in Proceedings of the 21st VLDB Conference, Switzerland, 1995, pp. 323–334.
Y. Huang and J. Chen, “Fragment allocation in distributed database design,” Journal of Information Science and Engineering, vol. 17, no. 3, pp. 491–506, 2001.
K. Karlapalem, S. Navathe, and M. Morsi, “Issues in distribution design of object-oriented databases,” in Distributed Object Management, Özsu, M. et al. (Eds.), Morgan Kaufmann Publishers Inc.: San Francisco, USA, 1994.
K. Karlapalem and Q. Li, “A framework for class partitioning in object oriented databases,” International Journal of Distributed and Parallel Databases, vol. 8, no. 3, pp. 333–366, 2000.
K. Karlapalem and N. Pun, “Query driven data allocation algorithms for distributed database system,” in Proceedings of the 8th International Conference on Database and Expert Systems Applications (DEXA 1997), 1997, pp. 347–356.
S. Khoshafian and G. Copeland, “Object identity,” in Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA'86), Portland, Oregon, pp. 406–416, 1986―also In SIGPLAN Notices, vol. 21, no. 11, 1986.
W. Kim (Ed.), Modern Database Systems, ACM Press, 1995.
N. Lavrac and S. Dzreroski, Inductive Logic Programming: Techniques and Applications, Ellis Horwood, 1994.
F. Lima and M. Mattoso, “Performance evaluation of distribution in OODBMS: A case study with O2,” in Proceedings of the IX Int'l Conf on Parallel & Distributed Computing Systems (PDCS'96), ISCA, IEEE, Dijon, France, 1996, pp. 720–726.
D. Maier et al., “Issues in distributed object assembly,” in Distributed Object Management, M. Özsu et. al (Eds.), Morgan Kaufmann Publishers Inc.: San Francisco, USA, 1994.
R. Mauro and M. Mattoso, “Issues on the implementation of object-oriented database servers,” in Proceedings of the XXIII Latin American Conference on Informatics, Valparaiso, Chile, 1997, pp. 29–38 (in portuguese)
R. Mauro et al., “GOA++: Technology, implementation and extensions on object management services,” in Proceedings of the XII Brazilian Symposium on Databases (SBBD'97), Fortaleza, Brazil, 1997 (in portuguese).
L. Meyer and M. Mattoso, “Parallel query processing in a shared-nothing object database server,” in Proceedings of the 3rd International Meeting on Vector and Parallel Processing (VECPAR'98), Porto, Portugal, 1998, pp. 1007–1020.
W.T. McCormick, P.J. Schweitzer, and T.W. White, “Problem decomposition and data reorganization by a clustering technique,” Operational Research, vol. 20, no. 5, pp. 993–1009, 1972.
T. Mitchell, Machine Learning, McGraw-Hill Companies Inc, 1997.
H. Molina and M. Hsu, “Distributed databases,” in Modern Database Systems, Kim, W. (Ed.), ACM Press, 1995, pp. 484–485.
S. Navathe, S. Ceri, G. Wiederhold, and J. Dou, “Vertical partitioning algorithms for database design,” ACM Trans. Database Systems, vol. 9, no. 4, 1984.
S. Navathe and M. Ra, “Vertical partitioning for database design: A graphical algorithm,” in Proceedings of the 1989 ACM SIGMOD, Portland, Oregon, 1989, pp. 440–450.
S. Navathe, K. Karlapalem, and M. Ra, “A mixed fragmentation methodology for initial distributed database design,” Journal of Computer and Software Engineering, vol. 3, no. 4, 1995.
M. Özsu and P. Valduriez, Principles of Distributed Database Systems, 2nd edn., Prentice-Hall: New Jersey, 1999.
O2 Technology, A technical overview of the O2 system, Technical Report 9, O2 Technology, France, 1994.
B.L. Richards and R.J. Mooney, “Refinement of first-order hom-clause domain theories,” Machine Learning, vol. 19, no. 2, pp. 95–131, 1995.
M. Savonnet, M. Terrasse, and K. Yétongnon, “Fragtique: A methodology for distributing object oriented databases,” in Proceedings of the International Conference on Computing and Information (ICCI'98), Winnipeg, Canada, 1998, pp. 149–156.
F. Tavares, A. Victor, and M. Mattoso, “Parallel processing evaluation of path expressions,” in Proceedings of the XV Brazilian Symposium on Databases, SBC, João Pessoa, Brazil, 2000.
S. Wrobel, “First order theory refinement,” in Advances in Inductive Logic Programming, L. De Raedt (Ed.), IOS Press, 1996.
S. Su, Y. Huang, and N. Akaboshi, “Graph-based parallel query processing and optimization strategies for object-oriented databases,” International Journal of Distributed and Parallel Databases, vol. 6, pp. 247–285, 1998.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Baião, F., Mattoso, M. & Zaverucha, G. A Distribution Design Methodology for Object DBMS. Distributed and Parallel Databases 16, 45–90 (2004). https://doi.org/10.1023/B:DAPD.0000026268.04288.b9
Issue Date:
DOI: https://doi.org/10.1023/B:DAPD.0000026268.04288.b9