Skip to main content
Log in

The CCUBE Constraint Object-Oriented Database System

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

Constraints provide a flexible and uniform way to represent diverse data capturing spatio-temporal behavior, complex modeling requirements, partial and incomplete information etc, and have been used in a wide variety of application domains. Constraint databases have recently emerged to deeply integrate data captured by constraints in databases. This paper reports on the development of the first constraint object-oriented database system, CCUBE, and describes its specification, design and implementation. The CCUBE system is designed to be used for the implementation and optimization of high-level constraint object-oriented query languages as well as for directly building software systems requiring extensible use of constraint database features. The CCUBE data manipulation language, Constraint Comprehension Calculus, is an integration of a constraint calculus for extensible constraint domains within monoid comprehensions, which serve as an optimization-level language for object-oriented queries. The data model for the constraint calculus is based on constraint spatio-temporal (CST) objects that may hold spatial, temporal or constraint data, conceptually represented by constraints. New CST objects are constructed, manipulated and queried by means of the constraint calculus. The model for the monoid comprehensions, in turn, is based on the notion of monoids, which is a generalization of collection and aggregation types. The focal point of our work is achieving the right balance between the expressiveness, complexity and representation usefulness, without which the practical use of the system would not be possible. To that end, CCUBE constraint calculus guarantees polynomial time data complexity, and, furthermore, is tightly integrated with the monoid comprehensions to allow deeply interleaved global optimization.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. F. Afrati, S. Cosmadakis, S. Grumbach & G. Kuper. (1994). Linear versus polynomial constraints in database query languages. In A. Borning, editor, Proc. 2nd International Workshop on Principles and Practice of Constraint Programming, volume 874 of Lecture Notes in Computer Science, pages 181–192, Rosario, WA. Springer Verlag.

    Google Scholar 

  2. T. Aschenbrenner, A. Brodsky & Y. Kornatzky. (1995). Constraint database approach to spatio-temporal data fusion and sensor management. In Proc. ILPS95 Workshop on Constraints, Databases and Logic Programming, Portland, OR.

  3. T. Atwood, D. Barry, J. Dubl, J. Eastman, G Ferran, D. Jordan, M. Loomis & D. Wade. (1996). The Object Database Standard: ODMG-93. Morgan Kaufmann.

  4. M. Baudinet, M. Niezette & P. Wolper. (1991). On the representation of infinite temporal data and queries. In Proc. ACM SIGACT-SIGART-SIGMOD Symp. on Principles of Database Systems.

  5. M. Benjamin, T. Viana, K. Corbett & A. Silva. (1993). Satisfying multiple rated-constraints in a knowledge based decision aid. In Proc. IEEE Conf. on Artificial Intelligence Applications, Orlando, FL.

  6. V. Breazu-Tannen, P. Beneman & S. Naqvi. (1991). Structural recursion as a query language. In Proc. Third International Workshop on Database Programming Languages.

  7. V. Breazu-Tannen, P. Buneman & L. Wong. (1992). Naturally embedded query languages. In Proc. 4-th International Conference on Database Theory.

  8. V. Breazu-Tannen & R. Subrahmanyan. (1991). Logical and computational aspects of programming with sets/bags/lists. In Proc. 18-th International Colloquium on Automata, Languages and Programming.

  9. A. Brodsky. (1996). Constraint databases: Promising technology or just intellectual exercise? In Proc. ACM workshop on strategic directions in Computing Research, MIT, Boston. Also, ACM Computing Surveys, electronic version, and Constraints Journal, to appear.

    Google Scholar 

  10. A. Brodsky, J. Jaffar & M.J. Maher. (1993). Toward practical constraint databases. In Proc. 19th International Conference on Very Large Data Bases, Dublin, Ireland.

  11. A. Brodsky & Y. Kornatzky. (1995). The lyric language: Quering constraint objects. In Carey and Schneider, editors, Proc. ACM SIGMOD International Conference on Management of Data, San Jose, CA.

  12. A. Brodsky, C. Lassez, J.-L. Lassez & M. J. Maher. (1995). Separability of polyhedra for optimal filtering of spatial and constraint data. In Proc. ACMSIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems. ACM Press.

  13. A. Brodsky & Y. Sagiv. (1989) Inference of monotonicity constraints in datalog programs. In Proc. ACM SIGACT-SIGART-SIGMOD Symp. on Principles of Database Systems, pages 190–199, Philadelphia, PA.

  14. A. Brodsky & X. S. Wang. (1995). On approximation-based query evaluation, expensive predicates and constraint objects. In Proc. ILPS95 Workshop on Constraints, Databases and Logic Programming, Portland, OR.

  15. P. Buneman, L. Libkin, D. Suciu, V. Tannen & L. Wong. (1994). Comprehension syntax. SIGMOD Record.

  16. J.-H. Byon & P. Revesz. (1995). Disco: A constraint database system with sets. In CONTESSA Workshop on Constraint Databases and Applications.

  17. S. Chauduri & K. Shim. (1993). Query optimization in the presence of foreign functions. In Proc. 19th International Conference on Very Large Data Bases.

  18. J. Chomicki & T. Imielinski. (1989). Relational specifications of infinite query answers. In Proc. ACM SIGMOD International Conference on Management of Data, pages 174–183.

  19. A. Colmerauer. (1990). An introduction to prolog 3. Communications of the ACM 33:69-90.

    Google Scholar 

  20. M. Dincbas, P. Van Hentenryck, H. Simnis, A. Aggoun, T. Graf & F. Berthier. (1988). The constraint logic programming language chip. In Proc. Fifth Generation Computer Systems, Tokyo, Japan.

  21. O. Deux et. al. (1990). The story of o2. IEEE Transactions on Knowledge and Data Engineering.

  22. L. Fegaras & D. Maier. (1995). Toward an effective calculus for object query processing. In Proc. ACM SIGMOD Conf. on Management of Data.

  23. D. Q. Goldin & P.C. Kanellakis. (1996). Constraint query algebras. Constraints 1:45–83.

    Google Scholar 

  24. S. Grumbach & J. Su. (1995). Dense-order constraint databases. In Proc. ACM SIGACT-SIGMOD-SIGART Symp. on Principles of Database Systems.

  25. S. Grumbach, J. Su & C. Tollu. (1994) Linear constraint query languages: Expressive power and complexity. In D. Leivant, editor, Logic and Computational Complexity, Indianapolis. Springer Verlag. LNCS 960.

    Google Scholar 

  26. R.H. Guting. (1989). Gral: An extensible relational database system for geometric applications. In Proc. 19th Symp. on Very Large Databases.

  27. L.M. Haas & W.F. Cody. (1991). Exploiting extensible dbms in integrated geographic information systems. In Proc. Advances in Spatial Databases, 2nd Symposium, volume 525 of Lecture Notes in Computer Science. Springer Verlag.

  28. M.R. Hansen, B.S. Hansen, P. Lucas & P. van Emde Boaz. (1989). Integrating relational databases and constraint languages. Computer Languages 14:63–82.

    Google Scholar 

  29. J.M. Hellerstein & M. Stonebraker. (1993). Predicate migration: optimizing queries with expensive predicates. In Proc. ACM SIGMOD Conf. on Managment of Data.

  30. T. Huynh, C. Lassez & J-L. Lassez. (1990). Practical issues on the projection of polyhedral sets. Annals of Mathematics and Artificial Intelligence(forthcoming). Also IBM Research Report RC 15872, IBM T.J. Watson RC.

    Google Scholar 

  31. J. Jaffar & J-L. Lassez. (1987). Constraint logic programming. In Proc. Conf. on Principles of Programming Languages, pages 111–119.

  32. J. Jaffar, M.J. Maher, P.J. Stuckey & R.H.C. Yap. (1992). Output in clp(r). In Proc. Int. Conf. on Fifth Generation Computer Systems, volume 2, pages 987–995, Tokyo, Japan.

    Google Scholar 

  33. F. Kabanza, J.-M. Stevenne, & P. Wolper. (1990) Handling infinite temporal data. In Proc. ACM SIGACT-SIGMOD-SIGART Symp. on Principles of Database Systems.

  34. P. Kanellakis, G. Kuper & P. Revesz. (1990). Constraint query languages. J. Computer and System Sciences(forthcoming). A preliminary version appeared in Proc. 9th PODS, pages 299–313, 1990.

  35. P. Kanellakis, S. Ramaswamy, D.E. Vengroff & J.S. Vitter. (1993). Indexing for data models with constraints and classes. In Proc. ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems.

  36. D. Kemp & P. Stuckey. (1992). Bottom up constraint logic programming without constraint solving. Technical report, Dept. of Computer Science, University of Melbourne.

  37. (1992) M. Kifer, W. Kim & Y. Sagiv. (1992). Querying object-oriented databases. In Proc. ACM SIGMOD Intl. Conf. on Management of Data, pages 393–402.

  38. A. Klug. (1988). On conjunctive queries containing inequalities. Journal of ACM 35:146–160.

    Google Scholar 

  39. G. M. Kuper. (1993) Aggregation in constraint databases. In Proc. Workshop on Principles and Practice of Constraint Programming.

  40. (1991). C. Lassez & J-L. Lassez. Quantifier elimination for conjunctions of linear constraints via a convex hull algorithm. Technical Report RC16779, IBM T.J. Watson Research Center.

  41. J-L. Lassez, T. Huynh & K. McAloon. (1989). Simplification and elimination of redundant linear arithmetic constraints. In Proc. North American Conference on Logic Programming, pages 35–51, Cleveland, OH.

  42. A. Levy & Y. Sagiv. (1992). Constraints and redundancy in datalog. In Proc. 11-th ACMSIGACT-SIGMOD-SIGART Symp. on Principles of Database Systems.

  43. E.M. McCreight. (1985). Priority search trees. SIAM Journal of Computing 14: 257–276.

    Google Scholar 

  44. I.S. Mumick, S.J. Finkelstein, H. Pirahesh & R. Ramakrishnan. (1990). Magic conditions. In Proc. ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, pages 314–330.

  45. M. Niezette & J.-M. Stevenne. (1992). An efficient symbolic representation of periodic time. In Proc. of First International Conference on Information and Knowledge management.

  46. J.A. Orenstein & F.A. Manola. (1988). Probe spatial data modeling and query processing in an image database application. IEEE Trans. on Software Engineering 14:611–629.

    Google Scholar 

  47. J. Paredaens, J. Van den Bussche & D. Van Gucht. (1994). Towards a theory of spatial database queries. In Proc. ACM SIGACT-SIGMOD-SIGART Symp. on Principles of Database Systems.

  48. R. Ramakrishnan. (1991). Magic templates: A spellbinding approach to logic programs. J. Logic Programming 11:189–216.

    Google Scholar 

  49. P. Z. Revesz. (1993) A closed form for datalog queries with integer order. Theoretical Computer Science 116:pp.

  50. P. Z. Revesz. (1995). Datalog queries of set constraint databases. In Proc. International Conference on Database Theory.

  51. D. Srivastava. (1992) Subsumption and indexing in constraint query languages with linear arithmetic constraints. Annals of Mathematics and Artificial Intelligence.

  52. D. Srivastava & R. Ramakrishnan. (1992). Pushing constraint selections. In Proc. 11th ACM SIGACT-SIGMOD-SIGART Simposium on Principles of Database Systems, pages 301–315.

  53. D. Srivastava, R. Ramakrishnan & P. Revesz. (1994) Constraint objects. In Proc. 2nd Workshop on the Principles and Practice of Constraint Programming, Orcas Island, WA.

  54. M. Stonebraker, M. Rowe & L. Hiroshama. (1990). The implementation of Postgress. IEEE Transactions on Knowledge and Data Engineering.

  55. L. Vandeurzen, M. Gyssens & D. Van Gucht. (1995). On the desirability and limitations of linear spatial query languages. In M. J. Egenhofer and J. R. Herring, editors, Proc. 4th Symposium on Advances in Spatial Databases, volume 951 of Lecture Notes in Computer Science, pages 14–28. Springer Verlag.

  56. P. Wadler. (1990) Comprehending monads. In Proc. ACMSymposium on Lisp and Functional Programming.

  57. A. Wolf. (1989) The dasdba geo-kernel, concepts, experiences, and the second step. In Design and Implementation of Large Spatial Databases, Proc. 1st Symp. on Spatial Databases. Springer Verlag.

  58. S. Zdonik. (1989). Query optimization in object oriented databases. In Proc. 23rd annual Hawaii International Conference of System Sciences.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Brodsky, A., Segal, V.E., Chen, J. et al. The CCUBE Constraint Object-Oriented Database System. Constraints 2, 245–277 (1997). https://doi.org/10.1023/A:1009743528682

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1009743528682

Navigation