skip to main content
research-article

Compiling mappings to bridge applications and databases

Published: 12 December 2008 Publication History

Abstract

Translating data and data access operations between applications and databases is a longstanding data management problem. We present a novel approach to this problem, in which the relationship between the application data and the persistent storage is specified using a declarative mapping, which is compiled into bidirectional views that drive the data transformation engine. Expressing the application model as a view on the database is used to answer queries, while expressing the database schema as a view on the application model allows us to leverage view maintenance algorithms for update translation. This approach has been implemented in a commercial product. It enables developers to interact with a relational database via a conceptual schema and an object-oriented programming surface. We outline the implemented system and focus on the challenges of mapping compilation, which include rewriting queries under constraints and supporting nonrelational constructs.

References

[1]
Abiteboul, S. and Duschka, O. M. 1998. Complexity of answering queries using materialized views. In Proceedings of the ACM SIGACT SIGMOD SIGART Symposium on Principles of Database Systems (PODS). ACM, New York, NY, 254--263.
[2]
Abiteboul, S., Hull, R., and Vianu, V. 1995. Foundations of Databases. Addison Wesley.
[3]
Adya, A., Blakeley, J. A., Melnik, S., Muralidhar, S., and The ADO.NET Team. 2007. Anatomy of the ADO.NET Entity Framework. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, New York, NY, 877--888.
[4]
Atkinson, M. P. and Buneman, P. 1987. Types and persistence in database programming languages. ACM Comput. Surv. 19, 2, 105--190.
[5]
Bancilhon, F. and Spyratos, N. 1981. Update semantics of relational views. ACM Trans. Database Syst. ACM, New York, NY, 6, 4, 557--575.
[6]
Barbosa, D., Freire, J., and Mendelzon, A. O. 2005. Designing information-preserving mapping schemes for XML. In Proceedings of the International Conference on Very Large Data Bases (VLDB). VLDB Endowment, 109--120.
[7]
Barsalou, T., Keller, A. M., Siambela, N., and Wiederhold, G. 1991. Updating relational databases through object-based views. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, New York, NY, 248--257.
[8]
Batini, C., Ceri, S., and Navathe, S. B. 1992. Conceptual Database Design: an Entity-Relationship Approach. Benjamin-Cummings Publishing Co., Inc., Redwood City, CA, USA.
[9]
Bauer, C. and King, G. 2006. Java Persistence with Hibernate. Manning Publications.
[10]
Bernstein, P. A., Green, T. J., Melnik, S., and Nash, A. 2006. Implementing mapping composition. In Proceedings of the International Conference on Very Large Data Bases (VLDB). VLDB Endowment, 55--66.
[11]
Bernstein, P. A. and Melnik, S. 2007. Model management 2.0: manipulating richer mappings. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, New York, NY, 1--12.
[12]
Blakeley, J. A., Larson, P.-Å., and Tompa, F. W. 1986. Efficiently updating materialized views. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, New York, NY, 61--71.
[13]
Blakeley, J. A., Muralidhar, S., and Nori, A. 2006. The ADO.NET Entity Framework: making the conceptual level real. In International Conference on Conceptual Modeling (ER). Lecture Notes in Computer Science, vol. 4312, Springer, Berlin, Heidelberg, New York, 552--565.
[14]
Bohannon, A., Pierce, B. C., and Vaughan, J. A. 2006. Relational lenses: a language for updatable views. In Proceedings of the ACM SIGACT SIGMOD SIGART Symposium on Principles of Database Systems (PODS). ACM, New York, NY, 338--347.
[15]
Bohannon, P., Fan, W., Flaster, M., and Narayan, P. P. S. 2005. Information preserving XML schema embedding. In Proceedings of the International Conference on Very Large Data Bases (VLDB). 85--96.
[16]
Braganholo, V. P., Davidson, S. B., and Heuser, C. A. 2004. From XML view updates to relational view updates: old solutions to a new problem. In Proceedings of the International Conference on Very Large Data Bases (VLDB). VLDB Endowment, 276--287.
[17]
Bryant, R. E. 1986. Graph-based algorithms for boolean function manipulation. IEEE Trans. Comput. 35, 8, 677--691.
[18]
Carey, M. J., Chamberlin, D. D., Narayanan, S., Vance, B., Doole, D., Rielau, S., Swagerman, R., and Mattos, N. M. 1999. O-o, what have they done to DB2? In Proceedings of the International Conference on Very Large Data Bases (VLDB). VLDB Endowment, 542--553.
[19]
Carey, M. J. and DeWitt, D. J. 1996. Of objects and databases: a decade of turmoil. In Proceedings of the International Conference on Very Large Data Bases (VLDB). VLDB Endowment, Morgan Kaufmann, 3--14.
[20]
Castro, P., Melnik, S., and Adya, A. 2007. ADO.NET Entity Framework: raising the level of abstraction in data programming. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, New York, NY, 1070--1072.
[21]
Chen, P. P. 1976. The entity-relationship model—toward a unified view of data. ACM Trans. Database Syst. 1, 1, 9--36.
[22]
Cook, W. R. and Ibrahim, A. H. 2006. Integrating programming languages and databases: what is the problem? ODBMS.ORG, Expert Article.
[23]
Dayal, U. and Bernstein, P. A. 1978. On the updatability of relational views. In Proceedings of the International Conference on Very Large Data Bases (VLDB). VLDB Endowment, 368--377.
[24]
Di Paola, R. A. 1969. The recursive unsolvability of the decision problem for the class of definite formulas. J. ACM 16, 2, 324--327.
[25]
EJB 3.0 Expert Group. 2006. JSR 220: Enterprise JavaBeans, Version 3.0, Final Release.
[26]
Fagin, R., Kolaitis, P. G., Popa, L., and Tan, W. C. 2005. Composing schema mappings: second-order dependencies to the rescue. ACM Trans. Database Syst. 30, 4, 994--1055.
[27]
Foster, J. N., Greenwald, M. B., Moore, J. T., Pierce, B. C., and Schmitt, A. 2007. Combinators for bidirectional tree transformations: a linguistic approach to the view-update problem. ACM Trans. Prog. Lang. Syst. 29, 3 (May), 17.
[28]
Fuxman, A., Hernandez, M. A., Ho, H., Miller, R. J., Papotti, P., and Popa, L. 2006. Nested mappings: schema mapping reloaded. In Proceedings of the International Conference on Very Large Data Bases (VLDB). VLDB Endowment, 67--78.
[29]
Gottlob, G., Paolini, P., and Zicari, R. 1988. Properties and update semantics of consistent views. ACM Trans. on Database Syst. 13, 4, 486--524.
[30]
Gou, G., Kormilitsin, M., and Chirkova, R. 2006. Query evaluation using overlapping views: completeness and efficiency. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM Press, New York, NY, 37--48.
[31]
Grimes, S. 1998. Object/relational reality check. Database Program. Des. 11, 7.
[32]
Gupta, A. and Mumick, I. S. 1995. Maintenance of materialized views: problems, techniques, and applications. IEEE Data Eng. Bull. 18, 2, 3--18.
[33]
Halevy, A. Y. 2001. Answering queries using views: A Survey. VLDB J. 10, 4, 270--294.
[34]
JDO Expert Group. 2006. JSR 243: Java Data Objects, Version 2.0, Final Release.
[35]
Keene, C. 2004. Data services for next-generation SOAs. SOA WebServices J. 4, 12.
[36]
Keller, A. M., Jensen, R., and Agrawal, S. 1993. Persistence software: bridging object-oriented programming and relational databases. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, New York, NY, 523--528.
[37]
Kotidis, Y., Srivastava, D., and Velegrakis, Y. 2006. Updates through views: a new hope. In Proceedings of the International Conference on Data Engineering (ICDE). 2.
[38]
Krishnamurthy, V., Banerjee, S., and Nori, A. 1999. Bringing object-relational technology to mainstream. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, New York, NY, 513--514.
[39]
Larson, P.-Å. and Zhou, J. 2007. View matching for outer-join views. VLDB J. 16, 1, 29--53.
[40]
Mehra, K. K., Rajamani, S. K., Sistla, A. P., and Jha, S. K. 2007. Verification of object relational maps. In Proceedings of the 5th IEEE Software Engineering and Formal Methods (SEFM). IEEE Computer Society, Washington, DC, 283--292.
[41]
Meijer, E., Beckman, B., and Bierman, G. M. 2006. LINQ: reconciling object, relations and XML in the .NET framework. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, New York, NY, 706.
[42]
Melnik, S., Adya, A., and Bernstein, P. A. 2007. Compiling mappings to bridge applications and databases. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, New York, NY, 461--472.
[43]
Miller, R. J., Haas, L. M., and Hernández, M. A. 2000. Schema mapping as query discovery. In Proceedings of the International Conference on Very Large Data Bases (VLDB). VLDB Endowment, 77--88.
[44]
Nash, A., Bernstein, P. A., and Melnik, S. 2007. Composition of mappings given by embedded dependencies. ACM Trans. Database Syst. 32, 1, 4.
[45]
Segoufin, L. and Vianu, V. 2005. Views and queries: determinacy and rewriting. In Proceedings of the ACM SIGACT SIGMOD SIGART Symposium on Principles of Database Systems (PODS). ACM, New York, NY, 49--60.
[46]
Zhang, W. and Ritter, N. 2001. The real benefits of object-relational db-technology for object-oriented software development. In Proceedings of the British National Conference on Databases (BNCOD). Lecture Notes in Computer Science, Vol. 2097, Springer, Berlin, Heidelberg, New York, 89--104.

Cited By

View all
  • (2024)Fusing Direct Manipulations into Functional ProgramsProceedings of the ACM on Programming Languages10.1145/36328838:POPL(1211-1238)Online publication date: 5-Jan-2024
  • (2023)On Proving the Correctness of Refactoring Class Diagrams of MDE MetamodelsACM Transactions on Software Engineering and Methodology10.1145/354954132:2(1-42)Online publication date: 5-Apr-2023
  • (2023)Enabling schema-independent data retrieval queries in MongoDBInformation Systems10.1016/j.is.2023.102165114:COnline publication date: 1-Mar-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Database Systems
ACM Transactions on Database Systems  Volume 33, Issue 4
November 2008
379 pages
ISSN:0362-5915
EISSN:1557-4644
DOI:10.1145/1412331
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 12 December 2008
Accepted: 01 June 2008
Revised: 01 March 2008
Received: 01 October 2007
Published in TODS Volume 33, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Mapping
  2. query rewriting
  3. updateable views

Qualifiers

  • Research-article
  • Research
  • Refereed

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)18
  • Downloads (Last 6 weeks)2
Reflects downloads up to 07 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Fusing Direct Manipulations into Functional ProgramsProceedings of the ACM on Programming Languages10.1145/36328838:POPL(1211-1238)Online publication date: 5-Jan-2024
  • (2023)On Proving the Correctness of Refactoring Class Diagrams of MDE MetamodelsACM Transactions on Software Engineering and Methodology10.1145/354954132:2(1-42)Online publication date: 5-Apr-2023
  • (2023)Enabling schema-independent data retrieval queries in MongoDBInformation Systems10.1016/j.is.2023.102165114:COnline publication date: 1-Mar-2023
  • (2020)Generic schema matching, ten years laterProceedings of the VLDB Endowment10.14778/3402707.34027104:11(695-701)Online publication date: 3-Jun-2020
  • (2020)Programmable view update strategies on relationsProceedings of the VLDB Endowment10.14778/3377369.337738013:5(726-739)Online publication date: 19-Feb-2020
  • (2019)Making an RDBMS data scientist friendlyProceedings of the VLDB Endowment10.14778/3352063.335210212:12(1930-1933)Online publication date: 1-Aug-2019
  • (2019)Implementing a Classic ER Algebra to Automatically Generate Complex Queries for Document-Oriented DatabasesProceedings of the XIII Brazilian Symposium on Software Components, Architectures, and Reuse10.1145/3357141.3357601(43-52)Online publication date: 23-Sep-2019
  • (2019)Keep Your Host Language Object and Also Query itProceedings of the 31st International Conference on Scientific and Statistical Database Management10.1145/3335783.3335798(133-144)Online publication date: 23-Jul-2019
  • (2018)AIDAProceedings of the VLDB Endowment10.14778/3236187.323619411:11(1400-1413)Online publication date: 1-Jul-2018
  • (2016)Estimating Costs of Materialization Methods for SQL:1999 Recursive QueriesBeyond Databases, Architectures and Structures. Advanced Technologies for Data Mining and Knowledge Discovery10.1007/978-3-319-34099-9_17(225-235)Online publication date: 28-Apr-2016
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media