IP Library Granted Patent US 11,093,562
Granted Patent B2
US 11,093,562 · App. 15/306,293 · Granted Aug 17, 2021

Event stream processing

Inventors: Hamith Nissam (Chennai, IN); Vishal Rao (Bangalore, IN); Niranjan R. Kamath (Bangalore, IN); Vikram Kulkarni (Bangalore, IN); Sambhavi Piskala Dhanabalan (Chennai, IN); Tulika Chatterjee (Bangalore, IN)
Assignee: ENT. SERVICES DEVELOPMENT CORPORATION LP
G06F16/9535G06F16/2477G06F16/24565G06F16/24568G06F21/00G06Q10/06
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 11,093,562
App. No.
15/306,293
Granted
Aug 17, 2021
Kind
B2
Abstract

An example system receives a plurality of event streams. A separate stream rule is applied to each individual event stream to produce a filtered output event stream. The system also applies a correlation rule to the filtered output event streams to produce correlated event results.

Claims (47)

1. A system, comprising:

a plurality of event stream filter engines to receive a plurality of event streams, each event stream filter engine to receive a separate event stream, apply a filter rule specified for that particular event stream filter, and generate a filtered output event stream, wherein at least one of the plurality of event streams is an event stream of financial transaction records associated with financial accounts, wherein each financial transaction record includes information identifying a respective financial account associated with the financial transaction record;

a correlation engine to receive the filtered output event streams from the event stream filter engines and apply a correlation rule to the filtered output event streams to produce correlated event results, wherein each of the correlated event results is a tuple formed by associating different types records from at least two of the filtered output event streams;

a historical processing engine to receive the correlated event results, and apply a historical rule to the correlated event results to produce historical filtered results, wherein the historical rule indicates a different fraud response operation to be performed by the historical processing engine on the correlated event results based on a service level attribute associated with the respective financial account, wherein the service level attribute is selected from a plurality of service level attributes, a class or category of the respective financial account is specified by the service level attribute, and the different fraud response operation to be performed on the correlated event results is determined based on the class or the category; and

a time window engine to apply a time window-based rule to the historical filtered results to produce a fraud response, wherein applying the time window-based rule further comprises storing historical filtered results occurred within a defined period of time, wherein the time window-based rule defines that the fraud response is based on predefined classification of the stored historical filtered results.

2. The system of claim 1 further comprising a rule engine to: receive a complex event rule; and

decompose the complex event rule to generate:

the filter rules for the event stream filter engines;

the correlation rule;

the historical rule; and

the time window-based rule.

3. The system of claim 2 wherein the rule engine distributes the filter rules to the event stream filter engines, the correlation rule to the correlation engine, the historical rule to the historical processing engine, and the time window-based rule to the time window engine.

4. The system of claim 1 wherein:

each filter rule, when applied by the corresponding event stream filter engine, causes a subset of the event stream received by that event stream filter engine to be output by the event stream filter engine as the filtered output event stream; and

the correlation rule is to specify a relationship between separate filtered output event streams that the correlation engine is to detect.

5. The system of claim 1 wherein the correlation engine does not receive nor operate on the event streams received by the event stream filter engines.

6. A non-transitory storage device containing machine instructions that, when executed by a processing resource, cause the processing resource to:

receive a plurality of event streams, each event stream including a plurality of records;

apply a separate stream rule to each individual event stream to produce a plurality of filtered output event streams, wherein at least one of the plurality of filtered output event streams is an event stream of financial transaction records associated with financial accounts, wherein each financial transaction record includes information identifying a respective financial account associated with the financial transaction record;

after applying a separate stream rule to each individual event stream, apply a correlation rule to correlate the filtered output event streams to produce correlated event results, wherein each of the correlated event results is a tuple formed by associating different types records from at least two of the filtered output event streams;

after correlating the filtered output event streams, apply a historical rule to the correlated event results to produce historical filtered results, wherein the historical rule indicates a different fraud response operation to be performed on the correlated event results based on a service level attribute associated with the respective financial account, wherein the service level attribute is selected from a plurality of service level attributes, a class or category of the respective financial account is specified by the service level attribute, and the different fraud response operation to be performed on the correlated event results is determined based on the class or category; and

after applying the historical rule, apply a time window-based rule to the historical filtered results to produce a fraud response, wherein applying the time window-based rule further comprises storing historical filtered results occurred within a defined period of time, wherein the time window-based rule defines that the fraud response is based on predefined classification of the stored historical filtered results.

7. The non-transitory storage device of claim 6 wherein the machine instructions, when executed, further cause the processing resource to:

receive a complex event rule from a user; and

decompose the complex event rule to generate:

stream rules;

the correlation rule;

the historical rule; and

the time window-based rule.

8. A method, comprising:

receiving a plurality of event streams;

applying a separate stream rule to each individual event stream to produce a filtered output event stream from each such event stream, wherein the filtered output event stream is an event stream of financial transaction records associated with financial accounts, wherein each financial transaction record includes information identifying a respective financial account associated with the financial transaction record;

after applying a separate stream rule to each individual event stream, correlating the filtered output event streams to produce correlated event results, wherein each of the correlated event results is a tuple formed by associating different types records from at least two of the filtered output event streams;

after correlating the filtered output event streams, applying a historical rule to the correlated event results to produce historical filtered results, wherein the historical rule indicates a different fraud response operation to be performed on the correlated event results based on a service level attribute associated with the respective financial account, wherein the service level attribute is selected from a plurality of service level attributes, a class or category of the respective financial account is specified by the service level attribute, and the different fraud response operation to be performed on the correlated event results is determined based on the class or the category; and

after applying the historical rule, apply a time window-based rule to the historical filtered results to produce a fraud response, wherein applying the time window-based rule further comprises storing historical filtered results occurred within a defined period of time, wherein the time window-based rule defines that the fraud response is based on predefined classification of the stored historical filtered results.

9. The method of claim 8 :

wherein each event stream includes a plurality of records;

wherein applying the separate stream rule to each such event stream comprises causing a subset of the records of each event stream to be the filtered output event stream for that event stream; and

wherein correlating the filtered output event streams comprises applying a correlation rule that specifies a relationship between separate filtered output event streams.

10. The method of claim 8 , further comprising, after applying the historical rule, applying a time window-based rule to produce time window results.

11. The method of claim 10 , further comprising:

receiving a complex event rule; and

decomposing the complex event rule to generate:

stream rules;

the correlation rule;

the historical rule; and

the time window-based rule.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENT. SERVICES DEVELOPMENT CORPORATION LP
Reel/Frame 041041/0716 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2016
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 040657/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2016
From: NISSAM, HAMITH; RAO, VISHAL; KAMATH, NIRANJAN R.; KULKARNI, VIKRAM; DHANABALAN, SAMBHAVI PISKALA; CHATTERJEE, TULIKA
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 040737/0737 →