CloudTran Home

<< Back Contents  >  1.  Introduction Forward >>

1.1 Product Overview

CloudTran is a product family for Java developers who need to build high-performance, scalable applications with strong ACID guarantees. This manual describes CloudTran-Coherence - the CloudTran product layered on Oracle Coherence.

CloudTran provides a scalable data tier in support of in-memory data grids.

  • CloudTran-Coherence for TopLink Grid helps Java application programmers write scalable JPA applications using Oracle Coherence and TopLink Grid.
  • The Low-level API provides a transactional and persistence support for developers using Coherence NamedCache features. It supports both Pessimistic-Locking and MVCC (Multi-Version Concurrency Control).
See Product Concepts and Architecture for details on the common transaction features.

 1.1.1  Distributed, Durable Transactions at Speed
 1.1.2  Comparisons

1.1.1  Distributed, Durable Transactions at Speed
It is relatively easy to provide, in a data grid, operations providing any three of these four attributes: distributed; durable; fast; isolated.

For example, database "write-behind" is distributed, durable and fast but not isolated at the database. Or, database "write-through" is distributed, durable and isolated at the database but not as fast as write-behind (as it has to wait for the database transaction).

CloudTran provides all these features simultaneously, while also reflecting the key features of a grid:

  • scalability - including scaling the transaction management services;
  • automatic failover for failed instances;
  • management of the primary transaction in the grid and onward shipment as secondary transactions to databases and other data stores
  • buffering secondary transactions in the grid if it gets ahead of the data stores.
This is possible because CloudTran runs in the grid, which means it can leverage the grid's scalability and HA features, at the same time optimising transaction performance.
1.1.2  Comparisons
CloudTran uses a new style of transaction management that manages transactions distributed in a grid and persisted to databases. Here are some comparisons with other transaction managers to help understand CloudTran:

XA Distributed Transaction Managers  XA distributed transactions can encompass legacy systems (e.g via JCA), messaging and datastore transactions. In contrast, you can think of CloudTran as a resource manager handling the Coherence grid and the databases beyond it as a single resource; this involves distributed transaction management (multiple nodes in the grid and multiple databases) ... just not in the XA style. CloudTran-Coherence can then interwork with XA transactions via EclipseLink's integration to external transaction managers such as WebLogic.

Coherence Transaction Framework API  Coherence's Transaction Framework provides a distributed transactions for programming at the Coherence API and extending the scope of transactions outside the grid with XA and JCA integration; integration with databases is a future feature, as of Coherence 3.7.1. In contrast, the goal of CloudTran-Coherence for TopLink Grid is to help programmers to develop high performance, fully ACID, scalable JPA applications with little or no knowledge of the Coherence API.

Single-service/node Transactions  It is possible to do multi-entry atomic operations on one cache service in one node using the Coherence API. This is completely different in API level and interactions from CloudTran-Coherence.

Copyright (c) 2008-2013 CloudTran Inc.