1 / 38

Creating an Event-Driven SOA

Creating an Event-Driven SOA. Madhusudhan KM Chief Architect & Head – Central Architecture Group, IT Services, MindTree Ltd. Topics. Concepts, Sample Use case & EDA characteristics EDA Reference Architectures Present & Future applications of EDA Major players in EDA Summary & Conclusion.

seoras
Télécharger la présentation

Creating an Event-Driven SOA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

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

  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 Event Process Service Service Service Data Store 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

  30. Potential future applications

  31. Potential future applications

  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 madhusudhan_km@mindtree.com +91- 99860 48076 www.mindtree.com © 2010 MindTree Limited

More Related