Coherence
Distributed, In-Memory Data Grid Access for Clustered Applications
Originally from Tangosol and acquired by Oracle earlier this year, Coherence provides for clustered Java and now .NET applications the ability to distribute and share their objects and data throughout the cluster as an in-memory data grid, or data mesh. The vendor states that by distributing the data management and access throughout the clustered servers, the System of Record (SOR; which is the original copy of the data that is being shared, often provided by a DB), does not become a bottleneck in the overall performance of the clustered applications. The product itself features automatic discovery capabilities, in that when the application starts up on a server it is discovered by the other clustered servers and its services are added to the cluster. The vendor states that most types of server failures can be detected in less than a second, with immediate failover to remaining servers in the cluster. The product provides for failover data access from server to server within a cluster, as well as the ability to support the failover of an entire data center to another cluster.
The vendor touts the application's ability to scale linearly in both capacity and performance; which is made possible primarily via the platform's ability to dynamically partition data handling across the available servers. For example, if a cluster consists of four servers, then each of the servers is responsible for the management of 25% of the data; should an additional server be added, then each server takes on 20% of the data, and so forth. Additionally, each server's data is backed up to the other servers in the cluster (the number of copies of backed up data is configurable) such that if the server should fail or be removed from the cluster, the remaining servers are dynamically repartitioned to begin managing the removed server's data without data loss. As more serves are introduced into the cluster, each individual server handles less of the overall data percentage and is therefore able to scale in terms of performance (i.e., it is able to devote more of its processing power to the performance of data operations).
To speed access to the distributed, in-memory data, the platform additionally relies on technologies including replication (maintaining up-to-date copies of selected data sets on all servers in the cluster at all times); "Near Caching," which allows a server to automatically maintain frequently and/or recently used data from other servers in its own local cache until invalidated by event notifications; and write-behind caching, which enables data changes to be asynchronously committed to the source DB after they are received (with queuing). Write-behind caching additionally provides the ability to coalesce multiple write requests into a single change to the source data (i.e., if the same data is changed multiple times in a write-behind cycle, then only the most recent change is committed to the DB), and write aggregation, where multiple disparate writes can be combined into a single operation against the source DB.
Other features of the platform include a Web module with built-in HTTP session management features; the ability to monitor and manage a cluster via the JMX API; automated cache change event notifications via the JavaBean Event Model; and support for continuous queries.
New features in the latest version of Coherence include:
- Support for .NET deployments, Java SE version 6, and multi-core hardware enhancements
- Performance enhancements including Deterministic Request Execution, and communication tuning capabilities including packet bundling and dynamic flow control
Coherence is available now. Visit the Oracle Web site for more information.
product submission by EITPlanet Staff
E-Mail this page to a colleague
send info about Coherence

Suggest a link
for the Coherence fact sheet