This Article 
 Bibliographic References 
 Add to: 
Association Algebra: A Mathematical Foundation for Object-Oriented Databases
October 1993 (vol. 5 no. 5)
pp. 775-798

The application of the object-oriented (O-O) paradigm in the database management field has gained much attention in recent years. Several experimental and commercial O-O database management systems have become available. However, the existing O-O DBMSs still lack a solid mathematical foundation for the manipulation of O-O databases, the optimization of queries, and the design and selection of storage structures for supporting O-O database manipulations. This paper presents an association algebra (A-algebra) to serve as a mathematical foundation for processing O-O databases, which is analogous to the relational algebra used for processing relational databases. In this algebra, objects and their associations in an O-O database are uniformly represented by association patterns which are manipulated by a number of operators to produce other association patterns. Different from the relational algebra, in which set operations operate on relations with union-compatible structures, the A-algebra operators can operate on association patterns of homogeneous and heterogeneous structures. Different from the traditional record-based relational processing, the A-algebra allows very complex patterns of object associations to be directly manipulated. The pattern-based query formulation and the A-algebra operators are described. Some mathematical properties of the algebraic operators are presented together with their application in query decomposition and optimization. The completeness of the A-algebra is also defined and proven. The A-algebra has been used as the basis for the design and implementation of an object-oriented query language, OQL, which is the query language used in a prototype Knowledge Base Management System OSAM*.KBMS.

[1] A.M. Alashqur, "A query model and query and knowledge definition languages for object-oriented databases," Ph.D. dissertation, University of Florida, 1989.
[2] A. M. Alashqur,et al."OQL: A query language for manipulating object-oriented databases," inProc. 15th Int. Conf. Very Large Data Bases, Aug. 1989.
[3] A.M. Alashqur, "A rule-based language for deductive object-oriented databases," inProc. 6th Int. Conf. Data Engineering, Feb. 1990.
[4] F. Bancilhon, T. Briggs, S. Khoshafian, and P. Valduriez, "FAD: a powerful and simple database language," inProc. 13th VLDB Conf. (Brighton, UK), 1987, pp. 97-105.
[5] J. Banerjee, "Queries in object-oriented databases" inProc. 4th Int. Conf. Data Eng., Feb. 1988, pp. 31-38.
[6] D. S. Batory and A. P. Buchmann, "Molecular objects, abstract data types, and data models: A framework," inProc. 10th Int. Conf. Very Large Databases, 1984, pp. 172-184.
[7] D. S. Batory and W. Kim, "Modeling concepts for VLSI CAD objects,"ACM Trans. Database Syst., vol. 10, no. 3, Sept. 1985.
[8] M. Careyet al., "A data model and query language for EXODUS," inProc. ACM SIGMOD Int. Conf. Management of Data, pp. 413-423, June 1988.
[9] E. F. Codd, "A relational model of data for large shared data banks,"Commun. ACM, pp. 377-387, June 1970.
[10] E. Codd, "Relational completeness of database sublanguages," inData Base Systems, R. Rustin, Ed. Englewood Cliffs: NJ, Prentice-Hall, 1971, pp. 65-98.
[11] L. S. Colby, "A recursive algebra and query optimization for nested relations," inProc. ACM-SIGMOD Conf., 1989, pp. 273-283.
[12] O. J. Dahl, B. Myhrhaug, and K. Nygaard, "SIMULA 67: common base language,"NCC Pub. S22, Norwegian Computing Center, Oslo, Norway, 1967.
[13] P. Elmore, G.M. Shaw, and S.B. Zdonik, "The ENCORE object-oriented data model,"Tech. Rep., Brown University, Nov. 1989.
[14] D.H. Fishmanet al., "Iris: An object-oriented database management system,"ACM Trans. Office Information Syst., vol. 5, pp. 49-69, 1987.
[15] A. Goldberg, "Introducing the Smalltalk-80 system,"Byte, pp. 14-26, Aug. 1981.
[16] M. Hammer and D. J. McLead, "Database description with SDM: a semantic database model,"ACM Trans. Database Syst., pp. 351-386, Sept. 1981.
[17] R. Hull and R. King, "Semantics database modeling: Survey, applications, and research issues,"Comput. Surveys, vol. 19, no. 3, pp. 201-260, Sept. 1987.
[18] R. King, "Sembase: A semantic DBMS," inProc. First Int. Workshop on Expert Database Systems, Oct. 1984, pp. 151-171.
[19] W. Kimet al., "Composite object support in an object-oriented database system," inProc. ACM Conf. OOPSLA, pp. 118-125, Oct. 1987.
[20] H. Lamet al., "Prototype implementation of an object-oriented knowledge base management system," inProc. PROCIEM '89, Nov. 1989.
[21] H. Lam, "GTOOLS: An active graphical user interface toolset for an object-oriented KBMS,"Int. J. Computer Science and Engineering, 1992.
[22] C. Lécluse, P. Richard, and F. Velez, "O2, an object-oriented data model," inProc. 1988 ACM SIGMOD Int. Conf. Management of Data, (Chicago, Illinois, May 1988), pp. 424-433, 1988.
[23] R. MacGregor, "ARIEL--A semantic front-end to relational DBMS's," inProc. VLDB 85, Apr. 1988.
[24] D. Maieret al., "Development of an object-oriented DBMS," inProc. ACM OOPSLA'86, pp. 472-482, 1986.
[25] F. Manola and U. Dayal, "PDM: An Object-Oriented Data Model,"Proc. Int'l Workshop Object Oriented Database Systems, IEEE CS Press, Los Alamitos, Calif., Order No. 734, 1986, pp. 18-25.
[26] L. Rowe and M. Stonebraker, "The POSTGRES data model," inProc. 1987 VLDB Conf., Brighton, England, Sept. 1987.
[27] Programming in OPAL--A Manual. Beaverton, OR: Servio Logic Development Corporation, 1986.
[28] G.M. Shaw and S. B. Zdonic, "A query algebra for object-oriented databases,"IEEE Trans. Data Eng., vol. 12, pp. 154-162, Feb. 1990.
[29] D. Shipman, "The functional model and the data language daplex,"ACM Trans. Database Syst., vol. 6, no. 1, Mar. 1981.
[30] S.Y.W. Su, "Modeling integrated manufacturing data with SAM*,"IEEE Computer, pp. 32-49, Jan. 1986.
[31] S.Y.W. Suet al., "An object-oriented computing environment for productivity improvement in automated design and manufacturing: Project summary, " inPROCIEM '88, Nov. 1988.
[32] S.Y.W. Su, V. Krishnamurthy, and H. Lam, "An object-oriented semantic association model (OSAM*),"AI in Industrial Engineering and Manufacturing: Theoretical Issues and Applications, S. Kumara, A.L. Soyster, and R.L. Kashyap, Eds. American Institute of Industrial Engineering, 1989.
[33] S. Tsur and C. Zaniolo, "An implementation of GEM-Supporting a semantic data model on a relational back end," inProc. 1984 ACM-SIGMOD Int. Conf. Management of Data, Boston, MA, June 1984.
[34] D. Woelk, W. Kim, and W. Luther, "An Object-Oriented Approach to Multimedia Databases,"Proc. ACM, ACM, New York, May 1986, pp. 311-325.
[35] C. Zaniolo, "The database language GEM," inProc. 1983 ACMSIGMOD Int. Conf. Management of Data, San Jose, CA, May 1983.
[36] R. Yassen, S.Y.W. Su, and H. Lam, "An extensible kernel object management system," inProc. OOPSLA 1991, Oct. 1991.
[37] C. Zaniolo, "The representation and deductive retrieval of complex objects," inProc. VLDB 1985, pp. 485-469.
[38] C. Zanioloet al., "Object oriented database systems and knowledge systems," inProc. 1st Int. Workshop on Expert Database Syst., Oct. 1984.
[39] A. Skarra, S. B. Zdonik, and S. P. Reiss, "An object server for an object oriented database system," in [55], pp. 196-204.
[40] S.B. Zdonik, "The implementation of a shared, clustered memory system for an O-O database system,"ACM Trans. Office Information Syst., Apr. 1987.

Index Terms:
association algebra; object-oriented databases; A-algebra; mathematical properties; query decomposition; completeness; object-oriented query language; OQL; Knowledge Base Management System; OSAM*.KBMS; database theory; object-oriented databases; query languages; query processing
S.Y.W. Su, M. Guo, H. Lam, "Association Algebra: A Mathematical Foundation for Object-Oriented Databases," IEEE Transactions on Knowledge and Data Engineering, vol. 5, no. 5, pp. 775-798, Oct. 1993, doi:10.1109/69.243509
Usage of this product signifies your acceptance of the Terms of Use.