Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

12
Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

Transcript of Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

Page 1: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

Complex Event Processing

Prof. Richard Holowczak

© 2007-2013 Richard Holowczak All rights reserved.

Page 2: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

2

Streams of Data

• RFID scans• Transportation / Traffic scans• Web site visits• Server logs• Financial / Market data• Manufacturing Processes• Environmental monitoring / Remote sensing• Gaming events

© 2007-2012 Richard Holowczak All rights reserved.

Page 3: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

3

Challenges of Streaming Data

• Data may arrive and demand action at a rate faster than a traditional database can respond

• Require flexibility / generalizability in coding approaches – Compare custom C++/Java vs. a query language like

SQL

© 2007-2012 Richard Holowczak All rights reserved.

Page 4: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

4

DBMS vs. Stream Processing

© 2007-2012 Richard Holowczak All rights reserved.

InsertEvent

DatabaseData

Query

Query Result

Action

1 2 3

4 5

InsertEvent

DatabaseData

Query

Action

1

2

Query Result

34

5

CEP

DBMS

CEP

Page 5: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

© 2007-2012 Richard Holowczak All rights reserved. 5

Event Processing Vendors• Generic Systems

– Oracle CEP www.oracle.com/us/products/middleware/soa/event-processing

– Amazon Kinesis aws.amazon.com/kinesis– SQL Stream www.sqlstream.com

• Financial Services - Oriented– Sybase Aleri www.aleri.com– TIBCO StreamBase www.streambase.com– Apama

www.softwareag.com/corporate/products/bigdata/apama/

Page 6: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

© 2007-2012 Richard Holowczak All rights reserved. 6

Stream / Event Processing

• Data arrives in a stream, e.g.– Weather data– RFID scans– Market Data

• Rules put in place to match patterns in one or more streams

• When a rule is “satisfied” trigger and Event or Alert– Possibly triggering some further actions

Page 7: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

© 2007-2012 Richard Holowczak All rights reserved. 7

Complex Event Processing – Example from Apama

Source: Algorithmic Trading: The use of algorithms in automated trading. by John Bates. Dr. Dobb's Portal. March 9, 2007http://www.ddj.com/hpc-high-performance-computing/197801615

Page 8: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

© 2007-2012 Richard Holowczak All rights reserved. 8

CEP – Apama Example Trading Rule

Source: Algorithmic Trading: The use of algorithms in automated trading. by John Bates. Dr. Dobb's Portal. March 9, 2007http://www.ddj.com/hpc-high-performance-computing/197801615

Page 9: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

9

Oracle CEP Example

© 2007-2012 Richard Holowczak All rights reserved.

Page 10: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

10

Oracle CEP Applications• Adapters – connect inbound and outbound data streams

(can also be relational databases)• Channels – act as queues accepting data and passing it

along to processors• Processors (event processing agents) – applies standing

queries to channels and produces output events / signals• Beans / Event Beans – Java Beans apps that are triggered

by events – carry out the work when an event occurs

© 2007-2012 Richard Holowczak All rights reserved.

From: http://www.oracle.com/technetwork/middleware/complex-event-processing/overview/oracle-47.pdf

Page 11: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

11

Oracle CEP Development Tools

© 2007-2012 Richard Holowczak All rights reserved.

Page 12: Complex Event Processing Prof. Richard Holowczak © 2007-2013 Richard Holowczak All rights reserved.

12

Oracle Continuous Query Language (CQL)

• Two main data objects to operate on: Streams and Relations

• Stream and Relational (SQL) operators– Oracle CEP CQL Language Referencehttp://docs.oracle.com/cd/E23943_01/apirefs.1111/e12048/toc.htm

© 2007-2012 Richard Holowczak All rights reserved.