ACM Home Page
Please provide us with feedback. Feedback
Interprocedural query extraction for transparent persistence
Full text PdfPdf (303 KB)
Source
Conference on Object Oriented Programming Systems Languages and Applications archive
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications table of contents
Nashville, TN, USA
SESSION: Query integration table of contents
Pages 19-36  
Year of Publication: 2008
ISBN:978-1-60558-215-3
Also published in ...
Authors
Ben Wiedermann  The University of Texas at Austin, Austin, TX, USA
Ali Ibrahim  The University of Texas at Austin, Austin, TX, USA
William R. Cook  The University of Texas at Austin, Austin, TX, USA
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 16,   Downloads (12 Months): 155,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1449764.1449767
What is a DOI?

ABSTRACT

Transparent persistence promises to integrate programming languages and databases by allowing programs to access persistent data with the same ease as non-persistent data. In this work we demonstrate the feasibility of optimizing transparently persistent programs by extracting queries to efficiently prefetch required data. A static analysis derives query structure and conditions across methods that access persistent data. Using the static analysis, our system transforms the program to execute explicit queries. The transformed program composes queries across methods to handle method calls that return persistent data. We extend an existing Java compiler to implement the static analysis and program transformation, handling recursion and parameterized queries. We evaluate the effectiveness of query extraction on the OO7 and TORPEDO benchmarks. This work is focused on programs written in the current version of Java, without languages changes. However, the techniques developed here may also be of value in conjunction with object-oriented languages extended with high-level query syntax.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
 
3
 
4
G. M. Bierman, E. Meijer, and W. Schulte. The essence of data access in c?. In Proc. of the European Conference on Object-Oriented Programming (ECOOP), pages 287--311, 2005.
5
 
6
D. Cengija. Hibernate your data. onJava.com, 2004.
7
8
 
9
E. Cooper, S. Lindley, P. Wadler, and J. Yallop. Links: Web programming without tiers. In Proceedings of the 5th International Symposium on Formal Methods for Components and Objects, pages 266--296, Amsterdam, The Netherlands, November 2006.
 
10
A. Gawecki and F. Matthes. Integrating query and program optimization using persistent CPS representations. In M. P. Atkinson and R. Welland, editors, Fully Integrated Data Environments, ESPRIT Basic Research Series, pages 496--501. Springer Verlag, 2000.
11
 
12
J. Ha, M. Gustafsson, S. M. Blackburn, and K. S. McKinley. Microarchitectural characterization of production jvms and java workloads. Mar 2008.
 
13
 
14
 
15
Hibernate reference documentation. http://www.hibernate.org/hib_docs/v3/reference/en/html, May 2005.
 
16
A. Ibrahim and W. Cook. Automatic prefetching by traversal profiling in object persistence architectures. In Proc. of the European Conference on Object-Oriented Programming (ECOOP), 2006.
17
 
18
D. E. Knuth. Semantics of context-free languages. Theory of Computing Systems, 2(2):127--145, June 1968.
19
 
20
21
 
22
 
23
F. Matthes, G. Schroder, and J. Schmidt. Tycoon: A scalable and interoperable persistent system environment. In M. Atkinson, editor, Fully Integrated Data Environments. Springer-Verlag, 1995.
 
24
Microsoft Corporation. The LINQ project. msdn. microsoft.com/netframework/future/linq.
 
25
R. Morrison, R. C. H. Connor, G. N. C. Kirby, D. S. Munro, M. P. Atkinson, Q. I. Cutts, A. L. Brown, and A. Dearle. The Napier88 persistent programming language and environment. In M. P. Atkinson and R. Welland, editors, Fully Integrated Data Environments, pages 98--154. Springer, 1999.
26
 
27
J. Schmidt, F. Matthes, and P. Valduriez. Building persistent application systems in fully integrated data environments: Modularization, abstraction and interoperability. In Proceedings of Euro-Arch'93 Congress. Springer Verlag, Oct. 1993.
 
28
29
 
30
D.Willis, D. J. Pearce, and J. Noble. Efficient object querying in Java. In Proc. of the European Conference on Object-Oriented Programming (ECOOP), Nantes, France, 2006.
 
31
32

Collaborative Colleagues:
Ben Wiedermann: colleagues
Ali Ibrahim: colleagues
William R. Cook: colleagues