Presentation is loading. Please wait.

Presentation is loading. Please wait.

Creating an Event-Driven SOA

Similar presentations

Presentation on theme: "Creating an Event-Driven SOA"— Presentation transcript:

1 Creating an Event-Driven SOA
Madhusudhan KM Chief Architect & Head – Central Architecture Group, IT Services, MindTree Ltd

2 Topics Concepts, Sample Use case & EDA characteristics
EDA Reference Architectures Present & Future applications of EDA Major players in EDA Summary & Conclusion

3 Event driven world We all live in an event driven world All animals along with human beings respond to events of two types ; opportunities & threats Zebras on the savannah sense and respond to the opportunity of a water hole or the threat of a lion. Banks track credit card usage to stop fraudulent charges as they occur We pick telephone calls when it rings. We do not pick other’s telephone (usually)…sometimes, we also filter our own calls if the number if unknown We have cognitive sensors and filters that help us to concentrate on events that are important to us and ignore events that are not related to us (or at least we think they are not related !!) Are enterprises using sensors to respond to business opportunities and to fight threats at right time ??

4 Events – Airline Use Case
BLR-Dubai-LHR I will miss my connecting flight I will have to cancel my hotel reservation and car rental booking I will have to cancel my meetings Flight gets delayed Dubai Airport Cabin crew to serve another flight in Dubai Ground operations staff at destination will have to arrange alternate crew Make sure the passengers are accommodated on the next connecting flight Book hotels for passengers if the wait time is more than six hours We can’t serve the next flight to start from destination of this flight

5 Events – Airline Use Case
Event - Flight delayed Impact on passenger traveling for business purposes Might miss a connecting flight Might need to cancel/change hotel reservation & car rental reservation Might need to cancel/postpone a meeting Impact on Airline The flight crew may miss their next flights. The flights must be delayed or replacement crews assigned. Crew members who are passengers on the current flight may not be available for their assigned flights. Catering provider might have to be notified of this event if the meal preparation should be delayed / cancelled. If there are priority passengers on the flight, airlines may want to see how these priority passengers are affected and what could the airline do to reduce the inconvenience to priority passengers.

6 Events – Concepts & Terms
What is an Event ? An event is a notable thing that happens inside or outside your business. An event (business or system) may signify a problem or impending problem, an opportunity, a threshold, or a deviation. Examples A financial trade An airplane lands A sensor outputs a reading A change of state in a database or a finite state machine A key stroke A natural occurrence such as an earthquake

7 Events – Concepts & Terms
Simple Event : Any event in its simplest form Flight delay event Complex Event : An event that is an abstraction of other events called its members. The 1929 stock market crash – an abstraction denoting many thousands of member events, including individual stock trades) The 2004 Indonesian Tsunami – an abstraction of many natural events Derived event : An event that is generated as a result of applying a method or process to one or more other events. An event reporting that company B has entered the bidding to take over A with probability 0.9, might be derived from an event reporting that the price of company A’s stock has jumped 10% in 5 minutes. The absence of an event, say in a given time interval, can lead to a derived event reporting that the first event did not

8 Events – Concepts & Terms
Event Driven Architecture : An architectural style in which some of the components are event driven and communicate by means of events. Simple Event Processing: In simple event processing, a notable event happens, initiating downstream action(s). Simple event processing is commonly used to drive the real-time flow of work—taking lag time and cost out of a business. Stream Event Processing : In stream event processing, linearly ordered stream of events are processed Events (orders, RFID transmissions, etc) are both screened for notability and streamed to information subscribers. Stream event processing is commonly used to drive the real-time flow of information in and around the enterprise––enabling in time decision making A stream may contain events of different types

9 Events – Concepts & Terms
Complex Event Processing : A sophisticated form of EDA that is used to extract the information value from multiple events. CEP systems find patterns in event data to detect opportunities and threats. Timely alerts are then pushed to the appropriate recipients, often using Business Activity Monitoring (BAM) dashboards. The result is faster and better operational decisions and more timely responses. In CEP, events usually across types, occur over long period of time Event correlation can be casual / temporal / spatial Few possible of application of CEP are Algorithmic trading, Fraud monitoring and detection, Global epidemic warning, Air traffic control, Self tuning databases, Adaptive middleware, etc.

10 Event Driven Architecture – Few characteristics
Model SOA EDA Interaction Request – Response Request – Callback Sense - Respond Pub – Sub Invocation Client/user driven Event driven Relationship 1 : 1 Client : Service provider 1 : n Event source : Event sinks Flow Top down Client  Service provider  data Complex flow

11 Events – Airline Use Case
Event Management Engine Event Consumer SMS to Passenger – Your Flight delayed ; You are booked on alternate flight Event Consumer Event Producer Trigger a business process in Airline reservations to take care of rebooking passengers who missed connecting flights Event Consumer Trigger a business process in Flight operations to arrange new set of cabin crew for the flight to start at destination

12 Events – Tying concepts together
Consumers receive events based on rules, filters, etc. Producers could be business processes, services/transactions, state change in state of entity in DB, user actions on applications, etc Consumers have no obligation to producers Consumers are usually producers too Event Producers Event Hub Event Consumers

13 Events – Moving from Loose coupling to Minimal coupling
Service Event Data Store Process Service Service Event Event Legacy Business Processes and Services are not hardwired…..instead, they are linked via events

14 Event Driven SOA – Reference Architectures

15 A framework for handling highly concurrent systems

16 A framework for handling highly concurrent systems

17 A framework for handling highly concurrent systems

18 Staged Event Driven Architecture - SEDA
Each Stage contains an incoming event queue, a thread pool, an event handler and a controller Each stage can be independently managed Stages can be run in series or in parallel or a combination of the two Each stage is separated by a queue Use of event queues allows each stage to be individually load conditioned by using proper thresholds

19 Benchmark of HTTP servers

20 Simple Event Processing
Source : Event-Driven Architecture Overview by Brenda M. Michelson, Sr. VP and Sr. Consultant, Patricia Seybold Group

21 Stream Event Processing
Source : Event-Driven Architecture Overview by Brenda M. Michelson, Sr. VP and Sr. Consultant, Patricia Seybold Group

22 Complex Event Processing
Source : Event-Driven Architecture Overview by Brenda M. Michelson, Sr. VP and Sr. Consultant, Patricia Seybold Group

23 Event Processing in Business Intelligence
Analyst driven BI Ad-hoc queries, Periodic reports, data mining, etc Output is mainly used for planning Process driven BI Some process driven BI systems use near real time information using BAM (Business Activity Monitoring) Input for BAM is event data that arrived in the last few seconds/minutes Historical data is used to put the new data in in context and to enrich the information before it is distributed Strategy driven BI Used to measure and manage overall business performance Are we on track to meet our monthly target ?

24 Periodic intelligence v/s Continuous intelligence
Event driven system sends alert when things occur and not based on predetermined schedule or upon receiving ad-hoc query Reports complex events like exceptions events on KPI They operate fast enough to allow operations staff to intervene in a transaction when it is still in flight Source : Event Processing : Designing IT systems for Agile companies by Mani Chandy & Roy Schutle

25 Few applications of EDA & CEP

26 Algorithmic trading Algorithmic trading is achieved using computer algorithms deciding on aspects of the order such as timing, price & quantity of the order CEP engines are now used to predict a trend to make use of both sides of the market (ups & downs) As of 2006, a third of all EU and US stock trades were driven by automatic programs or algorithms Multiple players in capital market segment are using CEP engines for algorithmic trading Bluecrest, Wall street on demand (WSOD), SunGard, etc

27 Fraud detection A 2006 CyberSource report stated that 2.8 billion USD was lost to online fraud in US & Canada in 2005 Requirements Stop new account setups from fraudulent IP addresses Verify user identity in every user transaction based on click behavior Identify multiple users trying to login from same IP address Identify single user logins from multiple IP addresses within a time span Fraud detection systems enabled with CEP products are being used in Banks, Betting companies, Insurance companies, etc In Banks, multiple withdrawals made from a card within a specific time interval from locations that are distance apart indicates a fraud

28 Air Traffic Control Autonomous event-driven air traffic management system spanning the world. Why is it needed ? Crowded air space The technology used in ATC is dated (1960) Source : The Future Event Driven World Scenario 1: Air Traffic Management by David Luckham

29 Potential future applications
Business Intelligence Algorithmic Trading Fraud Detection Event-Driven SOA Business Activity Monitoring Supply Chain Visibility Autonomic Computing Self-tuning databases Planning systems Self configuring hardware and software systems Adaptive middleware Travel Industry Air Traffic Control Baggage Tracking and Tracing Passenger Security Automatic re-accommodation Intelligent baggage tracking Aircraft maintenance based on real time information

30 Potential future applications
Health Care Global Epidemic Warning Hospital Patient Monitoring Home Monitoring Systems RFID In-Body Monitoring Ambient Intelligence Smart Homes Smart Cities Personalized Mobile Information Systems Homeland Security Storm Evacuation Systems First Responder Systems Terrorism Situational Awareness Power, Fuel, and Water System Monitoring

31 Potential future applications
Environmental Systems Wind Engineering Weather Systems Water Sources Habitat Conservation Military Systems Command and control systems Physical Infrastructure Monitoring Transportation Systems Traffic Management Produce Tracking Systems Truck Routing Systems

32 Major Players in EDA & CEP space

33 What to look for in EDA & CEP Products
Event Pattern Matching Event Stream Processing Ability to support multiple event patterns Filter, Enrich, Split, Aggregate, Correlate SQL like Event Query Language support Variety of event data storage options Support for multiple event type representations like Java Object & XML Multiple integration options Tools for event modeling & visualization with rich IDE along with debugging features Event history replay JMX instrumentation Ability to expose services and to integrate into ESB products

34 EDA & CEP – Major Players
BusinessEvents Oracle CEP ; Able to process 1 million events/sec with low latency Websphere Business Events Apama Event Processing Platform ; Specialize in solutions to capital markets like Algorithmic trading, Smart order routing, etc Aleri Streaming Platform; Specialize in stream event processing Event Processing Platform ; Specialize in stream event processing Vhayu Velocity : High performance solution used widely for tick data management allowing users to perform real-time and historical market data analysis in a single CEP platform. Event Processing & CEP Platform ; Open source CEP platform

35 Summary & Conclusion

36 Summary & Conclusion Organizations should gear up to sense opportunity and threat events from both inside and outside Event Driven Architecture combined with SOA will enable organizations to achieve this Technology products to support EDA+SOA are maturing There are many interesting futuristic use cases that are possible in different domains So…Let us sense this opportunity and respond by creating some interesting solutions

37 Acknowledgements Understanding Event-Driven Architecture : Article by Roy Schutle and Dr K Mani Chandy Event Processing Glossary by David Luckham, Roy Schulte The Future Event Driven World Scenario 1: Air Traffic Management by David Luckham A Design Framework for Highly Concurrent Systems by Matt Welsh, Steven D. Gribble, Eric A. Brewer, and David Culler, Computer Science Division University of California, Berkeley SEDA: An Architecture for Well conditioned, Scalable Internet Services by Matt Welsh, David Culler, and Eric Brewer Computer Science Division University of California, Berkeley Event-Driven Architecture Overview, Event-Driven SOA Is Just Part of the EDA Story by Brenda M. Michelson Sr. VP and Sr. Consultant, Patricia Seybold Group

38 Successful Customers Happy People Innovative Solutions Our Mission
Madhusudhan KM Chief Architect & Head – Central Architecture Group, IT Services, MindTree Ltd © 2010 MindTree Limited 38

Download ppt "Creating an Event-Driven SOA"

Similar presentations

Ads by Google