Tuesday Oct 27, 2015

Oracle Coherence 12cR2 Offers Major New Innovations

We are very happy to announce major new innovations with the release of Oracle Coherence 12.2.1 This release is one of the largest we have done and delivers several major features aimed at both developers and operations that improve developer productivity, support infrastructure consolidation, provide better security, and simplify multi-datacenter solutions. We are also announcing a new licensing option for low-cost deployment of small-to-medium sized deployments.

New Features

Coherence 12.2.1 is packed with major new features and capabilities:

  • The new Persistence feature enables Coherence to be a system-of-record and improves time-to-recovery from planned or unplanned, partial or total, cluster outage. Persistence can be configured to work in an on-line mode persisting changes as they are made to the cluster, or to take a snapshot of a data grid. Local disk configuration maximizes scalability, while network-attached storage maximizes availability.   Both data and metadata (indexes, listeners, expiry, locks, etc.) are stored, and recovery is completely automatic.
  • Federated Caching provides support for Active-Active, Active-Passive, Hub and Spoke, and custom multi-datacenter topologies. Implemented at the lowest level of Coherence, Federated Caching takes advantage of Message Bus, Elastic Data, and our new Persistence feature to improve scalability, durability, latency, and configurability of data replication over prior solutions.  
  • Coherence Multitenancy allows WebLogic Server Multitenant applications to share a cluster across a set of tenants and applications, consolidating infrastructure requirements. Multitenancy provides tenant-specific caches as well as shared caches for hosting reference data.  It is fully integrated with Oracle Traffic Director, WebLogic Server, and the Oracle Database to provide an end-to-end multitenant solution.
  • One of our most exciting new features is the integration we have done with Java 8 to provide Distributed Lambdas and Streams. We now provide the ability to execute Lambdas and Streams remotely, using standard Java 8, distributed across cluster members, without the need to deploy code on cluster servers. This provides the ability to do distributed, parallelized stream-based functional programming.  By reducing the need to deploy classes to servers, we have also greatly simplified application upgrade.
  • New Security Features include the ability to do fine-grained Authorization and Auditing of all cache access and updates.   We have also improved our SSL support.
  • For developers, we have also added support for Asynchronous Cache operations via Java 8 CompletableFutures for quicker, parallel execution of multiple tasks as well as a Streaming Async API to improve performance and reduce memory pressure on bulk reads. We also offer improved Generics Support.
  • Customers will notice increased performance from near cache optimizations and automatic, dynamic thread pool tuning. 
  • We have improved cluster and port management, and switched data communications to run over TCP via the TCP Message Bus. We also provide Dynamic Coherence Management Node for Management HA.
  • We also have a number of other goodies, including support for Sliding Expiry, a new cache truncate operation, REST Server-Sent Events, and JSON Passthrough that improve the developer experience and offer new functionality.

New Packaging and Licensing Options

We also offer new (and sometimes free!) options for deploying Coherence in production.

  • Coherence Standard Edition One replaces Standard Edition.   SE One is a low-priced ($800 / socket) dual-server Active/Standby solution that provides all Coherence APIs from Java, REST, JCache, and Memcached clients. It is perfect for smaller deployments where you data fits into a single node, e.g. anywhere up to around 20GB or larger depending on your tolerance for larger GC pauses and need for scale-out. SE One also includes the new Persistence features.
    • The good news around SE One does not end there.  SE One is included in Java SE Advanced (with the limitation that it is a single-server deployment with no standby).
    • Since WebLogic Server Enterprise Edition includes Java SE Advanced, WebLogic customers can now deploy Coherence for free in configurations not needing scale-out or advanced features of Enterprise and Grid Edition.
    • Customers needing the scale-out or other features of Coherence Enterprise Edition or Grid Edition can upgrade without code change since SE One provides the full Coherence API.
  • Real-Time Extend Data Clients are now included for free in every Coherence edition to provide deployment flexibility.  No longer do you need to decide whether you will use near cache or whether you will use an Extend proxy before you choose the appropriate Coherence edition.
  • Persistence is part of every Coherence edition. 
  • WebLogic Server Multitenant and WebLogic Server Continuous Availability  both provide the right to upgrade from Enterprise Edition to Grid Edition. If you own Coherence Enterprise Edition or WebLogic Suite and by WLS MT or CA, you will be able to deploy Coherence GE to take advantage of multitenant and continuous availability features of Coherence in your WLS applications.
  • Finally, we have improved our Free Developer’s License on OTN to allow developers to use Coherence for free in development even after Coherence has been deployed in production. 

I hope this has whet your appetite for Coherence 12.2.1. As you can tell, I am quite excited about it. Please check Coherence 12.2.1 Documentation for more information on the features above and watch as deep-dive videos from our engineering team are added to the YouTube OracleCoherence Channel over the next few days. 

Tuesday Aug 12, 2014

Coherence State of the Union

Six years after I joined Coherence following Oracle’s acquisition of BEA, it is great to see how the industry has embraced In-Memory Data Grid’s as a mainstream technology to scale middleware applications. This adoption is driven by growth in customer demand to manage more and more data, and to act on that data faster and faster. The mission that the Coherence team set upon over a decade ago has come to fruition, and our core team – still intact all this time later even as we continue to grow the team in new directions – is working on new challenges as in-memory data grid based solutions become standard.

The latest release of Coherence and the new announcement of the In-Memory Option for the Oracle Database make this an opportune time to answer some recent questions I’ve received about where Coherence is headed. First lets review the recent announcements.

In June we announced Coherence 12.1.3, the second release of Coherence 12cR1. Coherence 12.1.2, released in 2013, introduced groundbreaking operational improvements like Managed Coherence Servers and GAR files, GoldenGate HotCache to keep caches and databases in sync, and Live Events to respond to state and data changes in real-time. With Coherence 12.1.3 Oracle became the first commercial vendor to support the recently ratified JSR-107 (JCache) spec, the standard for caching on the Java platform. We also introduced a JVisualVM plugin for developers, asynchronous EntryProcessors to allow clients to submit work to the data grid without waiting for a response, memcached client support, and optimization improvements to our Exalogic Infiniband optimizations (Exabus). Check out all the cool new features of Coherence 12.1.3 in our release notes.

In July, Oracle announced the availability of the In-Memory Option for the Oracle Database. The In-Memory Option is designed to accelerate database performance by orders of magnitude for analytics, data warehousing, and reporting by storing columnar data in-memory. It supports ad-hoc queries and full-table scans without requiring application changes; the interface is standard SQL. Maria Colgan answers frequently asked questions about this release on her blog.

The new In-Memory option has also led to some confusion in the In-Memory Data Grid market. Let me try to clarify some of the confusion.

Oracle Coherence is not embedded in the In-Memory Option for the Oracle Database. Although I have seen rumors of this to the contrary, this would make absolutely no sense. Coherence is a distributed key-value store; the in-memory option is a columnar store. The In-Memory option is purpose built and optimized to work as one with the database with its primary access method being SQL. (Of course, Coherence is part of many other Oracle solutions, such as Oracle Service Bus which offers web services results caching via a check box, or the Elastic Charging Engine, which is architected on top of Coherence’s fault-tolerant distributed processing.  (As you can see, Coherence has become strategic within Oracle.)

The In-Memory Option focuses on different use cases than Coherence. In-Memory focuses on ad-hoc full-table scans of unindexed data.  in the words of Maria Colgan "The main use case for the In-Memory column store is fast analytics, which has very different access patterns to OLTP. Typically analytic queries access a few columns from a table but they examine all of the entries in those columns. You need to scan the whole table or segment, not just a small part of the table to answer these queries.” Storing these columns in-memory, in columnar format, speeds full-table scans orders of magnitude.

By contrast, Coherence focuses on providing scale-out data management and processing to middleware applications thereby reducing load on shared services such as databases, mainframes, and web services.  By caching data in domain object format close the application, Coherence also increases responsiveness and availability of applications. 

So if the In-memory Option is not related to Coherence, what has the Coherence team been up to? Glad you asked! Aside from the two 12c releases over the past year, we continue to invest in several strategic areas (you can get a pretty good sneak peak of upcoming releases at Oracle OpenWorld next month).

The Cloud. Oracle has increased investment in accelerating’s Coherence role in our various cloud offerings, from public to private PAAS. Our Coherence cloud team is leveraging investments in Managed Coherence Servers to simplify operations and continue to integrate Coherence into the cloud environment. In addition, Coherence integrates with other Oracle technology to provide a full cloud management solution.

Operational Efficiency. Related to the Cloud, but somewhat separate, we are innovating to reduce the cost it takes, both from a hardware and IT staff perspective, to manage an in-memory data grid solution. I

Maximum Availability Architectures.  Several features in our next release will dramatically increase the availability of data to your applications. Features include new advancements in mutl-datacenter solutions and protecting the availability of the in-memory data grid within a single datacenter.

Developer Productivity.  We continue to invest in new functionality, new integration points (e.g. REST, JSR-107, memcached in recent releases) that complement our native clients. We also invest in new product features that simplify the lives of developers both from an API (Asynchronous EntryProcessors) and from a tooling (JVisual VM plugin and Coherence tooling in Oracle Enterprise Pack for Eclipse, or OEPE).

To get more specific of all these investments, you can join me at my Coherence Product Strategy and Roadmap talk at OpenWorld.

Monday Jul 14, 2014

NEW: Oracle Coherence 12.1.3

The latest version Coherence 12c (12.1.3)  has just become available on OTN. This release introduces some significant new features, like support for Memcached clients and the new JCache/JSR107 Java Caching Standard. It also contains the new JVisualVM monitoring plug-in and has some cool optimisations. 

[Read More]

Oracle Coherence, the market leading in-memory datagrid product.
Stay Connected...


« November 2015