Professional Documents
Culture Documents
4 de junho de 2018
1 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
2 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
3 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Definições de Evento
4 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Fluxo de Eventos
5 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
6 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
7 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
8 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
9 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
10 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Produtores de Eventos
11 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
12 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
13 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
14 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
15 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
15 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
15 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
16 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
17 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
1 Orientadas a fluxos
Seguem o projeto formal da Continuous Query Language
(CQL), uma extensão do SQL que inclui operadores sobre
fluxos
2 Orientadas a regras
Baseadas em inferência e cláusulas Evento-Condição-Ação
(ECA)
18 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
19 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
20 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
21 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
22 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Primitivas de Transformação
23 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Conjunção: E1 ∧ E2 ∧ · · · ∧ En
Disjunção: E1 ∨ E2 ∨ · · · ∨ En
Negação: qE [10min]
24 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
25 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Contexto
26 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
27 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Janela de Tempo
Tipos:
Janelas de marco de tempo (Landmark time windows):
armazena todos os eventos produzidos em um intervalo ∆ de
tempo e aplica a consulta contı́nua neste conjunto de eventos
Janelas deslizantes (sliding windows): janela de marco de
tempo móvel que contêm os eventos ocorridos nas últimas ∆
unidades de tempo
28 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
29 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
30 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Esper
31 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Esper
31 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Esper
31 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Esper
31 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
32 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Arquitetura do Esper
33 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Representação de Eventos
34 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
public Date g e t T i m e O f R e a d i n g () {}
}
35 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Propriedades de Eventos
Modelo de Processamento
37 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Subscriber
38 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Insert Stream
42 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
45 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
45 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
45 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
46 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
47 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Join em SQL
48 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
49 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
50 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
51 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
52 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
53 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
54 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
55 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
56 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
57 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
58 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
59 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
60 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Operadores de Padrões
61 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Operadores de Padrões
Every
every (A -> B) : Detecta quando um evento A for sucedido
por um evento B
Repeat: Dispara quando uma sub-expressão contendo um
padrão é avaliada como verdadeira uma dada quantidade de
vezes
[5] (A or B) : dispara quando o último de cinco eventos A
ou B chegar
And
(A -> B) and (C -> D) : casa quando qualquer sequência
de um evento A seguido por um evento B e um evento C
seguido por um evento D, ou um evento C seguido por um
evento D e um evento A seguido por um evento B
ocorrer
62 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Exemplo de Padrão
63 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Operador Every
64 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
65 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
66 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
67 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
DG2CEP EPN
68 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Avaliação do DG2CEP
69 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
O Middleware M-Hub/CDDL
70 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
71 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Funcionalidades do M-Hub/CDDL
72 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Funcionalidades do M-Hub/CDDL
72 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Funcionalidades do M-Hub/CDDL
72 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Funcionalidades do M-Hub/CDDL
72 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Funcionalidades do M-Hub/CDDL
72 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Funcionalidades do M-Hub/CDDL
72 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Funcionalidades do M-Hub/CDDL
72 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Funcionalidades do M-Hub/CDDL
72 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Funcionalidades do M-Hub/CDDL
MHub
73 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
Arquitetura do M-Hub/CDDL
74 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
3 Monitoramento de QoC
4 Aplicação de Filtros
75 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
76 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
// ruleId pode ser usado para remover a regra (ver cometario abaixo)
int ruleId = subscriber.getMonitor().addRule(cepRule, monitorListener);
77 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
78 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
79 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
80 / 81
Agenda Parte I: Conceitos Principais Parte II: Prática com Esper Parte III: Aplicações do CE
81 / 81