Oracle Coherence Solutions
New technologies are introducing advanced approaches to solve the scaling problems inherent in modern mission-critical applications. Compute Grid and Data Grid products can enhance application scalability and availability.
Oracle's Coherence technology provides replicated and distributed data management and caching services on top of a reliable, highly scalable peer-to-peer clustering protocol. Coherence has no single points of failure; it automatically and transparently fails over and redistributes its clustered data management services when a server becomes inoperative or is disconnected from the network. When a new server is added, or when a failed server is restarted, it automatically joins the cluster and Coherence fails back services to it, transparently redistributing the cluster load.
Recommended uses for Coherence are as either a distributed cache or as a compute grid:
- A distributed cache is the most effective way to alleviate the database bottlenecks. By making the frequently used data available in a cache, applications can see tremendous performance gains.
- A compute grid can be used for compute intensive problems. A business problem is split into granular tasks and distributed to a cluster of machines. As the problem size grows the cluster that processes it can grow in size, thereby making it scalable.
Coherence for Retail
Coherence is ideally suited to enabling scalable e-commerce platforms. Grid Dynamics has proven expertise in developing solutions for leading online retailers. An example is the highly available Service Delivery Platform for the Macys.com website. This platform provides business functions as services to the Macys.com site and partner channels through which the same products are available. The Coherence-based services provided by this platform include:
- Catalog Service — Coherence efficiently caches catalog data to protect your database from overload. When catalog changes are made, Coherence instantly updates the catalog cache everywhere so all customers see the most up-to-date data. The high reliability of the Coherence catalog service ensures that customers and B2B partners don't leave for competitive sites because of reliability or performance problems. With Coherence, e-commerce providers can significantly reduce the costs to deploy, maintain, and operate large web applications. And developers can focus more on delivering more customer features faster, and less on infrastructure concerns.
- Search Service — Coherence supports a high-performance approach to catalog seraching, including complex faceted searches.
- Shopping Bag and Checkout Services — Coherence keeps customers logged in and progressing through checkout, even when application servers are taken offline. The customer's state in the checkout workflow is automatically persisted without overloading your database. The Shopping Bag (or Cart) session can persist across multiple purchase channels (browser, iPhone, in-store terminal, etc.).
- Inventory and Fulfillment — Coherence can process incoming inventory data from suppliers in parallel and dynamically add commodity hardware to handle load spikes and add more capacity on demand. It can combine incoming inventory levels with customer shopping cart activity to ensure accurate stocking information is reflected in the catalog across all application servers. It can process outgoing customer order data and incoming fulfillment data from vendors and shippers in parallel, ensuring that all third-party data streams are processed within a fixed time window.
Coherence for Telecommunications
Building large scale telecom billing systems is a very challenging task—telecom services produce huge amounts of small transactions with very unpredictable access patterns to the data. Usually modern telecom billing systems do not charge customer in real time and instead bill offline. Offline billing is often complemented by a separate system that is responsible for switching off service if customer’s balance is low. Such "early billing" services are usually implemented as a part of mediation system, close to the systems providing service. The current trend is for convergent billing, to address business demands for online billing where a customer's balance is adjusted in real-time and payment for services can be guaranteed.
Convergent billing requires intensive read and write access to customers' balance data, and all changes to balances are strictly transactional. Access patterns are very unpredictable, requiring the data storage technology to support high read and write throughput. Transactions must be very fast and require low latency access to data. In Memory Data Grid technologies such as Coherence can offer reliable, scalable storage on top of clusters of servers and are a perfect option for transaction processing systems such as billing. Each server adds both storage and processing power to the cluster, so scale out is very smooth and is close to linear. Coherence also ensures the superior availability required for high-volume online systems.
Coherence for Financial Services
Coherence can simplify application development, improve performance, and enable new levels of scalability for fault-tolerant applications at much lower cost--all in a solution that can guarantee data correctness like a database, but at in-memory speeds. Some of the key applications are:
- Trading Engines — Matching, trade compression, and order routing are mission critical elements for an efficient trading operation. They have to be fast, reliable, and correct. Users also demand a wide variety of trading modalities, requring the application to be scalable for demand surges, and adaptable to new trading features. Coherence caching technology provides these features.
- Compliance — Financial firms are subject to an expanding list of regulations and guidelines from government agencies like the SEC and the CFTC in the US, the FSA in the UK, as well as industry groups like FINRA. For organizations operating internationally, this complexity is compounded by the need to comply with different agencies in each region or country. Coherence technology delivers reliability, scalability, and performance to compliance applications. It also can simplify these applications dramatically, which reduces design and development costs, help slash costs for databases, message queues, and hardware investment, and lower ongoing operational costs.
- Risk Management — Managing risk involves complex combinations of very large investments. Risk exposure and mitigation strategies need frequent, if not constant assessment, from banking and trading book activities, complex structured products, hedging, and credit risk. Whether the risk application in question is a web-based end-user application that needs reliable workflow, or an application using multi-step Monte Carlo simulation to compute exposures in real time, Coherence's high performance transactional memory can ensure data correctness and improve performance, while reducing development costs and spending on proprietary database and message queue products.
- Pricing and Derivatives — Deriving appropriate pricing for trades in equities, interest rates, mortgages, foreign exchange, and a wide variety of other derivative securities requires serious horsepower. Coherence can give such applications a performance and scalability boost by serving as the backbone of a durable, transactional in-memory computation engine that is simpler to build and maintain. Such applications built with Coherence rely less on databases, message queues, or custom developed caches to retain the myriad interim computational results needed to price these complex securities.