lucas jellema oracle openworld 2014, san francisco, ca, usa how fast data is turned into fast...

62
Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

Upload: denis-mathews

Post on 15-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

Lucas Jellema

Oracle OpenWorld 2014, San Francisco, CA, USA

How Fast Data Is Turned into Fast Information and Timely Action

Page 2: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

2

Audience Challenge

Page 3: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

3

Audience Challenge

Page 4: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

4

Audience Challenge

Page 5: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

5

Audience Challenge

Page 6: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

6

Audience Challenge

Page 7: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

7

Audience Challenge

Page 8: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

8

Filter

Pattern Detection

Agregate

Page 9: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

9

Fast Data Example

14,016,114,116,116,013,114,016,013,113,014,116,014,113,014,116,013,114,0

Smart Processing• Information• Conclusion• Alert• Recommendation• Action

Page 10: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

10

Demonstration: Live Tennis

• Tennis Tournament• Many matches played in parallel• The data that is produced:

– At a rate of up to 10 events/minute

Match Id, Player [who scored]14,016,114,116,116,013,114,0

Page 11: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

11

Demonstration: Live Tennis

• The information, conclusions &actions we are looking for:– Scoreboard per game, set, match– Match start and completion (action:

inform next players for that court)– Interrupted match (action: go and check

out the reason for the interruption)

Fast Data

Smart Processing

• Scoreboard• Match start and

completion • Interrupted match

Page 12: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

12

Real Time – from event to UIPush through Web Sockets

Fast Data

Smart Processing

Oracle Event Processor

WebLogic

eventWebSocket

Servermsg

msg

CQL queries

Page 13: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

13

WebSocket Powered Scoreboard

Page 14: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

14

OEP application to process fast tennis data

• Preparation– Define event definitions– Create local, in memory cache with static, enriching data– Gather (in this case generate) tennis data through adapter– Create Event Sink to consume all findings and publish to console

TennisMatchEvent

matchIdplayer

Page 15: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

15

Match Level events

Page 16: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

16

Rally’s to games

- The first player to have won more than 4 points

- and have won two or more points more than his opponent

TennisMatchEvent

matchIdplayer

Page 17: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

17

Detect interrupted matches by ‘finding’ missing events

• When a match is interrupted, obviously no more ‘rally point events’ are produced

• Detecting the absence of these events for a match [that has begun] is equivalent to detecting an interruption of the match– Unless the match is complete because someone won

Page 18: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

18

Detect interrupted matches by ‘finding’ missing events

Page 19: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

19

Complete EPN diagram for Tennis Tournament Processor

• A single OEP application that consumes fine grained rally point events and performs three-stage aggregation and enrichment

TennisMatchEvent

matchIdplayer

New Match

Match Finish

InterruptedMatch

Set WonGame

Won

Page 20: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

Overview

• What is [special about] Fast Data?– Continuous, Volume|Velocity|Variety, Real Time

• Challenges– Volatile, non persistent– Data => Information, Conclusion, Alert, Recommendation, Action

• Strategies– Smart gathering– Discard – filter, aggregate, pattern

(and also look for missing events!)– Promote (process, enrich)– Visualize

• Technology/Tools• Demonstration/Cases

Page 21: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

21

Fast Data

• Tweet• Feed• Beat• Signal• Measurement• Message• Mail• Notification• Tick• Pulse

Page 22: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

22

New theme (that brings it all together)

Page 23: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

23

Some event producing devices

Page 24: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

24

Page 25: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

Most of these events….

Page 26: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

26

Page 27: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

27

Fast Data Processing

Fast Data

Smart Processing

• Information• Conclusion• Alert• Recommendation• Action

Page 28: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

28

Fast Data ProcessingMulti-stage cleansing & aggregation

Fast Data

Smart Processing

• Information• Conclusion• Alert• Recommendation• Action

Page 29: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

29

Typical Flow and Additional Challenge…

Business event

Bu

sin

ess

Val

ue

Data captured

Analysis completedAction taken

Fragmented event entities

TIME

Page 30: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

30

The V-factor

VolumeVelocityVariety

VALUE

Page 31: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

31

Key strategy

• Discard – as early as possible (close to the source)– Ignore irrelevant events– Filter out unneeded attributes– Takes samples instead of entire stream– Aggregate: merge multiple, correlated events into one

Page 32: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

32

Fast Data Processing:Oracle Event Processor

Fast Data

Smart Processing

Oracle Event Processor

RMIFile

RESTHTTP Channel

JMSDatabase

Custom (Java)SOA Suite EDN

CoherenceJMX

QuickFix (financial)

RMIFileRESTHTTP ChannelJMSBusiness RuleDatabaseCustom (Java)SOA Suite EDNCoherenceJMX

Page 33: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

33

Oracle Event Processor

• Light weight, real-time (sub-sub-second), in-memory, continuous query engine– Available in embedded form – with corresponding licence

• Interacts with many different channels – inbound and outbound• Has internal caches to enrich events and temporarily retain events• Uses CQL to:

– Filter, aggregate, enrich and detect patterns (including missing events)

events

Event Processor

Page 34: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

35

Fast Data ProcessingFusion Middleware Tooling

Fast Data

Smart Processing

Oracle Event Processor

Coherence

SOA Suite 12c EDN

RMIFile

RESTHTTP Channel

JMSDatabase

JMXCustom (Java)

RMIFileRESTHTTP ChannelJMSBusiness RuleJMXDatabaseCustom (Java)

Page 35: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

36

Fast Data ProcessingFusion Middleware Tooling

Fast DataSmart Processing

• Information• Conclusion• Alert• Recommendation• Action

OEP

BAM

ADFCoherence SOA Suite

EDNBPMSuite

BPELTask

BIRTD

ODIGolden Gate

NoSQL

Page 36: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

37

Business User Friendly Exploration of Fast Data: Stream Explorer

Page 37: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

38

Credit Card Theft Detection

• Several situations in the past– Credit card is stolen in the main terminal building– Several purchases are made in shops on the way from that area to the main exit

• Purchases between $200-$500 dollar• Purchases made within 5 minutes of each other• Sometimes the purchases are made in not entirely the direct route to the exit

EXIT

Main Terminal

Page 38: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

39

Credit Card Theft Detection

• Several situations in the past– Credit card is stolen in the main terminal building– Several purchases are made in shops on the way from that area to the main exit

• Purchases between $200-$500 dollar• Purchases made within 5 minutes of each other• Sometimes the purchases are made in not entirely the direct route to the exit

• To catch the perpetrator– Consume the credit card purchase event stream for airport shops– Spot situations where three or more purchases of $200-$500 are made within 5

minutes from each other and roughly in the terminal => exit physical order– Publish an event to alert security staff

• To watch for any further purchases with that credit card• To inform show staff for that credit card• To send staff to the exit to try and apprehend the thief

(perhaps based on the shopping bags he is carrying from the shops he bought stuff at)

Page 39: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

40

Catch me if you can

EXIT

Main Terminal

Page 40: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

41

Catch me if you can

EXIT

Main Terminal

$440$300

$380

$250

Page 41: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

42

CQL to detect ‘funny string of transactions’

Page 42: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

43

Real Time – from Event to TaskOEP => SOA Suite 12c EDN

Fast Data

Smart Processing

Oracle Event Processor

SOA Suite 12c

EDNevent event

Page 43: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

44

Real Time – from Event to TaskOEP => SOA Suite 12c EDN

Fast Data

Smart Processing

Oracle Event Processor

SOA Suite 12c

EDN

BPEL Task

BPMN

Medi-ator

event event

event

Page 44: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

45

From OEP finding to EDN Business Event triggering the SOA Suite

Page 45: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

46

Human consumers

• Slow at data processing• Not electronically connected• Visually oriented (1 picture > 1000 words)• Frequently (though perhaps decreasingly so) the actor or decision maker

• Interact along human communication channels• Use visualization to present findings, conclusions, recommended actions

– And as a second tier of fast data processing:Highlight (filter), aggregate, patterns, extrapolate/interpolate, missing elements

• Sometimes take over from humans and just take action

Page 46: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

47

Visualize and Aggregate

Page 47: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

48

Real Time – from event to UIBusiness Activity Monitoring

Fast Data

Smart Processing

Oracle Event Processor

WebLogic

JMS

event

msgBAMmsg

Page 48: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

49

Real Time – from event to UIADF DVT Visualizations

Fast Data

Smart Processing

Oracle Event Processor

WebLogic

JMS

event

msg

ADF DVT

msg

Page 49: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

50

Visualize physical locations of [string of] suspicious transactions

Page 50: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

51

Summary

• Fast Data (events): Vast, Continuous, Velocity, Variety– Wanted: Near real time conclusions, recommendations, alerts, actions

• Strategy:– Discard – as early as possible (Filter, Aggregate)– Enrich, Correlate and Pattern Match, Missing Events, Retain, Publish higher level,

more coarse grained business event– Repeat this cycle multiple times (such as rally point, game, set, match)

• Technology for Fast Data processing: Oracle Event Processor & CQL– Interacts with JMS, EDN, RMI, HTTP (/REST), JMX, Database, Coherence

• New: Stream Explorer – business friendly, industry pattern based fast data explorations and visualization

• To assist humans in Fast Data and Information Processing: Visualization– Filter, Aggregate, Enrich, Pattern Match (1 picture > 1000 words)– Technology: BAM (Dashboard and Rule processing), ADF Data Visualization– Also: turn findings into actions using Human Task, BPEL and BPM via the SOA Suite

12c Event Delivery Network (EDN)

Page 51: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action
Page 52: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

53

Fast Data Example

14,016,114,116,116,013,114,016,013,113,014,116,014,113,014,116,013,114,0

Smart Processing

Oracle Event Processor

Page 53: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

54

Demonstration: Live Tennis

• Tennis Tournament• Many matches played in parallel• The data that is produced:

– At a rate of up to 10 events/minute

Match Id, Player [who scored]14,016,114,116,116,013,114,0

Page 54: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

55

Demonstration: Live Tennis

• The information, conclusions &actions we are looking for:– Scoreboard per game, set, match– Match start and completion (action:

inform next players for that court)– Interrupted match (action: go and check

out the reason for the interruption)

Fast Data

Smart Processing

• Scoreboard• Match start and

completion • Interrupted match

Page 55: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

56

OEP application to process fast tennis data

• Preparation– Define event definitions– Create local, in memory cache with static, enriching data– Gather (in this case generate) tennis data through adapter– Create Event Sink to consume all findings and publish to console

TennisMatchEvent

matchIdplayer

Page 56: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

57

Simple Time-slice Aggregation

• Produce aggegrates once every 30 seconds– Count number of matches going on currently (meaning: in the last 30 seconds)– Calculate average time per rally (over the last 30 seconds)– Count total number of points played (over the last 30 seconds)

Page 57: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

60

Match Level events

Page 58: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

61

Rally’s to games

- The first player to have won more than 4 points

- and have won two or more points more than his opponent

TennisMatchEvent

matchIdplayer

Page 59: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

62

Games to Sets

- The first player to have won more than 5 games

- and have won two or more games more than his opponent

Page 60: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

63

Detect interrupted matches by ‘finding’ missing events

• When a match is interrupted, obviously no more ‘rally point events’ are produced

• Detecting the absence of these events for a match [that has begun] is equivalent to detecting an interruption of the match– Unless the match is complete because someone won

Page 61: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

64

Detect interrupted matches by ‘finding’ missing events

Page 62: Lucas Jellema Oracle OpenWorld 2014, San Francisco, CA, USA How Fast Data Is Turned into Fast Information and Timely Action

65

Complete EPN diagram for Tennis Tournament Processor

• A single OEP application that consumes fine grained rally point events and performs three-stage aggregation and enrichment

TennisMatchEvent

matchIdplayer

New Match

Match Finish

InterruptedMatch

Set WonGame

Won