Partial rollback-based scheduling on in-memory transactional data grids

Junwhan Kim · 2014

In-memory transactional data girds, often referred to as NoSQL data grids demand high concurrency for scalability and high performance in data-intensive applications. As an alternative concurrency control model, distributed transactional memory (DTM) promises to alleviate the difficulties of lock-based distributed synchronization. We consider the multi-versioning (MV) model of using multiple object versions in DTM to avoid unnecessary aborts. MV transactional memory inherently guarantees commits of read-only transactions, but limits concurrency of write transactions. We present a transactional scheduler, called partial rollback-based transactional scheduler (or PTS), for a multi-versioned DTM model. The model supports multiple object versions to exploit concurrency of read-only transactions, and detects conflicts of write transactions at an object level. Instead of aborting a transaction, PTS assigns backoff times for conflicting transactions, and the transaction is rolled-back partially. Our implementation, integrated with a popular open-source transactional in-memory data store (i.e., Red Hat's Infinispan) reveals that PTS improves transactional throughput over MV DTM without PTS by as much as 2.4×.

Read the paper · More papers on PaperTik