What’s Happening?Part III – CEP and BAM<br />ODTUG Kaleidoscope 2010<br />Thursday, 30th June<br />Lucas Jellema <br />AMI...
Overview<br />EDA and the Event Delivery Network<br />Defining and publishing events – Mediator, BPEL<br />Consuming event...
Need support for:<br /><ul><li>High Volume
Continuous Streaming
Sub-millisecond latency
Time-window processing
Complex pattern matching</li></li></ul><li>Complex Event Processing<br />Below the level of business events, is the league...
Continuous Query Language (CQL)<br />Standard extension to SQL<br />For handling large volumes of events, applying this sp...
Example CQL Query<br />
Event Processing Network<br />Adapters – consuming or producing events<br />Channels – carrying specific event types<br />...
Complex Event Processing<br />Alert<br />JMS<br />Dashboard<br />SOA Applicatie<br />DB<br />Data Warehouse<br />WebServic...
Oracle CEP 11g Architecture<br />Design Time<br />Run Time<br />CEP Visualizer(web console)<br />Other WebApp<br />Eclipse...
Demo: HelloWorld<br />
The EPN source side of things<br />
Case of Temperature<br />Hospital<br />Temperature sensors<br />Cooling units<br />Maternity Ward and IC<br />Fire detecti...
Layout<br />Sensors<br />Clustered<br />Signals over JMS<br />Delivered<br />JMS queue for temperature aggregates<br />Per...
Demo of Temp Aggs<br />
Event Processor for aggregation<br />Group by Cluster<br />Report once every 30 seconds<br />Over all events in the last 6...
Sensor Failure<br />When a sensor has not reported for 30 seconds, we consider it failed <br />And potentially broken down...
Demo of Sensor Failure detection<br />
From CEP to EDN<br />The findings in CEP from the zillions of meaningless events are typically published<br />To JMS for c...
SOA Suite<br />ADF<br />Application<br />ODI<br />E<br />DN<br />@<br />JMS<br />HTTP<br />JMX<br />File<br />DB<br />RSS<...
Case: Failure detection must lead to Human Task<br />First: from CEP to EDN <br />via JMS, JMS Adapter and Mediator<br />S...
Feeding Temperature Aggregate Findings into BAM<br />CEP publishes on JMS<br />CEP is not aware of BAM<br />BAM creates an...
CEP feeding into BAM<br />Case: temperature aggregates<br />Create external Data Object based on table<br />Create Data Ob...
Arrow turning red if only one cluster reports a deviation<br />
35<br />Summary<br />SOA strives for Business Agility through Decoupling<br />Reuse, encapsulation, clean interfaces, mini...
Summary<br />Events are to published by any process, service or application that first detects them<br />Based on predefin...
Summary<br />EDN in SOA Suite 11g<br />Leverages JMS or AQ internally<br />Does not apply authorization in any way<br />Do...
Summary<br />BAM for Business Activity Monitoring<br />Real time insight in ongoing operations<br />Active Data Cache cont...
Upcoming SlideShare
Loading in …5
×

It's Happening - on Event Driven SOA - Part Three - CEP and BAM (ODTUG Kaleidoscope 2010)

3,278 views

Published on

When should a process start or a service be activated? The trigger can be a requirement in an application, process, or service that then invokes the service or process. However, frequently the link is not that straightforward. When 'something happens' (a business event!), that should lead to the start of other actions or the continuation or redirection of running processes. However, whose responsibility is it to determine that a business event has taken place, and even more importantly, who to notify? The process instance that happens to produce an event should not bare the burden of finding out who needs to be notified—especially as the list of interested parties can be hugely dynamic. Nor should the event be presented to any service, composite application, or process to check out whether perhaps it wants to consume it.
This session discusses Event-Driven SOA—an architecture where applications, processes, and services can produce business events, and interested consumers are notified of those events—through the mediation by the SOA Suite 11g Event Delivery Network (EDN). In this session, we will see how business events are defined across the enterprise, and how an interest in specific types of business events (with specific payloads) can be registered. The session demonstrates how events can be produced, how they are processed by the EDN, and handed to the interested parties. Special attention is given to the correlation of events, ensuring that the correct composite instance is provided with the event. We will discuss how the events can not only originate within the SOA Suite, but also outside of it, through AQ, PL/SQL and Java, ADF BC, and JMS. As a last step, we will discuss Complex Event Processing (CEP) as a potential source of business events. CEP will handle large volumes of small, usually insignificant events. However, by filtering, aggregating, and analyzing for deviations and threshold transgressions, CEP will occasionally find business events that are subsequently sent to the Event Delivery Network. This session has many demonstrations (end-to-end).

Published in: Technology
1 Comment
4 Likes
Statistics
Notes
  • i need total bam
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
3,278
On SlideShare
0
From Embeds
0
Number of Embeds
128
Actions
Shares
0
Downloads
0
Comments
1
Likes
4
Embeds 0
No embeds

No notes for slide
  • Demo in plain SQL: http://technology.amis.nl/blog/3569/simple-event-processing-using-sql-with-analytical-functions-to-detect-traffic-patterns
  • It's Happening - on Event Driven SOA - Part Three - CEP and BAM (ODTUG Kaleidoscope 2010)

    1. 1. What’s Happening?Part III – CEP and BAM<br />ODTUG Kaleidoscope 2010<br />Thursday, 30th June<br />Lucas Jellema <br />AMIS, The Netherlands<br />
    2. 2. Overview<br />EDA and the Event Delivery Network<br />Defining and publishing events – Mediator, BPEL<br />Consuming events – inside SOA and outside<br />Advanced EDN patterns, ADF BC, Database<br />Missing Event detection and Forum pattern<br />Complex Event Processing and BAM<br />Analyzing streams of low level events: exception detection, aggregation, pattern analysis, … <br />Publishing Business Events to EDN and feeding into Business Activity Monitoring<br />
    3. 3. Need support for:<br /><ul><li>High Volume
    4. 4. Continuous Streaming
    5. 5. Sub-millisecond latency
    6. 6. Time-window processing
    7. 7. Complex pattern matching</li></li></ul><li>Complex Event Processing<br />Below the level of business events, is the league of real time events<br />Continuous stream of a multitude of tiny events with hardly any payload, most of which are not interesting at all<br />Sent from physical sensors (temperature, pressure, RFID, security gates), process sensors, database triggers, web servers, ESBs, stock trade tickers, …<br />By detecting patterns, deviations, aggregations in these event streams, business events (alerts, consolidated findings,..) can be constructed<br />Complex Event Processors and CQL (Continuous Query Language) are used for that task <br />
    8. 8. Continuous Query Language (CQL)<br />Standard extension to SQL<br />For handling large volumes of events, applying this special language for event analysis executing the queries continuously<br />Operates on streams of continually arriving events instead of static data sets<br />Results keep being produced<br />Results can be stream themselves or a relation<br />Is used for comparing events of same type, to find<br />Trends and Patterns<br />Exceptions<br />Aggregates<br />
    9. 9. Example CQL Query<br />
    10. 10. Event Processing Network<br />Adapters – consuming or producing events<br />Channels – carrying specific event types<br />Processors – running CQL<br />
    11. 11. Complex Event Processing<br />Alert<br />JMS<br />Dashboard<br />SOA Applicatie<br />DB<br />Data Warehouse<br />WebService<br />File<br />events<br />Complex Event Processor<br />JMS<br />HTTP<br />JMX<br />File<br />DB<br />Event Consumer<br />
    12. 12. Oracle CEP 11g Architecture<br />Design Time<br />Run Time<br />CEP Visualizer(web console)<br />Other WebApp<br />Eclipse<br />http<br />CEP<br />plugin<br />Web (Bayeux)Server<br />CEP Server<br />DB<br />JMS<br />
    13. 13. Demo: HelloWorld<br />
    14. 14. The EPN source side of things<br />
    15. 15. Case of Temperature<br />Hospital<br />Temperature sensors<br />Cooling units<br />Maternity Ward and IC<br />Fire detection<br />Frequent readings (subsecond)<br />Monitoring for: trends of threshold crossing, fire!, fault detection<br />
    16. 16. Layout<br />Sensors<br />Clustered<br />Signals over JMS<br />Delivered<br />JMS queue for temperature aggregates<br />Per cluster, once every 30 seconds<br />JMS queue for failed sensor detection<br />
    17. 17. Demo of Temp Aggs<br />
    18. 18. Event Processor for aggregation<br />Group by Cluster<br />Report once every 30 seconds<br />Over all events in the last 60 seconds<br />
    19. 19.
    20. 20. Sensor Failure<br />When a sensor has not reported for 30 seconds, we consider it failed <br />And potentially broken down<br />CEP needs to trap the missing events and report those <br />
    21. 21. Demo of Sensor Failure detection<br />
    22. 22.
    23. 23. From CEP to EDN<br />The findings in CEP from the zillions of meaningless events are typically published<br />To JMS for consumption by Java applications<br />To HTTP consumers (or Oracle BAM via JMS) for real-time dashboards<br />To database or log-files for subsequent analysis<br />To JMS and onwards to the SOA Suite Event Delivery Network – promotion to business event<br />
    24. 24. SOA Suite<br />ADF<br />Application<br />ODI<br />E<br />DN<br />@<br />JMS<br />HTTP<br />JMX<br />File<br />DB<br />RSS<br />Alerts<br />(rules)<br />Reports<br />JMS<br />CEP<br />BAM<br />HTTP Consumers<br />
    25. 25. Case: Failure detection must lead to Human Task<br />First: from CEP to EDN <br />via JMS, JMS Adapter and Mediator<br />Second: from EDN to Human Task<br />Via Mediator or BPEL<br />=> we have seen this step already<br />
    26. 26.
    27. 27.
    28. 28.
    29. 29. Feeding Temperature Aggregate Findings into BAM<br />CEP publishes on JMS<br />CEP is not aware of BAM<br />BAM creates an enterprise message source<br />Based on JMS and MapMessages<br />Feeding into a Data Object in the Active Data Cache<br />BAM listens on the JMS Queue and maps the messages to the ADC Data Object<br />
    30. 30. CEP feeding into BAM<br />Case: temperature aggregates<br />Create external Data Object based on table<br />Create Data Object TemperatureSensorCluster<br />With lookup fields for target temperatur and location, taken from external Data Object<br />Create Enterprise Message Source<br />Create Report<br />Run Report<br />
    31. 31.
    32. 32.
    33. 33.
    34. 34.
    35. 35. Arrow turning red if only one cluster reports a deviation<br />
    36. 36.
    37. 37.
    38. 38. 35<br />Summary<br />SOA strives for Business Agility through Decoupling<br />Reuse, encapsulation, clean interfaces, minimize dependencies<br />EDA (Event Driven Architecture) can be seen as the Extremely Decouple Architecture<br />Complementing SOA in mediating between parties<br />Event publisher and consumer are decoupled<br />An event mediator handles subscriptions and distribution of published events<br />
    39. 39. Summary<br />Events are to published by any process, service or application that first detects them<br />Based on predefined business event types<br />Producer of an event can hand it over to the event mediator (Event Delivery Network)<br />Subscriptions can be registered with the EDN for events of predefined types<br />Using a content based filter<br />BPEL, Mediator and BPMN can produce and consume events<br />
    40. 40. Summary<br />EDN in SOA Suite 11g<br />Leverages JMS or AQ internally<br />Does not apply authorization in any way<br />Does not keep track of events it has delivered<br />
    41. 41. Summary<br />BAM for Business Activity Monitoring<br />Real time insight in ongoing operations<br />Active Data Cache contains Data Objects on which reports are created<br />Data Objects are fed by JMS, ODI, WebService,…<br />SOA Suite integrates with BAM in several ways<br />BAM Adapter Service<br />BPEL BAM Sensor Action<br />BPEL Monitors<br />
    42. 42. Summary<br />Complex Event Processing<br />For analysis of real time, high volume, continuous streams of fine grained events<br />Used for detecting patterns, spotting exceptions, calculating aggregates and track trends<br />CEP uses CQL queries to derive information from event streams<br />Results are published as events – typically to outbound JMS queues<br />That can feed into SOA Suite or BAM (or CEP)<br />
    43. 43. Summary<br />Thinking in terms of events will allow synergy without coupling<br />Asynchronous communication in its purest form<br />(as partners are unaware of each other)<br />Steps:<br />Identifying business events<br />Publishing them whenever they are first spotted<br />Anyone requiring information about events (like Jenny’s colleagues) can subscribe<br />
    44. 44. Resources<br />Presentation and demos are on our blog<br />http://technology.amis.nl/blog<br />Contact me at:lucas.jellema@amis.nl<br />

    ×