SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Complex Event Processing
                                                     Quoi, Pourquoi, Comment?
                                                                 Fabien Coppens
                                                               Alexandre Vasseur



©OCTO Technology – Université d’été du Système d’information
Objectives

•   Understand what Complex Event Processing (CEP) is
•   Where does CEP fit in SOA/EDA/BAM/BI/RDBMS
•   Learn about CEP use cases
•   Discover CEP adoption paths
Speaker Qualifications

• Fabien Coppens
• Senior Architect
• CEP user




• Alexandre Vasseur
• Middleware technology evangelist
• Esper co-lead & early CEP fan
The « Right-Time » Enterprise
                                           Situation
• Business is data-driven
   – More data, more sources                       Events
   – More complex situational scenarios
• Right-time is                                        Time
   – A business imperative
   – A technology challenge                        Push
      •   Strong coupling!                    Loosely coupled
      •   Request/Response!
                                                  Time &
      •   Data stored and later analyzed
                                                Event-Driven
      •   Moving requirements

                                           Action/Decision
SOA + EDA + XTP + Edge + BAM/BI
                        Convergence: Event Processing
« By 2011, a new generation of application platforms stemming from
   the convergence of extreme transaction processing (XTP)
   technologies will supersede Java EE and .NET as the platform of
   choice for large-scale, business-critical operational applications.“
   Gartner, July 2007




                        Large scale SOAs
                RFID BAM & monitoring
 Financial Services Sensors
   Fraud detection    Location/presence based services
             Security


                         Right-Time + Events
Event Processing
    Simple, Streaming, Complex / Business EP
•   Simple                                  •   Consumer/Producer, JMS, ESBs, EIP
     – Route, Filter, Enrich                    – Stateless & Timeless


•   Streaming                               •   How?
     – min,max,avg                              – « Event Stream Processing »
     – Sliding data windows                     – Statefu-less / Timefu-less


•   Complex / Business                      •   How??
     – Many streams                             – Continuous joins and indexing
     – Causality                                – Time as first class citizen
       A followed by B                               • Temporal requests
         within t minutes
                                                – Statefull / Timefull
     – Different rates
     – Historical data and real time data



                When [CEP] then […]
CEP’s Friends
• Edge
   – Produce zillions of events
• SOA
   – Interconnect, mediate, leverage and reuse
• XTP
   – Scale throughput and data volumes as required
   – Right-time down to sub-millisecond where needed

                                                 • Rules engine
          When [CEP] then […]                       If … then […]
CEP
          Situational & Actionable Awareness


• BAM & BI (or back to SOA)
   – Operational applications
CEP ~ Database 2.0 ?
• RDBMS                       • CEP
   – Store data (a lot)          – Store rules
   – Handle queries              – Handle data
   – SQL (ie abstracted)         – EPL: Event Processing Language
• Request/Response            • Subscribe/Notify
• Concept of Time             • Time & causality
• Right time                  • « Continuous query »



                                            CEP Server
        Database
                                            EPL Queries

       SQL Queries



                                               CEP
Event Processing Language & CEP Server

                         •   EPL: For right-time events, what SQL is to historical data
                              – Best practices, rapid prototyping, tooling, less custom code
                         •   CEP server: Middleware to deal with recurrent complexity
                              – indexing, state management, scalability, management, connectivity etc
                                 Transports                                      Is EPL expressive enough
                                                   Dashboards                    (build vs buy)
                                   In & Out
                                                                                                Is EPL a standard
                                             CEP Application
                                                                                                (vs SQL)

                                    Source + CEP as EPL + Sink                                  Is it a specialized RDBMS or a
                                                                                                true engine? Does it require a


                                                                           Runtime Management
                                                                           Runtime Management
Record / Replay / Test
Record / Replay / Test




                                                              Time &                            RDBMS?
                                  Filter, Aggregate
                                                             Causality
                                                                                                Manageable?
                                               Sliding windows                                  Scalable
                                             Continuous execution
                                                                                                Interoperate?
                                       State management, threading



                                 Interrop.             High Availability
#1: Algorithmic trading

• Volume Weighted Average
select ticker, avg(price), count(*), sum(price)
from MarketData(ticker=‘GOOG').win:length(1000)

                 Simple Event Processing
                                           Stream Processing (Timefull)




• Example CEP server performance figures
   –   1 CEP server, Java based, TCP in/out
   –   1000 CEP statements
   –   500 000 evt/s [100 Mbit/s]
   –   Latency: avg 2.5µs, 99% < 10µs
   –   4 core 2GHz, 65% load avg
#1: Build vs Buy?
                                                     Avg price / last 2 ticks, per ticker
        MarketData(GOOG, 50) list = new MyList(GOOG,2)
                             /*2 = size*/
                             // on event
      MarketData(MSFT, 25)
                             list.add(tick)
                             // some tick discarded
                             // as list size was
        MarketData(GOOG, 30) // harcoded with size 2
                             //TODO: do not hardcode
                                                                              GOOG:40
                             // recompute avg
        MarketData(GOOG, 40) //TODO: optimize this
                             send computeAvg(list)
                                                                              GOOG:35



Receive market data
                       • Functional specification?
                       • Abstraction for user defined rules?      Output / trigger actions
                       • Performance & monitoring etc?
#2: Fraud and compliance, risk management

Context
   – FX trading
   – Event { Trade direction, amount, user id, account, currencies traded }
   – 200 000 evt/day, 50 rules, ~5% of triggering

Two (or more) buy trades followed by ( ) a sale within the next hour
  between 2 parties

  select e1, e2, final from pattern [
  every e1=FXTrade(userId in (100,101))
     (e2=FXTrade(userId in (100,101), dir = e1.dir)
      where timer:within(8 hours)
  )    final=FXTrade(userId in (100,101), dir != e1.dir)
  where timer:within(1 hour)   ]
#3: Location based services
Context:
• Mobile asset management (Command & Control systems)
• Tracking delay between real time position and planned position
     – 20% time left to reach destination, 10% delta from planned position
•   Continuous join with reference (passive) data



select id, lat, lon, time-ref.time,
Utils.distance(lat,lon,ref.lat,ref.lon)
 as distance
from GPSPosition,
sql:RefDB [
   select lat, lon, time from Plan
   where id={id} and stage=‘JFK’
] as ref
where time<0.8*ref.time and
Utils.distance(lat,lon,ref.lat,ref.lon)>1.1*SPEED*(0.8*ref.time-time)
#4: Trading as SaaS : Strateer

•   Algo trading as SaaS
•   CEP is a core enabler
•   Users can configure their own trading strategies
•   ~20 CEP rules templates provided
    – Each configurable by end users
• Power users can create their own rules

• Esper CEP + JMS + MarketData connectors + RIA
#4: Strateer use case




                         1.

                     Drag & Drop          2.
                       your own
                      automated     Test it the way
                       strategy    fund managers
          3.
                                           do
                                                                           5.

      Then run it                                          4.          Share and
     on Strateer:                                                       compare
                                                      Get trading
    1000s of data                                                     results with
                                                      alerts to you
    sources, real-                                                    community
                                                        anytime,
     time engine.
                                                       anywhere.




Strateer is algorithmic trading for individual
                   investors
#4: Strateer architecture
Solutions (excerpt)




Single use case platform (trading,       Event Processing = Middleware
compliance, BI ..)
xxx Event Processing                     x = Simple / Stream / Complex / Rules




                                     ?
Mandates a DB?                           In-memory vs hidden DB vs DB
Latency / Throughput                     1 to 1000 if not more range
Of the shelf?                            Interoperate? Open platform?
Proven / Innovating                      …
Maturity                                 …
Cost (Buy + Learn + Operate)             …
Adoption: Risks & Benefits
         “CEP is mature? CEP is really not ESP? CEP is
         really event-driven SOA? CEP is really real-time
         BI? CEP is really low latency, high throughput,
         white-box COTs algo trading? CEP is really not a
         type of BPM? CEP is not really for detecting
         complex events? Complex does not really mean
         complex?” [as seen on blogs]




                              Use case driven




?
                              Build vs Buy
                              SOA/BI/BAM related
                              Orthogonal processing
                              (discover & monitor)
                                 vs
                              path critical processing
                              (act upon)
Links

• http://esper.codehaus.org
• http://www.espertech.com
• http://complexevents.com

• And many other googling around or asking your favorite
  vendors (!)

Weitere ähnliche Inhalte

Was ist angesagt?

Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...CloudOps Summit
 
Don't call us - we'll push - on cross tier push architecture (NLJUG JFall 201...
Don't call us - we'll push - on cross tier push architecture (NLJUG JFall 201...Don't call us - we'll push - on cross tier push architecture (NLJUG JFall 201...
Don't call us - we'll push - on cross tier push architecture (NLJUG JFall 201...Lucas Jellema
 
Powered by Oracle! Te ayudamos a distribuir tu aplicación en todo el mundo
Powered by Oracle! Te ayudamos a distribuir tu aplicación en todo el mundoPowered by Oracle! Te ayudamos a distribuir tu aplicación en todo el mundo
Powered by Oracle! Te ayudamos a distribuir tu aplicación en todo el mundoGeneXus
 
Randy Shoup eBays Architectural Principles
Randy Shoup eBays Architectural PrinciplesRandy Shoup eBays Architectural Principles
Randy Shoup eBays Architectural Principlesdeimos
 
Data Warehousing Infrastructure on Cloud
Data Warehousing Infrastructure on CloudData Warehousing Infrastructure on Cloud
Data Warehousing Infrastructure on Cloudtdwiindia
 
TAUS Scotland Asia Online Technology Platform V1
TAUS Scotland  Asia Online Technology Platform   V1TAUS Scotland  Asia Online Technology Platform   V1
TAUS Scotland Asia Online Technology Platform V1Kirti Vashee
 
Sybase Complex Event Processing
Sybase Complex Event ProcessingSybase Complex Event Processing
Sybase Complex Event ProcessingSybase Türkiye
 
Large-Scale Search Discovery Analytics with Hadoop, Mahout, Solr
Large-Scale Search Discovery Analytics with Hadoop, Mahout, SolrLarge-Scale Search Discovery Analytics with Hadoop, Mahout, Solr
Large-Scale Search Discovery Analytics with Hadoop, Mahout, SolrDataWorks Summit
 
Tim Mackinnon Agile And Beyond
Tim Mackinnon Agile And BeyondTim Mackinnon Agile And Beyond
Tim Mackinnon Agile And Beyonddeimos
 
Searching conversations with hadoop
Searching conversations with hadoopSearching conversations with hadoop
Searching conversations with hadoopDataWorks Summit
 
JDE & Peoplesoft 3 _ Sumedh Vipradas _ Reduce Invoice Processing Costs and Cy...
JDE & Peoplesoft 3 _ Sumedh Vipradas _ Reduce Invoice Processing Costs and Cy...JDE & Peoplesoft 3 _ Sumedh Vipradas _ Reduce Invoice Processing Costs and Cy...
JDE & Peoplesoft 3 _ Sumedh Vipradas _ Reduce Invoice Processing Costs and Cy...InSync2011
 

Was ist angesagt? (12)

Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
 
Don't call us - we'll push - on cross tier push architecture (NLJUG JFall 201...
Don't call us - we'll push - on cross tier push architecture (NLJUG JFall 201...Don't call us - we'll push - on cross tier push architecture (NLJUG JFall 201...
Don't call us - we'll push - on cross tier push architecture (NLJUG JFall 201...
 
Powered by Oracle! Te ayudamos a distribuir tu aplicación en todo el mundo
Powered by Oracle! Te ayudamos a distribuir tu aplicación en todo el mundoPowered by Oracle! Te ayudamos a distribuir tu aplicación en todo el mundo
Powered by Oracle! Te ayudamos a distribuir tu aplicación en todo el mundo
 
Randy Shoup eBays Architectural Principles
Randy Shoup eBays Architectural PrinciplesRandy Shoup eBays Architectural Principles
Randy Shoup eBays Architectural Principles
 
Data Warehousing Infrastructure on Cloud
Data Warehousing Infrastructure on CloudData Warehousing Infrastructure on Cloud
Data Warehousing Infrastructure on Cloud
 
TAUS Scotland Asia Online Technology Platform V1
TAUS Scotland  Asia Online Technology Platform   V1TAUS Scotland  Asia Online Technology Platform   V1
TAUS Scotland Asia Online Technology Platform V1
 
Sybase Complex Event Processing
Sybase Complex Event ProcessingSybase Complex Event Processing
Sybase Complex Event Processing
 
Security data deluge
Security data delugeSecurity data deluge
Security data deluge
 
Large-Scale Search Discovery Analytics with Hadoop, Mahout, Solr
Large-Scale Search Discovery Analytics with Hadoop, Mahout, SolrLarge-Scale Search Discovery Analytics with Hadoop, Mahout, Solr
Large-Scale Search Discovery Analytics with Hadoop, Mahout, Solr
 
Tim Mackinnon Agile And Beyond
Tim Mackinnon Agile And BeyondTim Mackinnon Agile And Beyond
Tim Mackinnon Agile And Beyond
 
Searching conversations with hadoop
Searching conversations with hadoopSearching conversations with hadoop
Searching conversations with hadoop
 
JDE & Peoplesoft 3 _ Sumedh Vipradas _ Reduce Invoice Processing Costs and Cy...
JDE & Peoplesoft 3 _ Sumedh Vipradas _ Reduce Invoice Processing Costs and Cy...JDE & Peoplesoft 3 _ Sumedh Vipradas _ Reduce Invoice Processing Costs and Cy...
JDE & Peoplesoft 3 _ Sumedh Vipradas _ Reduce Invoice Processing Costs and Cy...
 

Andere mochten auch

Complex Event Processing in Practice at jDays 2012
Complex Event Processing in Practice at jDays 2012Complex Event Processing in Practice at jDays 2012
Complex Event Processing in Practice at jDays 2012Peter Norrhall
 
Complex Event Processing: What?, Why?, How?
Complex Event Processing: What?, Why?, How?Complex Event Processing: What?, Why?, How?
Complex Event Processing: What?, Why?, How?Alexandre Vasseur
 
Applying complex event processing (2010-10-11)
Applying complex event processing (2010-10-11)Applying complex event processing (2010-10-11)
Applying complex event processing (2010-10-11)Geoffrey De Smet
 
Complex Event Processing - A brief overview
Complex Event Processing - A brief overviewComplex Event Processing - A brief overview
Complex Event Processing - A brief overviewIstván Dávid
 
Complex Event Processing with Esper
Complex Event Processing with EsperComplex Event Processing with Esper
Complex Event Processing with EsperMatthew McCullough
 
CEP Overview v1 2 for public use
CEP Overview v1 2 for public useCEP Overview v1 2 for public use
CEP Overview v1 2 for public usePaul Vincent
 
Semantic Complex Event Processing at Sem Tech 2010
Semantic Complex Event Processing at Sem Tech 2010Semantic Complex Event Processing at Sem Tech 2010
Semantic Complex Event Processing at Sem Tech 2010Adrian Paschke
 
Scalable complex event processing on samza @UBER
Scalable complex event processing on samza @UBERScalable complex event processing on samza @UBER
Scalable complex event processing on samza @UBERShuyi Chen
 
Semantic Complex Event Processing
Semantic Complex Event ProcessingSemantic Complex Event Processing
Semantic Complex Event ProcessingAdrian Paschke
 
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011Geoffrey De Smet
 
Parallel Complex Event Processing
Parallel Complex Event ProcessingParallel Complex Event Processing
Parallel Complex Event ProcessingKarol Grzegorczyk
 
Internet of Things and Complex event processing (CEP)/Data fusion
Internet of Things and Complex event processing (CEP)/Data fusionInternet of Things and Complex event processing (CEP)/Data fusion
Internet of Things and Complex event processing (CEP)/Data fusionBAINIDA
 
Rule Engine Evaluation for Complex Event Processing
Rule Engine Evaluation for Complex Event ProcessingRule Engine Evaluation for Complex Event Processing
Rule Engine Evaluation for Complex Event ProcessingChandra Divi
 
Access control attacks by nor liyana binti azman
Access control attacks by nor liyana binti azmanAccess control attacks by nor liyana binti azman
Access control attacks by nor liyana binti azmanHafiza Abas
 
Tutorial in DEBS 2008 - Event Processing Patterns
Tutorial in DEBS 2008 - Event Processing PatternsTutorial in DEBS 2008 - Event Processing Patterns
Tutorial in DEBS 2008 - Event Processing PatternsOpher Etzion
 
Reactconf 2014 - Event Stream Processing
Reactconf 2014 - Event Stream ProcessingReactconf 2014 - Event Stream Processing
Reactconf 2014 - Event Stream ProcessingAndy Piper
 
Comparative Analysis of Personal Firewalls
Comparative Analysis of Personal FirewallsComparative Analysis of Personal Firewalls
Comparative Analysis of Personal FirewallsAndrej Šimko
 
Installing Complex Event Processing On Linux
Installing Complex Event Processing On LinuxInstalling Complex Event Processing On Linux
Installing Complex Event Processing On LinuxOsama Mustafa
 

Andere mochten auch (20)

Complex Event Processing in Practice at jDays 2012
Complex Event Processing in Practice at jDays 2012Complex Event Processing in Practice at jDays 2012
Complex Event Processing in Practice at jDays 2012
 
Complex Event Processing: What?, Why?, How?
Complex Event Processing: What?, Why?, How?Complex Event Processing: What?, Why?, How?
Complex Event Processing: What?, Why?, How?
 
Applying complex event processing (2010-10-11)
Applying complex event processing (2010-10-11)Applying complex event processing (2010-10-11)
Applying complex event processing (2010-10-11)
 
Complex Event Processing - A brief overview
Complex Event Processing - A brief overviewComplex Event Processing - A brief overview
Complex Event Processing - A brief overview
 
Complex Event Processing with Esper
Complex Event Processing with EsperComplex Event Processing with Esper
Complex Event Processing with Esper
 
CEP Overview v1 2 for public use
CEP Overview v1 2 for public useCEP Overview v1 2 for public use
CEP Overview v1 2 for public use
 
Semantic Complex Event Processing at Sem Tech 2010
Semantic Complex Event Processing at Sem Tech 2010Semantic Complex Event Processing at Sem Tech 2010
Semantic Complex Event Processing at Sem Tech 2010
 
Scalable complex event processing on samza @UBER
Scalable complex event processing on samza @UBERScalable complex event processing on samza @UBER
Scalable complex event processing on samza @UBER
 
Semantic Complex Event Processing
Semantic Complex Event ProcessingSemantic Complex Event Processing
Semantic Complex Event Processing
 
Complex Event Processing
Complex Event ProcessingComplex Event Processing
Complex Event Processing
 
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011
 
Parallel Complex Event Processing
Parallel Complex Event ProcessingParallel Complex Event Processing
Parallel Complex Event Processing
 
Internet of Things and Complex event processing (CEP)/Data fusion
Internet of Things and Complex event processing (CEP)/Data fusionInternet of Things and Complex event processing (CEP)/Data fusion
Internet of Things and Complex event processing (CEP)/Data fusion
 
Rule Engine Evaluation for Complex Event Processing
Rule Engine Evaluation for Complex Event ProcessingRule Engine Evaluation for Complex Event Processing
Rule Engine Evaluation for Complex Event Processing
 
Access control attacks by nor liyana binti azman
Access control attacks by nor liyana binti azmanAccess control attacks by nor liyana binti azman
Access control attacks by nor liyana binti azman
 
Tutorial in DEBS 2008 - Event Processing Patterns
Tutorial in DEBS 2008 - Event Processing PatternsTutorial in DEBS 2008 - Event Processing Patterns
Tutorial in DEBS 2008 - Event Processing Patterns
 
Reactconf 2014 - Event Stream Processing
Reactconf 2014 - Event Stream ProcessingReactconf 2014 - Event Stream Processing
Reactconf 2014 - Event Stream Processing
 
Comparative Analysis of Personal Firewalls
Comparative Analysis of Personal FirewallsComparative Analysis of Personal Firewalls
Comparative Analysis of Personal Firewalls
 
Session hijacking
Session hijackingSession hijacking
Session hijacking
 
Installing Complex Event Processing On Linux
Installing Complex Event Processing On LinuxInstalling Complex Event Processing On Linux
Installing Complex Event Processing On Linux
 

Ähnlich wie Complex Event Processing: What?, Why?, How?

Advanced Logging and Analysis for SOA, Social, Cloud and Big Data
Advanced Logging and Analysis for SOA, Social, Cloud and Big DataAdvanced Logging and Analysis for SOA, Social, Cloud and Big Data
Advanced Logging and Analysis for SOA, Social, Cloud and Big DataPerficient, Inc.
 
Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011
Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011
Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011Eric D. Boyd
 
A Practical Guide to Selecting a Stream Processing Technology
A Practical Guide to Selecting a Stream Processing Technology A Practical Guide to Selecting a Stream Processing Technology
A Practical Guide to Selecting a Stream Processing Technology confluent
 
CQRS + Event Sourcing
CQRS + Event SourcingCQRS + Event Sourcing
CQRS + Event SourcingMike Bild
 
Mandas Deb S O Aand E D A Benefits And Best Practices V1
Mandas  Deb   S O Aand E D A  Benefits And Best Practices V1Mandas  Deb   S O Aand E D A  Benefits And Best Practices V1
Mandas Deb S O Aand E D A Benefits And Best Practices V1SOA Symposium
 
Introduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network IssuesIntroduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network IssuesJason TC HOU (侯宗成)
 
Cloud nativecomputingtechnologysupportinghpc cognitiveworkflows
Cloud nativecomputingtechnologysupportinghpc cognitiveworkflowsCloud nativecomputingtechnologysupportinghpc cognitiveworkflows
Cloud nativecomputingtechnologysupportinghpc cognitiveworkflowsYong Feng
 
GPU Acceleration for Financial Services
GPU Acceleration for Financial ServicesGPU Acceleration for Financial Services
GPU Acceleration for Financial ServicesKinetica
 
Dev Lakhani, Data Scientist at Batch Insights "Real Time Big Data Applicatio...
Dev Lakhani, Data Scientist at Batch Insights  "Real Time Big Data Applicatio...Dev Lakhani, Data Scientist at Batch Insights  "Real Time Big Data Applicatio...
Dev Lakhani, Data Scientist at Batch Insights "Real Time Big Data Applicatio...Dataconomy Media
 
StreamBase - Embedded Erjang - Erlang User Group London - 20th April 2011
StreamBase - Embedded Erjang - Erlang User Group London - 20th April 2011StreamBase - Embedded Erjang - Erlang User Group London - 20th April 2011
StreamBase - Embedded Erjang - Erlang User Group London - 20th April 2011darach
 
Con2012 salmon impact_of_sap_hana_revolutionary_changes_for_sap_controlling_data
Con2012 salmon impact_of_sap_hana_revolutionary_changes_for_sap_controlling_dataCon2012 salmon impact_of_sap_hana_revolutionary_changes_for_sap_controlling_data
Con2012 salmon impact_of_sap_hana_revolutionary_changes_for_sap_controlling_dataaadamserpcorp
 
Kognitio overview jan 2013
Kognitio overview jan 2013Kognitio overview jan 2013
Kognitio overview jan 2013Kognitio
 
Kognitio overview jan 2013
Kognitio overview jan 2013Kognitio overview jan 2013
Kognitio overview jan 2013Michael Hiskey
 
Controlling 2012 Impact of SAP HANA
Controlling 2012 Impact of SAP HANAControlling 2012 Impact of SAP HANA
Controlling 2012 Impact of SAP HANAJohn Jordan
 
Research ON Big Data
Research ON Big DataResearch ON Big Data
Research ON Big Datamysqlops
 
Research on big data
Research on big dataResearch on big data
Research on big dataRoby Chen
 
OpenSpan - A Better Way to Work, A Better Way to Manage
OpenSpan - A Better Way to Work, A Better Way to ManageOpenSpan - A Better Way to Work, A Better Way to Manage
OpenSpan - A Better Way to Work, A Better Way to ManageFrank Wagman
 
Azug - successfully breeding rabits
Azug - successfully breeding rabitsAzug - successfully breeding rabits
Azug - successfully breeding rabitsYves Goeleven
 
21st Century SOA
21st Century SOA21st Century SOA
21st Century SOABob Rhubart
 

Ähnlich wie Complex Event Processing: What?, Why?, How? (20)

Advanced Logging and Analysis for SOA, Social, Cloud and Big Data
Advanced Logging and Analysis for SOA, Social, Cloud and Big DataAdvanced Logging and Analysis for SOA, Social, Cloud and Big Data
Advanced Logging and Analysis for SOA, Social, Cloud and Big Data
 
Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011
Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011
Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011
 
A Practical Guide to Selecting a Stream Processing Technology
A Practical Guide to Selecting a Stream Processing Technology A Practical Guide to Selecting a Stream Processing Technology
A Practical Guide to Selecting a Stream Processing Technology
 
CQRS + Event Sourcing
CQRS + Event SourcingCQRS + Event Sourcing
CQRS + Event Sourcing
 
Mandas Deb S O Aand E D A Benefits And Best Practices V1
Mandas  Deb   S O Aand E D A  Benefits And Best Practices V1Mandas  Deb   S O Aand E D A  Benefits And Best Practices V1
Mandas Deb S O Aand E D A Benefits And Best Practices V1
 
Introduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network IssuesIntroduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network Issues
 
Cloud nativecomputingtechnologysupportinghpc cognitiveworkflows
Cloud nativecomputingtechnologysupportinghpc cognitiveworkflowsCloud nativecomputingtechnologysupportinghpc cognitiveworkflows
Cloud nativecomputingtechnologysupportinghpc cognitiveworkflows
 
GPU Acceleration for Financial Services
GPU Acceleration for Financial ServicesGPU Acceleration for Financial Services
GPU Acceleration for Financial Services
 
Dev Lakhani, Data Scientist at Batch Insights "Real Time Big Data Applicatio...
Dev Lakhani, Data Scientist at Batch Insights  "Real Time Big Data Applicatio...Dev Lakhani, Data Scientist at Batch Insights  "Real Time Big Data Applicatio...
Dev Lakhani, Data Scientist at Batch Insights "Real Time Big Data Applicatio...
 
StreamBase - Embedded Erjang - Erlang User Group London - 20th April 2011
StreamBase - Embedded Erjang - Erlang User Group London - 20th April 2011StreamBase - Embedded Erjang - Erlang User Group London - 20th April 2011
StreamBase - Embedded Erjang - Erlang User Group London - 20th April 2011
 
Con2012 salmon impact_of_sap_hana_revolutionary_changes_for_sap_controlling_data
Con2012 salmon impact_of_sap_hana_revolutionary_changes_for_sap_controlling_dataCon2012 salmon impact_of_sap_hana_revolutionary_changes_for_sap_controlling_data
Con2012 salmon impact_of_sap_hana_revolutionary_changes_for_sap_controlling_data
 
Kognitio overview jan 2013
Kognitio overview jan 2013Kognitio overview jan 2013
Kognitio overview jan 2013
 
Kognitio overview jan 2013
Kognitio overview jan 2013Kognitio overview jan 2013
Kognitio overview jan 2013
 
Controlling 2012 Impact of SAP HANA
Controlling 2012 Impact of SAP HANAControlling 2012 Impact of SAP HANA
Controlling 2012 Impact of SAP HANA
 
Research ON Big Data
Research ON Big DataResearch ON Big Data
Research ON Big Data
 
Research on big data
Research on big dataResearch on big data
Research on big data
 
Scaling tappsi
Scaling tappsiScaling tappsi
Scaling tappsi
 
OpenSpan - A Better Way to Work, A Better Way to Manage
OpenSpan - A Better Way to Work, A Better Way to ManageOpenSpan - A Better Way to Work, A Better Way to Manage
OpenSpan - A Better Way to Work, A Better Way to Manage
 
Azug - successfully breeding rabits
Azug - successfully breeding rabitsAzug - successfully breeding rabits
Azug - successfully breeding rabits
 
21st Century SOA
21st Century SOA21st Century SOA
21st Century SOA
 

Kürzlich hochgeladen

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Kürzlich hochgeladen (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Complex Event Processing: What?, Why?, How?

  • 1. Complex Event Processing Quoi, Pourquoi, Comment? Fabien Coppens Alexandre Vasseur ©OCTO Technology – Université d’été du Système d’information
  • 2. Objectives • Understand what Complex Event Processing (CEP) is • Where does CEP fit in SOA/EDA/BAM/BI/RDBMS • Learn about CEP use cases • Discover CEP adoption paths
  • 3. Speaker Qualifications • Fabien Coppens • Senior Architect • CEP user • Alexandre Vasseur • Middleware technology evangelist • Esper co-lead & early CEP fan
  • 4. The « Right-Time » Enterprise Situation • Business is data-driven – More data, more sources Events – More complex situational scenarios • Right-time is Time – A business imperative – A technology challenge Push • Strong coupling! Loosely coupled • Request/Response! Time & • Data stored and later analyzed Event-Driven • Moving requirements Action/Decision
  • 5. SOA + EDA + XTP + Edge + BAM/BI Convergence: Event Processing « By 2011, a new generation of application platforms stemming from the convergence of extreme transaction processing (XTP) technologies will supersede Java EE and .NET as the platform of choice for large-scale, business-critical operational applications.“ Gartner, July 2007 Large scale SOAs RFID BAM & monitoring Financial Services Sensors Fraud detection Location/presence based services Security Right-Time + Events
  • 6. Event Processing Simple, Streaming, Complex / Business EP • Simple • Consumer/Producer, JMS, ESBs, EIP – Route, Filter, Enrich – Stateless & Timeless • Streaming • How? – min,max,avg – « Event Stream Processing » – Sliding data windows – Statefu-less / Timefu-less • Complex / Business • How?? – Many streams – Continuous joins and indexing – Causality – Time as first class citizen A followed by B • Temporal requests within t minutes – Statefull / Timefull – Different rates – Historical data and real time data When [CEP] then […]
  • 7. CEP’s Friends • Edge – Produce zillions of events • SOA – Interconnect, mediate, leverage and reuse • XTP – Scale throughput and data volumes as required – Right-time down to sub-millisecond where needed • Rules engine When [CEP] then […] If … then […] CEP Situational & Actionable Awareness • BAM & BI (or back to SOA) – Operational applications
  • 8. CEP ~ Database 2.0 ? • RDBMS • CEP – Store data (a lot) – Store rules – Handle queries – Handle data – SQL (ie abstracted) – EPL: Event Processing Language • Request/Response • Subscribe/Notify • Concept of Time • Time & causality • Right time • « Continuous query » CEP Server Database EPL Queries SQL Queries CEP
  • 9. Event Processing Language & CEP Server • EPL: For right-time events, what SQL is to historical data – Best practices, rapid prototyping, tooling, less custom code • CEP server: Middleware to deal with recurrent complexity – indexing, state management, scalability, management, connectivity etc Transports Is EPL expressive enough Dashboards (build vs buy) In & Out Is EPL a standard CEP Application (vs SQL) Source + CEP as EPL + Sink Is it a specialized RDBMS or a true engine? Does it require a Runtime Management Runtime Management Record / Replay / Test Record / Replay / Test Time & RDBMS? Filter, Aggregate Causality Manageable? Sliding windows Scalable Continuous execution Interoperate? State management, threading Interrop. High Availability
  • 10. #1: Algorithmic trading • Volume Weighted Average select ticker, avg(price), count(*), sum(price) from MarketData(ticker=‘GOOG').win:length(1000) Simple Event Processing Stream Processing (Timefull) • Example CEP server performance figures – 1 CEP server, Java based, TCP in/out – 1000 CEP statements – 500 000 evt/s [100 Mbit/s] – Latency: avg 2.5µs, 99% < 10µs – 4 core 2GHz, 65% load avg
  • 11. #1: Build vs Buy? Avg price / last 2 ticks, per ticker MarketData(GOOG, 50) list = new MyList(GOOG,2) /*2 = size*/ // on event MarketData(MSFT, 25) list.add(tick) // some tick discarded // as list size was MarketData(GOOG, 30) // harcoded with size 2 //TODO: do not hardcode GOOG:40 // recompute avg MarketData(GOOG, 40) //TODO: optimize this send computeAvg(list) GOOG:35 Receive market data • Functional specification? • Abstraction for user defined rules? Output / trigger actions • Performance & monitoring etc?
  • 12. #2: Fraud and compliance, risk management Context – FX trading – Event { Trade direction, amount, user id, account, currencies traded } – 200 000 evt/day, 50 rules, ~5% of triggering Two (or more) buy trades followed by ( ) a sale within the next hour between 2 parties select e1, e2, final from pattern [ every e1=FXTrade(userId in (100,101)) (e2=FXTrade(userId in (100,101), dir = e1.dir) where timer:within(8 hours) ) final=FXTrade(userId in (100,101), dir != e1.dir) where timer:within(1 hour) ]
  • 13. #3: Location based services Context: • Mobile asset management (Command & Control systems) • Tracking delay between real time position and planned position – 20% time left to reach destination, 10% delta from planned position • Continuous join with reference (passive) data select id, lat, lon, time-ref.time, Utils.distance(lat,lon,ref.lat,ref.lon) as distance from GPSPosition, sql:RefDB [ select lat, lon, time from Plan where id={id} and stage=‘JFK’ ] as ref where time<0.8*ref.time and Utils.distance(lat,lon,ref.lat,ref.lon)>1.1*SPEED*(0.8*ref.time-time)
  • 14. #4: Trading as SaaS : Strateer • Algo trading as SaaS • CEP is a core enabler • Users can configure their own trading strategies • ~20 CEP rules templates provided – Each configurable by end users • Power users can create their own rules • Esper CEP + JMS + MarketData connectors + RIA
  • 15. #4: Strateer use case 1. Drag & Drop 2. your own automated Test it the way strategy fund managers 3. do 5. Then run it 4. Share and on Strateer: compare Get trading 1000s of data results with alerts to you sources, real- community anytime, time engine. anywhere. Strateer is algorithmic trading for individual investors
  • 17. Solutions (excerpt) Single use case platform (trading, Event Processing = Middleware compliance, BI ..) xxx Event Processing x = Simple / Stream / Complex / Rules ? Mandates a DB? In-memory vs hidden DB vs DB Latency / Throughput 1 to 1000 if not more range Of the shelf? Interoperate? Open platform? Proven / Innovating … Maturity … Cost (Buy + Learn + Operate) …
  • 18. Adoption: Risks & Benefits “CEP is mature? CEP is really not ESP? CEP is really event-driven SOA? CEP is really real-time BI? CEP is really low latency, high throughput, white-box COTs algo trading? CEP is really not a type of BPM? CEP is not really for detecting complex events? Complex does not really mean complex?” [as seen on blogs] Use case driven ? Build vs Buy SOA/BI/BAM related Orthogonal processing (discover & monitor) vs path critical processing (act upon)
  • 19. Links • http://esper.codehaus.org • http://www.espertech.com • http://complexevents.com • And many other googling around or asking your favorite vendors (!)