Apresentando CEP - TDC2011 / Trilha SOA

30
Como funciona e trabalha os eventos complexo. @paulosampei

Transcript of Apresentando CEP - TDC2011 / Trilha SOA

Page 1: Apresentando CEP - TDC2011 / Trilha SOA

Como funciona e trabalha os eventos complexo.

@paulosampei

Page 2: Apresentando CEP - TDC2011 / Trilha SOA

O que é um Evento?

O que é Complex Event Processing (CEP)?

Princípios do CEP: baseados em sistemas

Princípios do CEP: dentro do contexto

Monitorar, Analisar e Atuar com CEP

CEP – Para todos Eventos

Porque CEP é importante, dentro do contexto SOA

Adoção do CEP

Onde CEP é usado?

Plataformas CEP no mercado

O que é APAMA CEP?

Como o APAMA trabalha?

Sobre APAMA Correlator

Exemplo Regra: Click Stream do TDC2011

Princípios da plataforma CEP APAMA

Arquitetura APAMA em alto nível

Quem está envolvido em projeto APAMA?

Page 3: Apresentando CEP - TDC2011 / Trilha SOA

Evento é um pedaço de dado que representa um acontecimento.

Exemplo de evento inclui:

◦ Eventos de mercado financeiro:

“Comprar 10,000 ações da IBM por R$80,45”

◦ Eventos de Supply chain:

“RFID tag 121.19.1818 foi escaneado as1:39PM no dock door 10”

◦ Eventos de segurança:

“Endereço TCP/IP 128.1.32.298 foi acessado no servidor 5”

Page 4: Apresentando CEP - TDC2011 / Trilha SOA

Não é Código de Endereçamento Postal

CEP (Complex Event Processing)◦ Processamento de eventos complexos (CEP) é a

capacidade de gerenciar eventos, a fim de identificar e tomar medidas a partir de padrões definidos, indicando oportunidades e/ou ameaças para o negócio, onde temos uma percepção de situações, sentir e responder sempre controlando e rastreando.

CEP permite que se aplique em real-time inteligência para um streaming data, exemplo:◦ Sequência de eventos (A seguido por B, então C) ◦ com condicional (o valor de A é >100)◦ ou restrições temporais (dentro 5 minutos)

X

Page 5: Apresentando CEP - TDC2011 / Trilha SOA

Detecta padrões complexos de um stream de eventos em tempo-real, onde os dados pode ter uma janela de tempo, maximizando seu valor

Atuar sobre ameaças ou oportunidade com capacidade de respostas em tempo-real

Algo Trading

Energy Trading/Hedging

Preços em tempo real

Aplicações Event Driven

Pra que é usado?

RFID

Grade de Energia

Linha de montagem

Sensibilidade e Resposta nas Aplicações

Pesquisa de mercado

Alvo de Marketing Click stream

Fraude CartãoCrédito

BAM em Tempo-Real

Page 6: Apresentando CEP - TDC2011 / Trilha SOA

Tratar qualquer atualização do negócio como um “evento”

Permitir que usuários rapidamente definam regrasbaseadas em eventos para identificar padrõesindicando oportunidades e tratamento para o negócio

Regras são carregadas em real-time engine queoferece análise e resposta com baixa latência

A engine é permanentemente conectada em váriasfontes de eventos e destinos

Eventos podem ser capturado e guardado em ordem para análise de padrões históricos e análise da causa raiz.

Page 7: Apresentando CEP - TDC2011 / Trilha SOA

Tratar qualquer transação de cartão de créditoatualizado como um“evento”

Permitir que usuários rapidamente definamalgorítmos quantitativo para identificar um usoanormal

Regras são carregadas dentro de um sistema de detecção que oferece análise e resposta com latênciade milesegundos

O sistema de detecção é permanentemente conectadaem vários sistemas de processamento de transação e histórico de banco de dados

Eventos podem ser capturado e guardado em ordem para análise de padrões históricos e análise da causa raiz.

Detecção de fraude em cartões de crédito

Page 8: Apresentando CEP - TDC2011 / Trilha SOA

Complex Event Processing – Atua em movimento

“Quando 2 ou mais transações ocorrer em mais de 1 lugar em

um período de 1 minuto, enviar um alerta.”

Tempo1 2 3 4 5 6 7 8 9

Processamento Tradicional – Atua em dados passados“Houve alguma transação de cartão que teve uma

atividade incomum?”

Event Streams

O que aconteceu (BI/Reporting)?

O que está acontecendo agora (CEP)?

Page 9: Apresentando CEP - TDC2011 / Trilha SOA

CEP monitora, analisa e atua em resposta de eventos que chegam de uma ou mais fontes simultaneamente, incluindo: Transações de negócios Como uma ordem ou remessa

Mudanças de estado de um processo de negócio tais como as etapas de processamento de um pedido

Sensores em objetos físicos ou virtuais tais como um monitoramento de estado de uma máquina ou

localização de um caminhão. Alternativamente, o monitoramento de um jogo de computador ou de um fluxo de cliques.

Streams de eventos externos Tais como mercado de açoes (bolsas), novos feeds, dados

meteorológicos

Page 10: Apresentando CEP - TDC2011 / Trilha SOA

1 - SOA promove o uso de EDA (Event Driven Architecture) incentivando a mudança de informãções

2 - Processos de negócios tendem a operar de forma orientada a eventos.

3 - Por causa das mudanças causadas pelo EDA, tendo a capacidade de processar eventos de forma inteligente o tornando fundamental.

Event Driven Architecture (EDA): Padrão de arquitetura de software que promove a produção, detecção e consumo de uma reação para um EVENTO.

SOA - Conecta a um serviço seguindo uma linha, sequência previsível

EDA - Permite multiplos, menos previsível, eventos assíncronos acontecendo em paralelo e disparando uma simples ação.

Page 11: Apresentando CEP - TDC2011 / Trilha SOA

Preços real-time

Roteamento de pedido inteligenteAgregação de Mercado

Pesquisa de mercado

Riscos real-time

Negociação de ativos

Transporte & Logistica

Telco

Deteção Fraude

Monitoramento Energy Grid

Monitoramento de Processos de Manufatura

Algorithmic Trading (bolsa)

Page 12: Apresentando CEP - TDC2011 / Trilha SOA

Supply Chain & Otimização das vendas

Inventário automatizado / abastecimento para operações de varejo. Onde está este livro agora?

ManufaturaTodas as linhas da operação estão

com máxima eficiência? Há um problema no percurso do

carregamento em uma linha e vai ter um efeito adverso nos processos de entrega do carregamento? Posso absorver alterações de última hora

na demanda?

Page 13: Apresentando CEP - TDC2011 / Trilha SOA

Telco

Identificar sistemas de negócios de baixo desempenho para

assegurar níveis de serviço e se podem ser atendidas e

melhoradas

Logística

Otimização do tráfego marítimo no porto para obter maior eficiência

das operações portuárias e reduzir os custos de combustível

Page 14: Apresentando CEP - TDC2011 / Trilha SOA
Page 15: Apresentando CEP - TDC2011 / Trilha SOA

Uma plataforma completa para construção, emreal-time de aplicações event-driven.

Isso consiste em:

Research Studio

Dashboards integrados em real-time

Ambiente de desenvolvimento baseado emEclipse: Apama Studio

Uma engine de correlação de eventos em real-time com gereciamento e alta disponibilidade

Page 16: Apresentando CEP - TDC2011 / Trilha SOA

MANAGE/MONITOR

Ad

ap

terEvents Events

Events

ESB

Events

Inicia com um evento

Page 17: Apresentando CEP - TDC2011 / Trilha SOA

O correlator é um processo no qual expõe um número de operações remotas através de um transporte baseado emsocket

A operação primária inclui:

◦ Envia eventos para o correlator (input)

◦ Subscreve eventos (ou todos) nos canais de chamadas(output)

◦ Injeta código

Há uma fila de entrada e uma de saída:

e5 e3 e2 e1e4

Fila de entrada Fila de saída

o1o2o3o4o5Código

Page 18: Apresentando CEP - TDC2011 / Trilha SOA

O processo do correlator ocorre na entrada do stream de evento◦ Seguindo as intruções escritas no MonitorScript (linguagem

APAMA)

A performance do correlator é extremamenteeficiente comparado a queries◦ Usando uma estrutura de dados chamada de hypertree

A saída dos stream de eventos do correlator para o clientes◦ Dividi em uma série de canais com eficiência◦ Clientes somente usa os canais que precisarem

O correlator entrega eventos complexos no quais são:◦ Usados internamente◦ Processados no mesmo caminho como um evento externo◦ Todos os processados antes do próximo evento externo

Page 19: Apresentando CEP - TDC2011 / Trilha SOA

Uma aplicação tradicional baseada em aplicação: ◦ Indexa cada item de um dado quando recebido◦ Realiza uma nova consulta depois que cada item é

indexado (ou executa a cada n segundos)◦ Resultado de processos

Este tipo de aplicação te um grande overhead “por evento”

O correlação do evento no APAMA tira de sua cabeça essa ideia◦ O correlator indexa queries, não dados◦ Cada evento é passado sobre as queries

Menos overhead “por evento” = Melhor performance

Page 20: Apresentando CEP - TDC2011 / Trilha SOA

ALL WITHINno período de 60 min

Regra de monitoramento

AND (Aumento do número de cadastros no TDC

IFProcura na WEB por informações do evento TDC2011 aumentar em 5%

ORA taxa de procura ser concluída

))

FOLLOWED-BY (Disponibilidade pela procura da trilha SOA

THENBaixar preço evento (100 pessoas)Lançar uma campanha paraa trilha SOA com desconto

Click Stream

Web Site

Click Stream

Cadastro

DB Histórico

Click Stream

Disponibilidade Trilha

• Sequência de CE

• Data streams tempo-real

• Restrições em tempo-real

• Ação automática

• Sequência temporal

Page 21: Apresentando CEP - TDC2011 / Trilha SOA

Tratar qualquer sistema (aplicações, redes, integrações, ambiental) atualizado como um “evento”

Habilitar regras baseadas em evento definidos para monitorar, analisar e atuar em um “event patterns”

Regras identificam oportunidades ou ameaças que podem ser definidos rapidamente usando uma ferramenta gráfica de modelagem

Regras são carregadas dentro da engine em tempo-real que oferece uma análise e resposta em microsegundos de latência

Engine permanetemente conectada em multiplas redes (backbones) e serviços

Eventos podem ser capturados e guardados em tempo de pedido para uma análise e causa raiz histórica

Page 22: Apresentando CEP - TDC2011 / Trilha SOA

ScenarioDefinition Tools

Dashboard Studio

End-userDashboards

User Tools

EventAnalysis &Storage

HistoricalEvent Store

EventProcessingEngine

Processando e analisando a camada engine

Dados de eventos são analisados e correlacionados. Event store dá acesso históricos de informação. Alta performance e escalável

Camada apresentação

Dando aos usuários visibilidade de cenários e KPIs, permite ajustes de parametros e drill-down

Coleção de eventos

Eventos podem estar disponíveis em multiplos stream em tempo-real como databases e outras informações de sistemas

`

EnterpriseIntegration

Adapter Framework

Middleware DBMS etc.

APIC/C++JAVA.NET

Page 23: Apresentando CEP - TDC2011 / Trilha SOA

Analista

Negócio

Traduz os requisitos para o negócio

Defini e desenha os dashboards

Defini e testa as regras de negócios

Usa e defini análise de negócios adequado

Entende dos processos existentes

Usuário chave

TécnicoArquitetos e

Desenvolvedores

Responsável pela integração de ferramentas dentro de um ambiente

Irá trabalhar com o analista de negócioem suporte a aplicações de negócios

Implementação

Implementação das análises

Responsável por problemas operacionais

Linha Negócio

Usuário final do dashboards

Qual parâmetro alterar ou configurar

Monitorar execuções e receber alertas

Intervir manualmente

Monitorar ações automatizadas

Fornecer probabilidade de R$ projeto

Page 24: Apresentando CEP - TDC2011 / Trilha SOA

monitor StoppedTruck {

TruckUpdate t;

action onload {

on all TruckUpdate(speed <= 0):t

-> TruckUpdate (truckid=t.truckid, speed <= 0)

within(600.0) {

emit StoppedTruck(truckid, “Mova-se!”);

}

}}

event TruckUpdate {

string truckid;

string region;

location gps;

float speed;

}

* Also available in Java

Page 25: Apresentando CEP - TDC2011 / Trilha SOA
Page 26: Apresentando CEP - TDC2011 / Trilha SOA
Page 27: Apresentando CEP - TDC2011 / Trilha SOA
Page 28: Apresentando CEP - TDC2011 / Trilha SOA

Event Processing in Actionby Opher Etzion & Peter Niblett

The Power of Events: An Introduction to Complex Event Processing in Distributed Enterprise Systems (Hardcover)By: David Luckham (Author)

Page 29: Apresentando CEP - TDC2011 / Trilha SOA

[email protected]

[email protected]

http://progress.com/apamahttp://progress.com

@paulosampei

http://web.progress.com/pt-br/apama/calender-apama.html

Page 30: Apresentando CEP - TDC2011 / Trilha SOA