Getting Started Guide

     Previous  Next    Open TOC in new window    View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Overview of Oracle Complex Event Processing

This section contains information on the following subjects:

 


Introduction to Oracle Complex Event Processing

Oracle Complex Event Processing, or Oracle CEP for short, is a low latency, Java based middleware framework for event driven applications. It is a light weight application server which connects to high volume data feeds and has a complex event processing engine (CEP) to match events based on user defined rules.

Oracle CEP has the capability of deploying user Java code (POJOs) which contain the business logic. Running the business logic within Oracle CEP provides a highly tuned framework for time and event driven applications.

Conceptual Overview of Oracle CEP

The following graphic provides a high level view of an event-driven system:

An event-driven system is generally comprised of several event sources, the real-time event-driven (Oracle CEP) applications, and event sinks. The event sources generate streams of ordinary event data. The Oracle CEP applications listen to the event streams, process these events, and generate notable events. Event sinks receive the notable events.

Event sources, event-driven applications, and event sinks are de-coupled from each other; one can add or remove any of these components without causing changes to the other components. This is an attribute of event driven architectures.

Event-driven applications are rule-driven. These rules, or queries, which are persisted using some data store, are used for processing the inbound stream of events, and generating the outbound stream of events. Generally, the number of outbound events is much lower than that of the inbound events.

Oracle CEP is a middleware for the development of event-driven applications. An Oracle CEP application is essentially an event-driven application.

Next, consider the application itself, which is hosted by the Oracle CEP infrastructure, a light-weight container. It can be described by the following diagram:

An Oracle CEP application typically comprises of four main component types. Adapters interface directly to the inbound event sources. Adapters understand the inbound protocol, and are responsible for converting the event data into a normalized data that can be queried by a processor (i.e. event processing agent, or processor). Adapters forward the normalized event data into Streams. Streams are event processing endpoints. Among other things, streams are responsible for queuing event data until the event processing agent can act upon it. The event processing agent removes the event data from the stream, processes it, and may generate new events to an output stream. The user code registers to listen to the output stream, and is triggered by the insertion of a new event in the output stream. The user code is generally just a plain-old-Java-object (POJO). The user application makes use of a set of external services, such as JMS, WS, and file writers, to forward on the generated events to external event sinks.

Event Processing Networks

Adapters, streams, processors, and business logic POJOs can be connected arbitrarily to each other, forming event processing networks (EPN). Examples of topologies of EPNs are:

EPNs have two important attributes.

First, event processing networks can be used to create hierarchy of processing agents, and thus achieve very complex processing of events. Each layer of the EPN aggregates events of its layer into complex events that become simple events in the layer above it.

A second attribute of event processing networks is that it helps with integrability, that is, the quality of having separately developed components work correctly together. For example, one can add user code and reference to external services at several places in the network.

 


Use Cases

The use cases for Oracle CEP span a variety of businesses:

 


Summary of Oracle CEP Features

The following list summarizes the main features of Oracle CEP:

 


Supported Platforms

The following table displays the supported platforms for Oracle CEP 10gR3.

Table 2-1 Oracle CEP 10gR3 Supported Platforms
Operating System
Hardware
JVM w/ JDK 1.5.x
Release Date
Oracle Enterprise Linux 4 / OVM
x86
JRockit 32
RTM
Oracle Enterprise Linux 4 / OVM
x86-64
JRockit 32
RTM
Redhat Linux 4
x86
JRockit 32
RTM
Redhat Linux 4
x86-64
JRockit 32
RTM
Oracle Enterprise Linux 5.0 / OVM
x86
JRockit 32
RTM
Oracle Enterprise Linux 5.0 / OVM
x86-64
JRockit 32
RTM
Redhat Linux 5.1
x86
JRockit 32
RTM
Redhat Linux 5.1
x86-64
JRockit 32
RTM
SUSE Linux 9
x86
JRockit 32
RTM
SUSE Linux 9
x86-64
JRockit 32
RTM
SUSE Linux 10
x86
JRockit 32
RTM
SUSE Linux 10
x86-64
JRockit 32
RTM
Windows 2003 SP1+
x86
JRockit 32
RTM
Windows 2003 SP1+
x86-64
JRockit 32
RTM
Windows Vista (client only)
x86
JRockit 32
RTM
Windows Vista (client only)
x86-64
JRockit 32
RTM
Windows XP SP2 (client only)
x86
JRockit 32
RTM
Windows XP SP2 (client only)
x86-64
JRockit 32
RTM
Solaris 10
Sparc 64
JRockit 64
Post-RTM

 


Oracle CEP Development Environment for Eclipse

Oracle provides an IDE targeted specifically to programmers that want to develop Oracle CEP applications. Oracle CEP Development Environment for Eclipse is a set of plugins for the Eclipse IDE designed to help develop, deploy, and debug applications for Oracle CEP 10.3.

The key features of this IDE are as follows:

Although it is not required or assumed that you are using this IDE, Oracle recommends that you give it a try. For details, see Oracle CEP Development Environment for Eclipse.

 


Next Steps


  Back to Top       Previous  Next