Transparent Scalability with Clustering for Java e-Science Applications

International audience The two-decade long history of events relating object-oriented programming, the development of persistence and transactional support, and the aggregation of multiple nodes in a single-system image cluster, appears to convey the following conclusion: programmers ideally would d...

Full description

Bibliographic Details
Main Authors: Sampaio, Pedro, Ferreira, Paulo, Veiga, Luís
Other Authors: Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa (INESC-ID), Instituto Superior Técnico, Universidade Técnica de Lisboa (IST)-Instituto de Engenharia de Sistemas e Computadores (INESC), Pascal Felber, Romain Rouvoy, TC 6, WG 6.1
Format: Conference Object
Language:English
Published: HAL CCSD 2011
Subjects:
Online Access:https://inria.hal.science/hal-01583574
https://inria.hal.science/hal-01583574/document
https://inria.hal.science/hal-01583574/file/978-3-642-21387-8_22_Chapter.pdf
https://doi.org/10.1007/978-3-642-21387-8_22
Description
Summary:International audience The two-decade long history of events relating object-oriented programming, the development of persistence and transactional support, and the aggregation of multiple nodes in a single-system image cluster, appears to convey the following conclusion: programmers ideally would develop and deploy applications against a single shared global memory space (heap of objects) of mostly unbounded capacity, with implicit support for persistence and concurrency, transparently backed by a possibly large number of clustered physical machines.In this paper, we propose a new approach to the design of OODB systems for Java applications: (O3)2 (pronounced ozone squared). It aims at providing to developers a single-system image of virtually unbounded object space/heap with support for object persistence, object querying, transactions and concurrency enforcement, backed by a cluster of multi-core machines with Java VMs that is kept transparent to the user/developer. It is based on an existing persistence framework (ozone-db) and the feasibility and performance of our approach has been validated resorting to the OO7 benchmark.