The Oracle Event Processor (OEP) is a component integrated in SOA Suite that provides the capability to process fast data and produce business events from continuous streams of fine grained data events. OEP can consume fast data from various channels – including JMS, EDN, HTTP/REST, RMI – and supports creation of custom adapters for collection fast data from for example Twitter, Messaging systems such as Tibco Rendezvous, Sockets, APIs from financial data feeds etc. Similar adapters are used to publish the outcomes produced by OEP. The integration between OEP and SOA composites and Service Bus hinges on JMS and EDN.
OEP is not only for processing huge volumes of events. It will also be the tool of choice for detection of predefined patterns that span cross process instances and service calls. OEP can be made to remember business events for quite some time and rapidly correlate additional (or missing) events to produce a relevant insight or alert.
In this chapter, we will use OEP to process a simulated feed with car park events that report cars entering and leaving one of the car parks at Saibot Airport. These events are processed to produce messages on JMS whenever a car park is close to filling up. Using the event stream, OEP will detect towing candidates: cars that have been abandoned or that at least have stayed in the car park for longer than 48 hours. OEP will also produce car stay events – derived from the base car entry and car leaving events – that are then aggregated to produce average car stay duration reports.
Finally, OEP is used by the security department at Saibot Airport – to detect a string of suspicious credit card transactions in the airport’s shopping area, following a specific pattern identified in earlier theft cases. Such findings are reported as business events on EDN to be taken care of by one or more SOA composite applications.
Sections in this chapter:
- Introduction to Oracle Event Processor – CarPark Management
- Publish from OEP to JMS
- Publish from OEP to EDN
- Credit Card Theft Detection – OEP, EDN, JMS, Java, ADF
These figures illustrate the components to be developed in this chapter.
Sources for this chapter can be found on Github: Chapter 16 sources.
Additional Resources
Article in OTech Magazine – How Fast Data is Turned Into FAST Information and Timely Action
Guido Schmutz Blog Article: Installing Oracle Event Processor 12c (server)
Blog on CQL and Event Processing by Alexandre Alves
Book: Getting Started on Oracle Event Processing 11g (Packt)
Developing Applications for Oracle Event Processing
Develop Custom Adapters for Oracle Event Processing
Using Visualizer for Oracle Event Processing
Introduction to Server Administration
Installation of a Development Environment with Oracle Event Processing
StreamExplorer
Video: Oracle Stream Explorer – Monitor the health of Devices in real time
Articles on AMIS Technology Blog:
- Quick Introduction to Oracle Stream Explorer – Business User friendly processing of real time events
- Quick Introduction to Oracle Stream Explorer Part Two– Business User friendly processing of real time events (enrichment, calculation)
- Stream Explorer and JMS for both inbound and outbound interaction
- StreamExplorer pushing findings as JSON messages to a WebSocket channel for live HTML Dashboard updates
- StreamExplorer – use REST adapter to feed results from event processing to a REST service
- Use the inbound REST adapter of StreamExplorer to consume events from HTTP POST requests
- Demonstration of Oracle Stream Explorer for live device monitoring – collect, filter, aggregate, pattern match, enrich and publish
- Use Oracle Stream Explorer and the Service Execution Reporter policy to analyze service behavior – find too-late-closing flights on Saibot Airport
- Live Monitoring of SOA Suite Service Execution with Stream Explorer – leveraging Custom OWSM Policy and JMS