SlideShare uma empresa Scribd logo
1 de 46
Baixar para ler offline
Intelligent  Integration    
with  WSO2  ESB  and  WSO2  CEP
Sriskandarajah  Suhothayan  (Suho)
Technical  Lead  
WSO2  Inc.  
            
Connected  Business  !
Connected  Business  !
Connected  Business  !
Connected  Business  !
To identity
threats &
opportunities
What  to  integrate  ?
In the line of Connected Business there will be many
software systems
• Enterprise Resource Planning systems (ERP)
• Management Information Systems (MIS)
• Decision Support Systems (DSS)
• Data stores
• Legacy systems
Issues  in  integration
But integrating a multitude of complex software
applications is not an easy task …
• Disparate Systems, Services, Protocols
• Diverse and dynamic business requirements
• No single vendor/solution
• On premise/Cloud solutions
• Different QoS requirements
• Not everyone adhere to standards
How  could  we  integrate  ?
How  could  we  integrate  ?
Point to point connections ?
How  could  we  integrate  ?
How  could  we  integrate  ?
• Scalability, maintainability, troubleshooting nightmares.
How  could  we  integrate  ?
Solution  …  Bus  !
Solution  …  Bus  !
Integration  Platform  Contains  …
• WSO2 ESB
– Connects anything with every thing
• WSO2 DSS, WSO2 GReg
– Expose data as a service, Repository and governance
• WSO2 MB
– Guaranteed messaging
• WSO2 IS
– Security, SSO, Role based access control
Integration  
!
!
!
!
!
Cloud On-premise
!
Hybrid
Job  Done  :)
Oops  !
http://islamgreatreligion.files.wordpress.com/2012/11/gaza-16-nov.jpg
The  Prevention  …  ?
• Monitor !
• Monitor !
• Monitor !
The  next  mile  ...  !
Monitor and …
• Take reactive action
• Predict future & take preventive measures
• Auto recovery at failure
• Optimum resource utilisation
• Ensure security & QoS
• Alerts
Is  it  working  as  expected  ?
• The load of the system
!
It can be
The  solution  should  be
• A realtime system
• Capable of processing data on the fly
• Notify alerts in various forms
• Enable enterprise integration
What  is                                                                                ?
How  ESB  integrates  with  CEP?
How  CEP  integrates  with  ESB?
Patterns  
• Monitoring Proxy service/API : QoS (E.g Response time)
• In Message Store & forward : Managing the Queue
• Monitoring Routing : Scaling, Throttling, Blacklisting
Monitoring  QoS  on  Proxy  Services  &  APIs  
Monitoring response time
define stream ResponseTimeStream ( !
! arrivalTime long, departureTime long, !
! correlationID string, serviceID string, … ) ;!
!
from ResponseTimeStream!
! [departureTime - arrivalTime > 2 min]!
select correlationID, serviceID!
insert into NotificationStream ;
Monitoring  QoS  on  Proxy  Services  &  APIs  
Tuning  Message  Store  and  Forward  
• Monitoring the Message Queue
Tuning  Message  Store  and  Forward  
define stream QueueStatStream ( queueID string, size long ) ;!
!
define partition QueuePartition QueueStatStream.queueID;!
!
from a1 = QueueStatStream, !
a2 = QueueStatStream[size >a1. size]+!
within 2 min!
select a1. queueID as queueID, !
! a1. size as firstSize,!
! a2[last]. size as lastSize!
insert into AdjustForwardingProcessStream!
partition by QueuePartition;
Monitoring  ESB  routing  and  Scaling
Monitoring  ESB  routing  and  Scaling
define stream RequestStream ( ! !
! correlationID string, serviceID string, !
! endpointID string, … ) ;!
!
from RequestStream!
select count(correlationID) as requestCount, !
! serviceID, true as scaleUp!
group by endpointID!
having up requestCount > 90!
insert into ScaleUpStream ;
Intelligent  Scaling  on
Throttling  &  Blacklisting  users
Throttling  &  Blacklisting  users
define stream RequestStream ( correlationID string, serviceID string, !
! ! userID string, tear string, requestTime long, … ) ;!
!
define table BlacklistedUserTable(userID string,!
! ! ! ! time long,requestCount long); !
Throttling  &  Blacklisting  users
define stream RequestStream ( correlationID string, serviceID string, !
! ! userID string, tear string, requestTime long, … ) ;!
!
define table BlacklistedUserTable(userID string,!
! ! ! ! time long,requestCount long); !
!
from RequestStream[tear==‘BRONZE’]#window.time(1 min)!
select userID, requestTime as time, !
! count(correlationID) as requestCount!
group by userID!
having up requestCount > 5!
insert into BlacklistedUserTable ;!
!
Throttling  &  Blacklisting  users
define stream RequestStream ( correlationID string, serviceID string, !
! ! userID string, tear string, requestTime long, … ) ;!
!
define table BlacklistedUserTable(userID string,!
! ! ! ! time long,requestCount long); !
!
from RequestStream[tear==‘BRONZE’]#window.time(1 min)!
select userID, requestTime as time, !
! count(correlationID) as requestCount!
group by userID!
having up requestCount > 5!
insert into BlacklistedUserTable ;!
!
from RequestStream[not(userID in BlacklistedUserTable. userID)] !
select *!
insert into ApprovedRequestStream ;
Patterns  
• Monitoring Proxy service/API : QoS (E.g Response time)
• In Message Store & forward : Managing the Queue
• Monitoring Routing : Scaling, Throttling, Blacklisting
!
• In Load balancing : Fix out of order arrivals
• Rules : Temporal
Patterns  
• Monitoring Proxy service/API : QoS (E.g Response time)
• In Message Store & forward : Managing the Queue
• Monitoring Routing : Scaling, Throttling, Blacklisting
!
• In Load balancing : Fix out of order arrivals
• Rules : Temporal
!
• For Business Decisions : KPIs, Usage patterns, 

Waiting for the right time.. to trigger
• Monitoring for Security : Detect Attacks, Credit card fraud, 

Login patterns, Blacklisting
Waiting  for  the  right  time  …  to  pull  trigger
Waiting  for  the  right  time  …  to  pull  trigger
define stream StockOrderRequest ( symbol string, !
! ! ! ! action string ) ;!
define stream StockStream ( symbol string, price double, … ) ;!
!
define partition Stocks StockStream.symbol, ! ! !
! ! ! StockOrderRequest.symbol ;!
!
from a1 = StockOrderRequest[action==‘buy’],!
! b1 = StockStream[price<a1.price]+,!
! b2 = StockStream[price>b1.price]!
select a1.symbol as symbol, !
! b1[0].price as firstPrice, !
! b2.price as orderPrice!
insert into PurchaseOrder;!
partition by Stocks
Fixing  Security  Vulnerabilities  
• Identify Dos attacks
• Analyse login patterns
• Detect credit card fraud
• Blacklisting
Fixing  Security  Vulnerabilities  
Fixing  Security  Vulnerabilities  
define stream PasswordChangeStream (userId string, time
long); !
!
define stream TransactionStream (userId string, !
amount double, … ); !
!
from every (a1 = PasswordChangeStream) -> !
a2 = TransactionStream[amount >10000] !
within 1 hour!
select a1.userId as userId, a2. amount as amount!
insert into PotentialFraud ;
!
Better three hours too soon,
than one minute too late.
!
!
!
William Shakespeare
Thank  You  
              Questions ?

Mais conteúdo relacionado

Mais procurados

Webinar: Managing Real Time Risk Analytics with MongoDB
Webinar: Managing Real Time Risk Analytics with MongoDB Webinar: Managing Real Time Risk Analytics with MongoDB
Webinar: Managing Real Time Risk Analytics with MongoDB MongoDB
 
Scalable Event Processing with WSO2CEP @ WSO2Con2015eu
Scalable Event Processing with WSO2CEP @  WSO2Con2015euScalable Event Processing with WSO2CEP @  WSO2Con2015eu
Scalable Event Processing with WSO2CEP @ WSO2Con2015euSriskandarajah Suhothayan
 
MongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB
 
MongoDB for Time Series Data Part 1: Setting the Stage for Sensor Management
MongoDB for Time Series Data Part 1: Setting the Stage for Sensor ManagementMongoDB for Time Series Data Part 1: Setting the Stage for Sensor Management
MongoDB for Time Series Data Part 1: Setting the Stage for Sensor ManagementMongoDB
 
Using MongoDB As a Tick Database
Using MongoDB As a Tick DatabaseUsing MongoDB As a Tick Database
Using MongoDB As a Tick DatabaseMongoDB
 
Azure DocumentDB Overview
Azure DocumentDB OverviewAzure DocumentDB Overview
Azure DocumentDB OverviewAndrew Liu
 
[PASS Summit 2016] Blazing Fast, Planet-Scale Customer Scenarios with Azure D...
[PASS Summit 2016] Blazing Fast, Planet-Scale Customer Scenarios with Azure D...[PASS Summit 2016] Blazing Fast, Planet-Scale Customer Scenarios with Azure D...
[PASS Summit 2016] Blazing Fast, Planet-Scale Customer Scenarios with Azure D...Andrew Liu
 
Azure DocumentDB: Advanced Features for Large Scale-Apps
Azure DocumentDB: Advanced Features for Large Scale-AppsAzure DocumentDB: Advanced Features for Large Scale-Apps
Azure DocumentDB: Advanced Features for Large Scale-AppsAndrew Liu
 
Webinar: How Banks Use MongoDB as a Tick Database
Webinar: How Banks Use MongoDB as a Tick DatabaseWebinar: How Banks Use MongoDB as a Tick Database
Webinar: How Banks Use MongoDB as a Tick DatabaseMongoDB
 
Webinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and ScaleWebinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and ScaleMongoDB
 
Python and MongoDB as a Market Data Platform by James Blackburn
Python and MongoDB as a Market Data Platform by James BlackburnPython and MongoDB as a Market Data Platform by James Blackburn
Python and MongoDB as a Market Data Platform by James BlackburnPyData
 
HBaseCon 2015: HBase @ CyberAgent
HBaseCon 2015: HBase @ CyberAgentHBaseCon 2015: HBase @ CyberAgent
HBaseCon 2015: HBase @ CyberAgentHBaseCon
 
Real Time Data Analytics with MongoDB and Fluentd at Wish
Real Time Data Analytics with MongoDB and Fluentd at WishReal Time Data Analytics with MongoDB and Fluentd at Wish
Real Time Data Analytics with MongoDB and Fluentd at WishMongoDB
 
Joins and Other MongoDB 3.2 Aggregation Enhancements
Joins and Other MongoDB 3.2 Aggregation EnhancementsJoins and Other MongoDB 3.2 Aggregation Enhancements
Joins and Other MongoDB 3.2 Aggregation EnhancementsAndrew Morgan
 
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...Hernan Costante
 
Webinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage EngineWebinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage EngineMongoDB
 
Agility and Scalability with MongoDB
Agility and Scalability with MongoDBAgility and Scalability with MongoDB
Agility and Scalability with MongoDBMongoDB
 
Meetup Google BigQuery powered by ai
Meetup Google BigQuery powered by aiMeetup Google BigQuery powered by ai
Meetup Google BigQuery powered by aiIdo Volff
 
Always On: Building Highly Available Applications on Cassandra
Always On: Building Highly Available Applications on CassandraAlways On: Building Highly Available Applications on Cassandra
Always On: Building Highly Available Applications on CassandraRobbie Strickland
 

Mais procurados (20)

Webinar: Managing Real Time Risk Analytics with MongoDB
Webinar: Managing Real Time Risk Analytics with MongoDB Webinar: Managing Real Time Risk Analytics with MongoDB
Webinar: Managing Real Time Risk Analytics with MongoDB
 
Scalable Event Processing with WSO2CEP @ WSO2Con2015eu
Scalable Event Processing with WSO2CEP @  WSO2Con2015euScalable Event Processing with WSO2CEP @  WSO2Con2015eu
Scalable Event Processing with WSO2CEP @ WSO2Con2015eu
 
MongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB Tick Data Presentation
MongoDB Tick Data Presentation
 
MongoDB for Time Series Data Part 1: Setting the Stage for Sensor Management
MongoDB for Time Series Data Part 1: Setting the Stage for Sensor ManagementMongoDB for Time Series Data Part 1: Setting the Stage for Sensor Management
MongoDB for Time Series Data Part 1: Setting the Stage for Sensor Management
 
Using MongoDB As a Tick Database
Using MongoDB As a Tick DatabaseUsing MongoDB As a Tick Database
Using MongoDB As a Tick Database
 
Azure DocumentDB Overview
Azure DocumentDB OverviewAzure DocumentDB Overview
Azure DocumentDB Overview
 
[PASS Summit 2016] Blazing Fast, Planet-Scale Customer Scenarios with Azure D...
[PASS Summit 2016] Blazing Fast, Planet-Scale Customer Scenarios with Azure D...[PASS Summit 2016] Blazing Fast, Planet-Scale Customer Scenarios with Azure D...
[PASS Summit 2016] Blazing Fast, Planet-Scale Customer Scenarios with Azure D...
 
Azure DocumentDB: Advanced Features for Large Scale-Apps
Azure DocumentDB: Advanced Features for Large Scale-AppsAzure DocumentDB: Advanced Features for Large Scale-Apps
Azure DocumentDB: Advanced Features for Large Scale-Apps
 
Webinar: How Banks Use MongoDB as a Tick Database
Webinar: How Banks Use MongoDB as a Tick DatabaseWebinar: How Banks Use MongoDB as a Tick Database
Webinar: How Banks Use MongoDB as a Tick Database
 
Google Cloud Spanner Preview
Google Cloud Spanner PreviewGoogle Cloud Spanner Preview
Google Cloud Spanner Preview
 
Webinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and ScaleWebinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and Scale
 
Python and MongoDB as a Market Data Platform by James Blackburn
Python and MongoDB as a Market Data Platform by James BlackburnPython and MongoDB as a Market Data Platform by James Blackburn
Python and MongoDB as a Market Data Platform by James Blackburn
 
HBaseCon 2015: HBase @ CyberAgent
HBaseCon 2015: HBase @ CyberAgentHBaseCon 2015: HBase @ CyberAgent
HBaseCon 2015: HBase @ CyberAgent
 
Real Time Data Analytics with MongoDB and Fluentd at Wish
Real Time Data Analytics with MongoDB and Fluentd at WishReal Time Data Analytics with MongoDB and Fluentd at Wish
Real Time Data Analytics with MongoDB and Fluentd at Wish
 
Joins and Other MongoDB 3.2 Aggregation Enhancements
Joins and Other MongoDB 3.2 Aggregation EnhancementsJoins and Other MongoDB 3.2 Aggregation Enhancements
Joins and Other MongoDB 3.2 Aggregation Enhancements
 
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...
 
Webinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage EngineWebinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage Engine
 
Agility and Scalability with MongoDB
Agility and Scalability with MongoDBAgility and Scalability with MongoDB
Agility and Scalability with MongoDB
 
Meetup Google BigQuery powered by ai
Meetup Google BigQuery powered by aiMeetup Google BigQuery powered by ai
Meetup Google BigQuery powered by ai
 
Always On: Building Highly Available Applications on Cassandra
Always On: Building Highly Available Applications on CassandraAlways On: Building Highly Available Applications on Cassandra
Always On: Building Highly Available Applications on Cassandra
 

Semelhante a Intelligent integration with WSO2 ESB & WSO2 CEP

Cloud Foundry Cookbook: Recipes for a Successful Cloud Foundry Deployment in ...
Cloud Foundry Cookbook: Recipes for a Successful Cloud Foundry Deployment in ...Cloud Foundry Cookbook: Recipes for a Successful Cloud Foundry Deployment in ...
Cloud Foundry Cookbook: Recipes for a Successful Cloud Foundry Deployment in ...VMware Tanzu
 
Recipes for a successful production cloudfoundry deployment - CF Summit 2014
Recipes for a successful production cloudfoundry deployment - CF Summit 2014Recipes for a successful production cloudfoundry deployment - CF Summit 2014
Recipes for a successful production cloudfoundry deployment - CF Summit 2014Vinícius Carvalho
 
[WSO2Con Asia 2018] Patterns for Building Streaming Apps
[WSO2Con Asia 2018] Patterns for Building Streaming Apps[WSO2Con Asia 2018] Patterns for Building Streaming Apps
[WSO2Con Asia 2018] Patterns for Building Streaming AppsWSO2
 
Introducing MongoDB Stitch, Backend-as-a-Service from MongoDB
Introducing MongoDB Stitch, Backend-as-a-Service from MongoDBIntroducing MongoDB Stitch, Backend-as-a-Service from MongoDB
Introducing MongoDB Stitch, Backend-as-a-Service from MongoDBMongoDB
 
Micro-service architectures with Gilmour
Micro-service architectures with GilmourMicro-service architectures with Gilmour
Micro-service architectures with GilmourAditya Godbole
 
MongoDB Stich Overview
MongoDB Stich OverviewMongoDB Stich Overview
MongoDB Stich OverviewMongoDB
 
ConnectPath Introduction
ConnectPath IntroductionConnectPath Introduction
ConnectPath IntroductionCloudHesive
 
Building Secure User Interfaces With JWTs (JSON Web Tokens)
Building Secure User Interfaces With JWTs (JSON Web Tokens)Building Secure User Interfaces With JWTs (JSON Web Tokens)
Building Secure User Interfaces With JWTs (JSON Web Tokens)Stormpath
 
Medium TechTalk — iOS
Medium TechTalk — iOSMedium TechTalk — iOS
Medium TechTalk — iOSjimmyatmedium
 
Token Authentication for Java Applications
Token Authentication for Java ApplicationsToken Authentication for Java Applications
Token Authentication for Java ApplicationsStormpath
 
Securing Web Applications with Token Authentication
Securing Web Applications with Token AuthenticationSecuring Web Applications with Token Authentication
Securing Web Applications with Token AuthenticationStormpath
 
Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features WSO2
 
[WSO2Con EU 2017] Streaming Analytics Patterns for Your Digital Enterprise
[WSO2Con EU 2017] Streaming Analytics Patterns for Your Digital Enterprise[WSO2Con EU 2017] Streaming Analytics Patterns for Your Digital Enterprise
[WSO2Con EU 2017] Streaming Analytics Patterns for Your Digital EnterpriseWSO2
 
Analytics Patterns for Your Digital Enterprise
Analytics Patterns for Your Digital EnterpriseAnalytics Patterns for Your Digital Enterprise
Analytics Patterns for Your Digital EnterpriseSriskandarajah Suhothayan
 
WSO2Con USA 2017: Analytics Patterns for Your Digital Enterprise
WSO2Con USA 2017: Analytics Patterns for Your Digital EnterpriseWSO2Con USA 2017: Analytics Patterns for Your Digital Enterprise
WSO2Con USA 2017: Analytics Patterns for Your Digital EnterpriseWSO2
 
5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWSChristian Beedgen
 
Exploring Contact Lens and Amazon Connect
Exploring Contact Lens and Amazon ConnectExploring Contact Lens and Amazon Connect
Exploring Contact Lens and Amazon ConnectCloudHesive
 
Introduction To WS-Policy
Introduction To WS-PolicyIntroduction To WS-Policy
Introduction To WS-PolicyHayati Guvence
 
Measuring 2.0 - How to handle 100K events/sec - Berlin Buzzwords 2019
Measuring 2.0 - How to handle 100K events/sec - Berlin Buzzwords 2019Measuring 2.0 - How to handle 100K events/sec - Berlin Buzzwords 2019
Measuring 2.0 - How to handle 100K events/sec - Berlin Buzzwords 2019Niels Basjes
 
WSO2 Analytics Platform - The one stop shop for all your data needs
WSO2 Analytics Platform - The one stop shop for all your data needsWSO2 Analytics Platform - The one stop shop for all your data needs
WSO2 Analytics Platform - The one stop shop for all your data needsSriskandarajah Suhothayan
 

Semelhante a Intelligent integration with WSO2 ESB & WSO2 CEP (20)

Cloud Foundry Cookbook: Recipes for a Successful Cloud Foundry Deployment in ...
Cloud Foundry Cookbook: Recipes for a Successful Cloud Foundry Deployment in ...Cloud Foundry Cookbook: Recipes for a Successful Cloud Foundry Deployment in ...
Cloud Foundry Cookbook: Recipes for a Successful Cloud Foundry Deployment in ...
 
Recipes for a successful production cloudfoundry deployment - CF Summit 2014
Recipes for a successful production cloudfoundry deployment - CF Summit 2014Recipes for a successful production cloudfoundry deployment - CF Summit 2014
Recipes for a successful production cloudfoundry deployment - CF Summit 2014
 
[WSO2Con Asia 2018] Patterns for Building Streaming Apps
[WSO2Con Asia 2018] Patterns for Building Streaming Apps[WSO2Con Asia 2018] Patterns for Building Streaming Apps
[WSO2Con Asia 2018] Patterns for Building Streaming Apps
 
Introducing MongoDB Stitch, Backend-as-a-Service from MongoDB
Introducing MongoDB Stitch, Backend-as-a-Service from MongoDBIntroducing MongoDB Stitch, Backend-as-a-Service from MongoDB
Introducing MongoDB Stitch, Backend-as-a-Service from MongoDB
 
Micro-service architectures with Gilmour
Micro-service architectures with GilmourMicro-service architectures with Gilmour
Micro-service architectures with Gilmour
 
MongoDB Stich Overview
MongoDB Stich OverviewMongoDB Stich Overview
MongoDB Stich Overview
 
ConnectPath Introduction
ConnectPath IntroductionConnectPath Introduction
ConnectPath Introduction
 
Building Secure User Interfaces With JWTs (JSON Web Tokens)
Building Secure User Interfaces With JWTs (JSON Web Tokens)Building Secure User Interfaces With JWTs (JSON Web Tokens)
Building Secure User Interfaces With JWTs (JSON Web Tokens)
 
Medium TechTalk — iOS
Medium TechTalk — iOSMedium TechTalk — iOS
Medium TechTalk — iOS
 
Token Authentication for Java Applications
Token Authentication for Java ApplicationsToken Authentication for Java Applications
Token Authentication for Java Applications
 
Securing Web Applications with Token Authentication
Securing Web Applications with Token AuthenticationSecuring Web Applications with Token Authentication
Securing Web Applications with Token Authentication
 
Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features
 
[WSO2Con EU 2017] Streaming Analytics Patterns for Your Digital Enterprise
[WSO2Con EU 2017] Streaming Analytics Patterns for Your Digital Enterprise[WSO2Con EU 2017] Streaming Analytics Patterns for Your Digital Enterprise
[WSO2Con EU 2017] Streaming Analytics Patterns for Your Digital Enterprise
 
Analytics Patterns for Your Digital Enterprise
Analytics Patterns for Your Digital EnterpriseAnalytics Patterns for Your Digital Enterprise
Analytics Patterns for Your Digital Enterprise
 
WSO2Con USA 2017: Analytics Patterns for Your Digital Enterprise
WSO2Con USA 2017: Analytics Patterns for Your Digital EnterpriseWSO2Con USA 2017: Analytics Patterns for Your Digital Enterprise
WSO2Con USA 2017: Analytics Patterns for Your Digital Enterprise
 
5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS
 
Exploring Contact Lens and Amazon Connect
Exploring Contact Lens and Amazon ConnectExploring Contact Lens and Amazon Connect
Exploring Contact Lens and Amazon Connect
 
Introduction To WS-Policy
Introduction To WS-PolicyIntroduction To WS-Policy
Introduction To WS-Policy
 
Measuring 2.0 - How to handle 100K events/sec - Berlin Buzzwords 2019
Measuring 2.0 - How to handle 100K events/sec - Berlin Buzzwords 2019Measuring 2.0 - How to handle 100K events/sec - Berlin Buzzwords 2019
Measuring 2.0 - How to handle 100K events/sec - Berlin Buzzwords 2019
 
WSO2 Analytics Platform - The one stop shop for all your data needs
WSO2 Analytics Platform - The one stop shop for all your data needsWSO2 Analytics Platform - The one stop shop for all your data needs
WSO2 Analytics Platform - The one stop shop for all your data needs
 

Mais de Sriskandarajah Suhothayan

Mais de Sriskandarajah Suhothayan (8)

Patterns for Deploying Analytics in the Real World
Patterns for Deploying Analytics in the Real WorldPatterns for Deploying Analytics in the Real World
Patterns for Deploying Analytics in the Real World
 
Sensing the world with Data of Things
Sensing the world with Data of ThingsSensing the world with Data of Things
Sensing the world with Data of Things
 
Sensing the world with data of things
Sensing the world with  data of thingsSensing the world with  data of things
Sensing the world with data of things
 
An introduction to the WSO2 Analytics Platform
An introduction to the WSO2 Analytics Platform   An introduction to the WSO2 Analytics Platform
An introduction to the WSO2 Analytics Platform
 
DEBS 2015 Tutorial : Patterns for Realtime Streaming Analytics
DEBS 2015 Tutorial : Patterns for Realtime Streaming AnalyticsDEBS 2015 Tutorial : Patterns for Realtime Streaming Analytics
DEBS 2015 Tutorial : Patterns for Realtime Streaming Analytics
 
Gather those events : Instrumenting everything for analysis
Gather those events : Instrumenting everything for analysisGather those events : Instrumenting everything for analysis
Gather those events : Instrumenting everything for analysis
 
WSO2 Complex Event Processor
WSO2 Complex Event ProcessorWSO2 Complex Event Processor
WSO2 Complex Event Processor
 
Manen Ant SVN
Manen Ant SVNManen Ant SVN
Manen Ant SVN
 

Último

What To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptxWhat To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptxSimranPal17
 
Semantic Shed - Squashing and Squeezing.pptx
Semantic Shed - Squashing and Squeezing.pptxSemantic Shed - Squashing and Squeezing.pptx
Semantic Shed - Squashing and Squeezing.pptxMike Bennett
 
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis model
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis modelDecoding Movie Sentiments: Analyzing Reviews with Data Analysis model
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis modelBoston Institute of Analytics
 
Learn How Data Science Changes Our World
Learn How Data Science Changes Our WorldLearn How Data Science Changes Our World
Learn How Data Science Changes Our WorldEduminds Learning
 
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...Amil Baba Dawood bangali
 
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...Thomas Poetter
 
Decoding the Heart: Student Presentation on Heart Attack Prediction with Data...
Decoding the Heart: Student Presentation on Heart Attack Prediction with Data...Decoding the Heart: Student Presentation on Heart Attack Prediction with Data...
Decoding the Heart: Student Presentation on Heart Attack Prediction with Data...Boston Institute of Analytics
 
Rithik Kumar Singh codealpha pythohn.pdf
Rithik Kumar Singh codealpha pythohn.pdfRithik Kumar Singh codealpha pythohn.pdf
Rithik Kumar Singh codealpha pythohn.pdfrahulyadav957181
 
Decoding Patterns: Customer Churn Prediction Data Analysis Project
Decoding Patterns: Customer Churn Prediction Data Analysis ProjectDecoding Patterns: Customer Churn Prediction Data Analysis Project
Decoding Patterns: Customer Churn Prediction Data Analysis ProjectBoston Institute of Analytics
 
Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Seán Kennedy
 
The Power of Data-Driven Storytelling_ Unveiling the Layers of Insight.pptx
The Power of Data-Driven Storytelling_ Unveiling the Layers of Insight.pptxThe Power of Data-Driven Storytelling_ Unveiling the Layers of Insight.pptx
The Power of Data-Driven Storytelling_ Unveiling the Layers of Insight.pptxTasha Penwell
 
Cyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded dataCyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded dataTecnoIncentive
 
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024Susanna-Assunta Sansone
 
modul pembelajaran robotic Workshop _ by Slidesgo.pptx
modul pembelajaran robotic Workshop _ by Slidesgo.pptxmodul pembelajaran robotic Workshop _ by Slidesgo.pptx
modul pembelajaran robotic Workshop _ by Slidesgo.pptxaleedritatuxx
 
Digital Marketing Plan, how digital marketing works
Digital Marketing Plan, how digital marketing worksDigital Marketing Plan, how digital marketing works
Digital Marketing Plan, how digital marketing worksdeepakthakur548787
 
SMOTE and K-Fold Cross Validation-Presentation.pptx
SMOTE and K-Fold Cross Validation-Presentation.pptxSMOTE and K-Fold Cross Validation-Presentation.pptx
SMOTE and K-Fold Cross Validation-Presentation.pptxHaritikaChhatwal1
 
Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Seán Kennedy
 
Principles and Practices of Data Visualization
Principles and Practices of Data VisualizationPrinciples and Practices of Data Visualization
Principles and Practices of Data VisualizationKianJazayeri1
 
Networking Case Study prepared by teacher.pptx
Networking Case Study prepared by teacher.pptxNetworking Case Study prepared by teacher.pptx
Networking Case Study prepared by teacher.pptxHimangsuNath
 

Último (20)

Insurance Churn Prediction Data Analysis Project
Insurance Churn Prediction Data Analysis ProjectInsurance Churn Prediction Data Analysis Project
Insurance Churn Prediction Data Analysis Project
 
What To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptxWhat To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptx
 
Semantic Shed - Squashing and Squeezing.pptx
Semantic Shed - Squashing and Squeezing.pptxSemantic Shed - Squashing and Squeezing.pptx
Semantic Shed - Squashing and Squeezing.pptx
 
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis model
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis modelDecoding Movie Sentiments: Analyzing Reviews with Data Analysis model
Decoding Movie Sentiments: Analyzing Reviews with Data Analysis model
 
Learn How Data Science Changes Our World
Learn How Data Science Changes Our WorldLearn How Data Science Changes Our World
Learn How Data Science Changes Our World
 
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
 
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...
Minimizing AI Hallucinations/Confabulations and the Path towards AGI with Exa...
 
Decoding the Heart: Student Presentation on Heart Attack Prediction with Data...
Decoding the Heart: Student Presentation on Heart Attack Prediction with Data...Decoding the Heart: Student Presentation on Heart Attack Prediction with Data...
Decoding the Heart: Student Presentation on Heart Attack Prediction with Data...
 
Rithik Kumar Singh codealpha pythohn.pdf
Rithik Kumar Singh codealpha pythohn.pdfRithik Kumar Singh codealpha pythohn.pdf
Rithik Kumar Singh codealpha pythohn.pdf
 
Decoding Patterns: Customer Churn Prediction Data Analysis Project
Decoding Patterns: Customer Churn Prediction Data Analysis ProjectDecoding Patterns: Customer Churn Prediction Data Analysis Project
Decoding Patterns: Customer Churn Prediction Data Analysis Project
 
Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...
 
The Power of Data-Driven Storytelling_ Unveiling the Layers of Insight.pptx
The Power of Data-Driven Storytelling_ Unveiling the Layers of Insight.pptxThe Power of Data-Driven Storytelling_ Unveiling the Layers of Insight.pptx
The Power of Data-Driven Storytelling_ Unveiling the Layers of Insight.pptx
 
Cyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded dataCyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded data
 
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
 
modul pembelajaran robotic Workshop _ by Slidesgo.pptx
modul pembelajaran robotic Workshop _ by Slidesgo.pptxmodul pembelajaran robotic Workshop _ by Slidesgo.pptx
modul pembelajaran robotic Workshop _ by Slidesgo.pptx
 
Digital Marketing Plan, how digital marketing works
Digital Marketing Plan, how digital marketing worksDigital Marketing Plan, how digital marketing works
Digital Marketing Plan, how digital marketing works
 
SMOTE and K-Fold Cross Validation-Presentation.pptx
SMOTE and K-Fold Cross Validation-Presentation.pptxSMOTE and K-Fold Cross Validation-Presentation.pptx
SMOTE and K-Fold Cross Validation-Presentation.pptx
 
Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...
 
Principles and Practices of Data Visualization
Principles and Practices of Data VisualizationPrinciples and Practices of Data Visualization
Principles and Practices of Data Visualization
 
Networking Case Study prepared by teacher.pptx
Networking Case Study prepared by teacher.pptxNetworking Case Study prepared by teacher.pptx
Networking Case Study prepared by teacher.pptx
 

Intelligent integration with WSO2 ESB & WSO2 CEP

  • 1. Intelligent  Integration     with  WSO2  ESB  and  WSO2  CEP Sriskandarajah  Suhothayan  (Suho) Technical  Lead   WSO2  Inc.              
  • 5. Connected  Business  ! To identity threats & opportunities
  • 6. What  to  integrate  ? In the line of Connected Business there will be many software systems • Enterprise Resource Planning systems (ERP) • Management Information Systems (MIS) • Decision Support Systems (DSS) • Data stores • Legacy systems
  • 7. Issues  in  integration But integrating a multitude of complex software applications is not an easy task … • Disparate Systems, Services, Protocols • Diverse and dynamic business requirements • No single vendor/solution • On premise/Cloud solutions • Different QoS requirements • Not everyone adhere to standards
  • 8. How  could  we  integrate  ?
  • 9. How  could  we  integrate  ? Point to point connections ?
  • 10. How  could  we  integrate  ?
  • 11. How  could  we  integrate  ?
  • 12. • Scalability, maintainability, troubleshooting nightmares. How  could  we  integrate  ?
  • 15. Integration  Platform  Contains  … • WSO2 ESB – Connects anything with every thing • WSO2 DSS, WSO2 GReg – Expose data as a service, Repository and governance • WSO2 MB – Guaranteed messaging • WSO2 IS – Security, SSO, Role based access control
  • 19. The  Prevention  …  ? • Monitor ! • Monitor ! • Monitor !
  • 20. The  next  mile  ...  ! Monitor and … • Take reactive action • Predict future & take preventive measures • Auto recovery at failure • Optimum resource utilisation • Ensure security & QoS • Alerts
  • 21. Is  it  working  as  expected  ? • The load of the system
  • 22. ! It can be The  solution  should  be • A realtime system • Capable of processing data on the fly • Notify alerts in various forms • Enable enterprise integration
  • 23. What  is                                                                                ?
  • 24. How  ESB  integrates  with  CEP?
  • 25. How  CEP  integrates  with  ESB?
  • 26. Patterns   • Monitoring Proxy service/API : QoS (E.g Response time) • In Message Store & forward : Managing the Queue • Monitoring Routing : Scaling, Throttling, Blacklisting
  • 27. Monitoring  QoS  on  Proxy  Services  &  APIs   Monitoring response time
  • 28. define stream ResponseTimeStream ( ! ! arrivalTime long, departureTime long, ! ! correlationID string, serviceID string, … ) ;! ! from ResponseTimeStream! ! [departureTime - arrivalTime > 2 min]! select correlationID, serviceID! insert into NotificationStream ; Monitoring  QoS  on  Proxy  Services  &  APIs  
  • 29. Tuning  Message  Store  and  Forward   • Monitoring the Message Queue
  • 30. Tuning  Message  Store  and  Forward   define stream QueueStatStream ( queueID string, size long ) ;! ! define partition QueuePartition QueueStatStream.queueID;! ! from a1 = QueueStatStream, ! a2 = QueueStatStream[size >a1. size]+! within 2 min! select a1. queueID as queueID, ! ! a1. size as firstSize,! ! a2[last]. size as lastSize! insert into AdjustForwardingProcessStream! partition by QueuePartition;
  • 31. Monitoring  ESB  routing  and  Scaling
  • 32. Monitoring  ESB  routing  and  Scaling define stream RequestStream ( ! ! ! correlationID string, serviceID string, ! ! endpointID string, … ) ;! ! from RequestStream! select count(correlationID) as requestCount, ! ! serviceID, true as scaleUp! group by endpointID! having up requestCount > 90! insert into ScaleUpStream ;
  • 35. Throttling  &  Blacklisting  users define stream RequestStream ( correlationID string, serviceID string, ! ! ! userID string, tear string, requestTime long, … ) ;! ! define table BlacklistedUserTable(userID string,! ! ! ! ! time long,requestCount long); !
  • 36. Throttling  &  Blacklisting  users define stream RequestStream ( correlationID string, serviceID string, ! ! ! userID string, tear string, requestTime long, … ) ;! ! define table BlacklistedUserTable(userID string,! ! ! ! ! time long,requestCount long); ! ! from RequestStream[tear==‘BRONZE’]#window.time(1 min)! select userID, requestTime as time, ! ! count(correlationID) as requestCount! group by userID! having up requestCount > 5! insert into BlacklistedUserTable ;! !
  • 37. Throttling  &  Blacklisting  users define stream RequestStream ( correlationID string, serviceID string, ! ! ! userID string, tear string, requestTime long, … ) ;! ! define table BlacklistedUserTable(userID string,! ! ! ! ! time long,requestCount long); ! ! from RequestStream[tear==‘BRONZE’]#window.time(1 min)! select userID, requestTime as time, ! ! count(correlationID) as requestCount! group by userID! having up requestCount > 5! insert into BlacklistedUserTable ;! ! from RequestStream[not(userID in BlacklistedUserTable. userID)] ! select *! insert into ApprovedRequestStream ;
  • 38. Patterns   • Monitoring Proxy service/API : QoS (E.g Response time) • In Message Store & forward : Managing the Queue • Monitoring Routing : Scaling, Throttling, Blacklisting ! • In Load balancing : Fix out of order arrivals • Rules : Temporal
  • 39. Patterns   • Monitoring Proxy service/API : QoS (E.g Response time) • In Message Store & forward : Managing the Queue • Monitoring Routing : Scaling, Throttling, Blacklisting ! • In Load balancing : Fix out of order arrivals • Rules : Temporal ! • For Business Decisions : KPIs, Usage patterns, 
 Waiting for the right time.. to trigger • Monitoring for Security : Detect Attacks, Credit card fraud, 
 Login patterns, Blacklisting
  • 40. Waiting  for  the  right  time  …  to  pull  trigger
  • 41. Waiting  for  the  right  time  …  to  pull  trigger define stream StockOrderRequest ( symbol string, ! ! ! ! ! action string ) ;! define stream StockStream ( symbol string, price double, … ) ;! ! define partition Stocks StockStream.symbol, ! ! ! ! ! ! StockOrderRequest.symbol ;! ! from a1 = StockOrderRequest[action==‘buy’],! ! b1 = StockStream[price<a1.price]+,! ! b2 = StockStream[price>b1.price]! select a1.symbol as symbol, ! ! b1[0].price as firstPrice, ! ! b2.price as orderPrice! insert into PurchaseOrder;! partition by Stocks
  • 42. Fixing  Security  Vulnerabilities   • Identify Dos attacks • Analyse login patterns • Detect credit card fraud • Blacklisting
  • 44. Fixing  Security  Vulnerabilities   define stream PasswordChangeStream (userId string, time long); ! ! define stream TransactionStream (userId string, ! amount double, … ); ! ! from every (a1 = PasswordChangeStream) -> ! a2 = TransactionStream[amount >10000] ! within 1 hour! select a1.userId as userId, a2. amount as amount! insert into PotentialFraud ;
  • 45. ! Better three hours too soon, than one minute too late. ! ! ! William Shakespeare
  • 46. Thank  You                Questions ?