Download presentation
Presentation is loading. Please wait.
Published byArthur Wilcox Modified over 9 years ago
1
COMP-12: Building Apama Applications Picking the Right Tools John Trigg Principal Product Manager, Progress Apama
2
© 2007 Progress Software Corporation 2 COMP-12: Building Apama Applications Agenda Complex Event Processing & Apama Constituents in CEP Development Scenarios and Dashboards The Developer and MonitorScript Building Blocks – Developers and Analysts Collaborate The Business User Summary
3
© 2007 Progress Software Corporation 3 COMP-12: Building Apama Applications What makes CEP so Special? New way of processing Works in real time Time is built in Analyze by sequence / within time frames Speed Sophisticated tools: high speed, high volume Flexibility Adaptable across industries, data, communication modes
4
© 2007 Progress Software Corporation 4 COMP-12: Building Apama Applications A New Way of Processing Time 123456789 Event Stream Data Processing “When 3 authorizations for the same credit card occur in any 60 second period, deny the request and require manual approval. Event Stream Data Processing “When 3 authorizations for the same credit card occur in any 60 second period, deny the request and require manual approval. Traditional (Static) Data Processing “How many invalid credit card authorizations were accepted yesterday?” Traditional (Static) Data Processing “How many invalid credit card authorizations were accepted yesterday?”
5
© 2007 Progress Software Corporation 5 COMP-12: Building Apama Applications Apama’s Leadership Position Scalable Event Processing Platform Sub-millisecond latency 000’s of scenarios Sophisticated Development Tools Business & technical users Rich event processing language Flexible Event Capture and Replay Backtesting & digital forensics Graphically-Rich Dashboards Real-time event monitoring Rich Integration Framework Event sources, messaging, & applications Access historical insight in real-time in RDBMS and BI
6
© 2007 Progress Software Corporation 6 COMP-12: Building Apama Applications Dashboards Developer Studio Block Builder Dashboard Studio Scenario Modeler Research Studio Event Correlator(s) Integration Adapter Framework Enterprise Management & Monitoring Environment Progress Apama Architecture Event Store Events Actions Capture for Simulation & Analysis Scenario 2 Scenario 1 Scenario 3 Scenario 4 Apama IDE
7
© 2007 Progress Software Corporation 7 COMP-12: Building Apama Applications Agenda Complex Event Processing & Apama Constituents in CEP Development Scenarios and Dashboards The Developer and MonitorScript Building Blocks – Developers and Analysts Collaborate The Business User Summary
8
© 2007 Progress Software Corporation 8 COMP-12: Building Apama Applications Who Gets Involved in Apama Projects? Bringing IT, Business Analysts and Business Users Together Business Analysts Translator of requirements from the business Definition and design of dashboards Definition and testing of business rules Use and define suitable business analytics Understanding of existing processes Key power user Technical Architects and Developers Responsible for integration of tools into the existing environment Will work with business analysts on supporting the business applications Implementation of analytics Responsible for operational issues Business Line End users of dashboards Wish to alter and set parameters To monitor executions and to receive alerts To intervene manually To monitor automated actions Likely provider of funds for BAM project
9
© 2007 Progress Software Corporation 9 COMP-12: Building Apama Applications Agenda Complex Event Processing & Apama Constituents in CEP Development Scenarios and Dashboards The Developer and MonitorScript Building Blocks – Developers and Analysts Collaborate The Business User Summary
10
© 2007 Progress Software Corporation 10 COMP-12: Building Apama Applications Scenarios – Key Concepts A Scenario is a high level term defining a business level application, process, query or model E.g. Receiving Process E.g. Fraud Detection Process Built by business analysts Construction of blocks, rules, states, variables Converted to MonitorScript for execution
11
© 2007 Progress Software Corporation 11 COMP-12: Building Apama Applications Scenario Modeler Express time-based real- time rules with a high level development tool
12
© 2007 Progress Software Corporation 12 COMP-12: Building Apama Applications Scenario Modeler Express time-based real- time rules with a high level development tool Intuitive visual user interface designed for business analysts
13
© 2007 Progress Software Corporation 13 COMP-12: Building Apama Applications Scenario Modeler Express time-based real- time rules with a high level development tool Each scenario, or group of rules, represents a “pattern” which can be adjusted by business users to specify conditions to monitor, analyze and act on.
14
© 2007 Progress Software Corporation 14 COMP-12: Building Apama Applications Scenario Modeler Express time-based real- time rules with a high level development tool Re-use logic with SmartBlocks designed by other analysts or developers
15
© 2007 Progress Software Corporation 15 COMP-12: Building Apama Applications Scenario Modeler Express time-based real- time rules with a high level development tool Define and control variables for use in this scenario.
16
© 2007 Progress Software Corporation 16 COMP-12: Building Apama Applications Scenario Modeler ‘Wire’ SmartBlocks together to pass event data and create new event streams for incorporation in scenario
17
© 2007 Progress Software Corporation 17 COMP-12: Building Apama Applications Scenarios – How to Build Demo Blocks Wiring States Rules (incl Global) Variables Test
18
© 2007 Progress Software Corporation 18 COMP-12: Building Apama Applications Apama Dashboards – Visualizing Event Processing Real-time variables and analytics can be visualized using graphs, charts, tables etc. Enables event-driven Apama logic to be visualized in real-time Variety of deployment options (web, app, …)
19
© 2007 Progress Software Corporation 19 COMP-12: Building Apama Applications Dashboards – Options for Deployment Client Client Install Webstart/Applet Managed thru launch No pre-install Browser Zero install Portal Integration JSR-168 compliance Dashboards developed ONCE Can be deployed any number of ways
20
© 2007 Progress Software Corporation 20 COMP-12: Building Apama Applications Dashboard Builder Select from a palette of graphical objects. Each object can be laid out in a graphical dashboard and bound to Apama events Users can customize the look and feel of all widgets, and specify which Apama event scenarios to visualize.
21
© 2007 Progress Software Corporation 21 COMP-12: Building Apama Applications Dashboards - Demonstration
22
© 2007 Progress Software Corporation 22 COMP-12: Building Apama Applications Agenda Complex Event Processing & Apama Constituents in CEP Development Scenarios and Dashboards The Developer and MonitorScript Building Blocks – Developers and Analysts Collaborate The Business User Summary
23
© 2007 Progress Software Corporation 23 COMP-12: Building Apama Applications What is MonitorScript? Apama’s Event Processing Language Event Driven Script Language Optimized for Streams of structured event messages Seeking patterns of events based on –TIME –CONTENT
24
© 2007 Progress Software Corporation 24 COMP-12: Building Apama Applications MonitorScript Key Concepts Apama Event Processing Language event MachineState {string state; string host;} MachineState (“fail”,”192.164.2.174”) Event Definition: specify event members and their type. Other types include integer, float, boolean, sequence, dictionary, and event. Events Instance: specify member values Event Template: specify pattern for one event MachineState (state=“fail”,host=“192.164.2.174”)
25
© 2007 Progress Software Corporation 25 COMP-12: Building Apama Applications MonitorScript Key Concepts Apama Event Processing Language Listener, Tags, and Action: commands to execute when an event expression is matched. Typical commands are: - emit an event (such as an alert) to an external system - route an event to another listener Event Expression: specify sequence of one or more event templates MachineState (state=“fail”, host=“192.164.2.174”) -> SlaViolation(qos=3) within(60.0) on all MachineState (state=“fail”, host=“192.164.2.174”):c1 -> SlaViolation(qos=3):c2 within(60.0) {emit SlaAlert (c1.host, c2.qos); route RebalanceLoad (c1.host);}
26
© 2007 Progress Software Corporation 26 COMP-12: Building Apama Applications Other Concepts for a Developer – Plug-Ins Plug-ins Plug-ins are used to integrate C or C++ functions directly into the Correlator Plug-ins are dynamically loaded The functions exposed by the plug-in are directly accessible through MonitorScript Dynamic Library Plug-in Wrapper C/C++ Routine
27
© 2007 Progress Software Corporation 27 COMP-12: Building Apama Applications Other Concepts for a Developer - Adapters Used to connect middleware, data feeds, database and so on to the Apama Platform Convert inbound data sources to Apama Events and vice versa Built around standardized framework – the IAF Pre-built Transport handlers and Codecs Custom Transport handlers and Codecs Flexible Semantic Mapping capabilities Database Event Feed Normalization Native Messages Transport Integration API Transport Integration Event Correlator Mapping Apama Events Mapping
28
© 2007 Progress Software Corporation 28 COMP-12: Building Apama Applications Demo of MonitorScript/Dev Studio
29
© 2007 Progress Software Corporation 29 COMP-12: Building Apama Applications Agenda Complex Event Processing & Apama Constituents in CEP Development The Developer and MonitorScript Scenarios and Dashboards Building Blocks – Developers and Analysts Collaborate The Business User Summary Subtitle Goes Here - Arial Italic 24 pt.
30
© 2007 Progress Software Corporation 30 COMP-12: Building Apama Applications What is a SmartBlock? A Block is an encapsulation of a specific function that can be reused within scenarios Adheres to a specific design pattern with standardized access Implementation details hidden Typically encapsulation of external access or an analytic Embedded within an Scenario Written in XML & MonitorScript
31
© 2007 Progress Software Corporation 31 COMP-12: Building Apama Applications Example Blocks Data Feed Access RFID reader JMS Feed Analytic Statistical Calculation Re-usable Scenario Built by another and converted into a block E.g. Common monitoring rules
32
© 2007 Progress Software Corporation 32 COMP-12: Building Apama Applications How to Build a Block 1. Block Builder Tool Describe the parameters Describe inputs and outputs Describe functions Code functions in MonitorScript 2. Build a Scenario; Save it as a block
33
© 2007 Progress Software Corporation 33 COMP-12: Building Apama Applications Agenda Complex Event Processing & Apama Constituents in CEP Development The Developer and MonitorScript Scenarios and Dashboards Building Blocks – Developers and Analysts Collaborate The Business User Summary
34
© 2007 Progress Software Corporation 34 COMP-12: Building Apama Applications The Business User Interacts with pre-built scenarios thru Apama Dashboards Alerts, messaging Legacy interfaces triggered by Apama updates Scope limited to scenario design Can create/remove particular monitors –Scenario instances Can adjust parameters of in-process monitors –Scenario instance variables
35
© 2007 Progress Software Corporation 35 COMP-12: Building Apama Applications Research Studio What is It? Replay tool based on captured event data –Raw –Generated Why Use? Simulation –Select time slices from captured data –Evaluate new scenarios against similar real world data Debug –Replay to specific points in time –Determine what event sequences caused particular updates/events
36
© 2007 Progress Software Corporation 36 COMP-12: Building Apama Applications Agenda Complex Event Processing & Apama Constituents in CEP Development The Developer and MonitorScript Scenarios and Dashboards Building Blocks – Developers and Analysts Collaborate The Business User Summary
37
© 2007 Progress Software Corporation 37 COMP-12: Building Apama Applications In Summary Multiple constituents in any application development – CEP is no different One environment that offers tools for different user perspectives fosters collaboration and accelerated development The same environment allows different users to directly apply their knowledge to a project
38
© 2007 Progress Software Corporation 38 COMP-12: Building Apama Applications Questions?
39
© 2007 Progress Software Corporation 39 COMP-12: Building Apama Applications For More Information, go to… www.progress.com/apama www.progress.com/apama www.progress.com/apama/news/webinars for archived webinars on CEP and BAMwww.progress.com/apama/news/webinars CEP Blog : apama.typepad.com Contact John Trigg, Principal Product Manager, Apama –jtrigg@progress.comjtrigg@progress.com
40
© 2007 Progress Software Corporation 40 COMP-12: Building Apama Applications Thank you for your time
41
© 2007 Progress Software Corporation 41 COMP-12: Building Apama Applications
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.