IP Library Granted Patent US 7,523,462
Granted Patent B1
US 7,523,462 · App. 10/446,336 · Granted Apr 21, 2009

Method for providing a real time view of heterogeneous enterprise data

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,523,462
App. No.
10/446,336
Granted
Apr 21, 2009
Kind
B1
Abstract

A method for providing a real time view of heterogeneous enterprise data of operational systems includes capturing streams of operational events in real time, combining the events with contextual data, and materializing a resulting view. The resulting view includes a dynamically defined view of the stream of events and provides visibility into a current state of the operational system. A view snapshot is continuously incrementally updated by a view maintenance engine as a stream of rows. The views are used to evaluate a business rule. An alert is fired when a business rule holds true. To enable the view in a view engine, a SQL string characterizing the view is parsed into a parse tree, which is normalized to form a query graph. The query graph is then optimized to obtain a query plan, which is compiled into an operator graph. Queries are executed based upon the operator graph.

Claims (36)

1. In a view engine comprising a business activity monitoring system, a method for determining a content of a snapshot of a real time view of heterogeneous enterprise data of an operational system, comprising:

capturing a stream of operational events in real time;

materializing a resulting view, wherein said resulting view comprises a dynamically defined view of said stream of events; and wherein said resulting view provides visibility into a current state of said operational system from a plurality of views, wherein said materializing of said resulting view comprises:

receiving a view query in a structured query language (SQL);

executing a “from” clause within said view query, wherein said “from” clause joins across said plurality of views, wherein one of said plurality of views comprises an event view, and wherein a remainder of said plurality of views comprises a context view;

modeling an event associated with said event view as a data stream;

modeling said context view as a relation;

retrieving a row corresponding to said context view;

constructing a compound row comprising a row from said data stream joined with said retrieved row from said context view; and

depicting said compound row as a snapshot.

2. In a business activity monitoring system, a method for enabling a real time view of heterogeneous enterprise data of an operational system in a view engine, comprising:

capturing a stream of operational events in real time;

materializing a resulting views wherein said resulting view comprises a dynamically defined view of said stream of events, and wherein said resulting view provides visibility into a current state of said operational system from a plurality of views, wherein said materializing of said resulting view comprises:

receiving a structured query language (SQL) string;

parsing said SQL string into a parse tree;

normalizing said parse tree to form a query graph;

optimizing said query graph to obtain a query plan;

compiling said query plan into an operator graph; and

executing a query based upon said operator graph, wherein said query defines said view.

3. The method as recited in claim 2 wherein said operator graph comprises a query execution plan comprising an operator selected from a group consisting of:

event scan, wherein said event scan operator subscribes to said stream of events and gets rows corresponding to said events;

view exchange, wherein said view exchange operator maintains a snapshot of said view;

remote scan, wherein said remote scan operator scans a context table;

nested loop join, wherein said nested loop join operator performs a nested loop joining operation;

group by, wherein said group by operator performs a group by and a set function evaluation operation; and

projection, wherein said projection operator performs an operation wherein wanted columns are projected.

4. The method as recited in claim 2 wherein said operator graph is executed in a view maintenance engine comprising a business activity monitoring system by a method for continuously and incrementally updating a view snapshot of a view comprising, comprising:

determining a processing plan for continually maintaining said view;

subscribing said view to a stream publisher wherein said stream publisher publishes a stream of data corresponding to said view; and

continuously maintaining said view corresponding to said stream, wherein said continuously maintaining of said view comprises:

forming a row for at least one event in said stream of events; and

joining retrieved contextual data with said row to form a compound row within said view, wherein said contextual data comprises data relevant to said at least one event.

5. The method as recited in claim 4 wherein said view comprises a joinder selected from a group consisting of a first event view and a second event view, and said input stream with a context view for said contextual data.

6. The method as recited in claim 4 wherein said view snapshot comprises an input stream for a subsequent view.

7. The method as recited in claim 4 wherein said contextual data comprises data selected from a group consisting of static data and slowly changing data.

8. The method as recited in claim 7 wherein said contextual data comprises said slowly changing data and wherein a change in said contextual data is reflected upon joining said change in said contextual data with a subsequent event row.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 29, 2008
From: IBM INTERNATIONAL GROUP BV
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 021301/0428 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2008
From: COGNOS ULC
To: IBM INTERNATIONAL GROUP BV
Reel/Frame 021281/0850 →
CERTIFICATE OF AMALGAMATION Recorded Jul 24, 2008
From: COGNOS INCORPORATED
To: COGNOS ULC
Reel/Frame 021316/0329 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 18, 2007
From: CELEQUEST CORP.
To: COGNOS INCORPORATED
Reel/Frame 019314/0133 →