The ECRAM project aims at providing distributed in-memory storage for cloud applications. Storing data in RAM reduces data-access latency and supports arbitrary, highly concurrent access-patterns. ECRAM is designed to scale storage capacity depending on the dynamic load
ECRAM's basic layer manages unstructured binary objects that are internally identified by a global unique identifier. The metadata management is designed for highly concurrent access and objects are replicated to achieve performance. Replication is dynamically configurable for each object, and adapts automatically to changing access patterns.
The ECRAM API provides different concurrency control mechanisms for applications. These range from explicit push-based or stream-oriented updates to transactions combined with optimistic synchronization. The consistency/replication unit size is dynamically configurable for each object. Transactions spann multiple consistency units from one to several objects.
Furthermore, ECRAM provides an integrated extended MapReduce framework for applications that process data iteratively or on-line and an built-in file system for transparent data management for legacy applications.
Overview slides: na
Prof. Dr. Michael Schöttner
"Adaptive Consistency Management for In-memory Storage, Kim-Thomas Rehmann, Dissertation, 2013.
Can be found here.