Abstract
Orthogonally persistent Java combines the power of abstraction over persistence with Java’s rich programming environment. In this paper we report our experience in designing and implementing orthogonally persistent Java. Our design approach is anchored by the view that any system that brings together Java and orthogonal persistence should as far as possible avoid diluting the strengths of Java or the principles of orthogonal persistence. Our approach is thus distinguished by three features: complete transparency of persistence, support for both intra and inter application concurrency through ACID transactions, and the preservation of Java’s property of portability. In addition to discussing design and implementation, we present results that show that our approach performs credibly.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Atkinson, M. P., Jordan, M. J., Daynes, L., AND Spence, S. 1996. Design issues for Persistent Java: A type-safe, object-oriented, orthogonally persistent system. In R. Connor AND S. Nettles Eds., Seventh International Workshop on Persistent Object Systems (Cape May, NJ, U.S.A., May 1996), pp. 33–47. Morgan Kaufmann.
Atkinson, M. P. AND Morrison, R. 1995. Orthogonally persistent systems. The VLDB Journal 4,3 (July), 319–402.
Blackburn, S. M. AND Stanton, R. B. 1999. The transactional object cache: A foundation for high performance persistent system construction. In R. Morrison, M. Jordan, AND M. Atkinson Eds., Advances in Persistent Object Systems, Proceedings of the 8th International Workshop on Persistent Object Systems (POS8) and Proceedings of the 3rd International Workshop on Persistence and Java (PJW3) Sept. 1–3, 1998, Tiburon, CA, U.S.A. (San Francisco, 1999), pp. 37–50. Morgan Kaufmann.
Blackburn, S. M. AND Zigman, J. N. 1999. Concurrency—The fly in the ointment? In R. Morrison, M. Jordan, AND M. Atkinson Eds., Advances in Persistent Object Systems, Proceedings of the 8th International Workshop on Persistent Object Systems (POS8) and Proceedings of the 3rd International Workshop on Persistence and Java (PJW3) Sept. 1–3, 1998, Tiburon, CA, U.S.A. (San Francisco, 1999), pp. 250–258. Morgan Kaufmann.
Carey, M. J., DE Witt, D. J., AND Naughton, J. F. 1993. The OO7 benchmark. In P. Buneman AND S. Jajodia Eds., Proceedings of the 1993 ACM SIGMOD International Conference on Management of Data, Washington, D.C., May 26–28, 1993, Volume 22 of SIGMOD Record (June 1993), pp. 12–21. ACM Press.
Carey, M. J., DeWitt, D. J., Franklin, M. J., Hall, N. E., McAuliffe, M. L., Naughton, J. F., Schuh, D. T., Solomon, M. H., Tan, C. K., Tsatalos, O. G., AND White, S. J. 1994. Shoring up persistent applications. In R. T. Snodgrass AND M. Winslett Eds., Proceedings on the 1994 ACM-SIGMOD Conference on the Management of Data, Volume 23 of SIGMOD Record (Minneapolis, MN, U.S.A., May 24–27 1994), pp. 383–394. ACM.
Daynès, L. 2000. Implementation of automated fine-granularity locking in a persistent programming language. Software: Practice and Experience 30,4 (April), 325–361.
GEMSTONE SYSTEMS. 1999. GemStone/J. http://www.gemstone.com/.
Haerder, T. AND Reuter, A. 1983. Principles of transaction-oriented database recovery. ACM Computing Surveys 15,4 (Dec.), 287–317.
He, Z., Blackburn, S. M., Kirby, L., AND Zigman, J. N. 2000. Platypus: Design and implementation of a flexible high performance object store. In Proceedings of the Ninth International Workshop on Persistent Object Systems, Lillehammer, Norway September 6–9, 2000 (2000).
Hohlfeld, M. AND Yee, B. 1998. How to migrate agents. http://www.cs.ucsd.edu/users/bsy/pub/migrate.ps.
Jordan, M. J. AND Atkinson, M. P. 1999. Orthogonal persistence for Java?-A mid-term report. In R. Morrison, M. Jordan, AND M. Atkinson Eds., Advances in Persistent Object Systems, Proceedings of the 8th International Workshop on Persistent Object Systems (POS8) and Proceedings of the 3rd International Workshop on Persistence and Java (PJW3) Sept. 1–3, 1998, Tiburon, CA, U.S.A. (San Francisco, 1999), pp. 335–352. Morgan Kaufmann.
Lewis, B., Mathiske, B., AND Gafter, N. 2000. Architecture of the PEVM: A high-performance orthogonally persistent Java virtual machine. In Proceedings of the Ninth International Workshop on Persistent Object Systems, Lillehammer, Norway September 6–9, 2000 (2000).
Marquez, A., Zigman, J. N., AND Blackburn, S. M. 2000. Fast, portable orthogonally persistent Java. Software: Practice and Experience 30,4 (April), 449–479.
Moss, J. E. B. 1992. Working with persistent objects: To swizzle or not to swizzle. IEEE Transactions on Software Engineering SE-18, 8 (August), 657–673.
Moss, J. E. B. AND Hosking, A. L. 1996. Approaches to adding persistence to Java. In M. Jordan AND M. Atkinson Eds., First International Workshop on Persistence and Java (Drymen, Scotland, September 16–18 1996). Available online at: http://www.dcs.gla.ac.uk/~carol/Workshops/PJ1Programme.html.
SUN MICROSYSTEMS. 1999. Java Data Objects Specification, JSR-12. http://java.sun.com/aboutjava/communityprocess/jsr (July), Sun Microsystems Inc., 2550 Garcia Avenue, Mountain View, CA 94043.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Marquez, A., Blackburn, S.M., Mercer, G., Zigman, J. (2001). Implementing Orthogonally Persistent Java. In: Kirby, G.N.C., Dearle, A., Sjøberg, D.I.K. (eds) Persistent Object Systems: Design, Implementation, and Use. POS 2000. Lecture Notes in Computer Science, vol 2135. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45498-5_22
Download citation
DOI: https://doi.org/10.1007/3-540-45498-5_22
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42735-3
Online ISBN: 978-3-540-45498-4
eBook Packages: Springer Book Archive