IP Library › Granted Patent US 9,886,486
Granted Patent B2
US 9,886,486 · App. 14/755,088 · Granted Feb 6, 2018

Enriching events with dynamically typed big data for event processing

Inventors: Alexandre de Castro Alves (Doral, FL); Unmesh Anil Deshmukh (Nagpur, IN); Yogesh Bedekar (Nagpur, IN); Prabhu Thukkaram (San Ramon, CA); Ashish Mahendru (Bangalore, IN)
Assignee: Oracle International Corporation
G06F17/30516G06F17/30339G06F17/30557G06F17/30867
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 9,886,486
App. No.
14/755,088
Granted
Feb 6, 2018
Kind
B2
Abstract

Some event ordering requirements can be determined based on continuous event processing queries. Other event ordering requirements can be determined based on distribution flow types being used to distribute events from event streams to node executing the queries. Events from event streams can be ordered according to ordering semantics that are based on a combination of all of these event ordering requirements. Additionally, virtual computing nodes can be associated with constraints, and computing processors can be associated with capabilities. Virtual computing nodes for processing event streams can be assigned to execute on various computing processors based on both these constraints and capabilities. Additionally, for each of several events in an event stream, a ratio between a total latency and a communication latency can be for determined. Based on an average of these ratios, a quantity of reducing nodes that will be involved in a map-reduce operation can be selected.

Claims (39)

1. A method, comprising:

creating an event processing network to represent a data store, the event processing network comprising a plurality of distributed nodes, each node configured to process events of an event stream;

creating, in the event processing network, a table component that represents a data store event of the data store; and

for a particular event in the event stream, executing a processor of the event processing network using the table component as an external relation source to perform operations comprising:

selecting, from the data store, particular data that corresponds to the particular event;

retrieving, from the data store, the particular data utilizing an application programming interface (API) method call; and

adding the particular data to the particular event.

2. The method of claim 1 , wherein the application programming interface method call comprises a Java method call.

3. The method of claim 1 , wherein the data store comprises a non-relational database.

4. The method of claim 3 , wherein the non-relational database comprises an HBase database.

5. The method of claim 1 , wherein the processor comprises a continuous query language processor.

6. A computer-readable medium storing computer-executable instructions that, when executed by one or more processors, configures one or more computer systems to perform at least:

instructions that cause the one or more processors to create an event processing network to represent a data store, the event processing network comprising a plurality of distributed nodes, each node configured to process events of an event stream;

instructions that cause the one or more processors to create a table component that represents a data store event of the data store; and

instructions that cause the one or more processors to implement an engine of the event processing network using the table component as an external relation source to perform:

instructions that cause the one or more processors to select, from the data store, particular data that corresponds to a particular event of the event stream;

instructions that cause the one or more processors to retrieve the particular data utilizing an application programming interface (API) method call; and

instructions that cause the one or more processors to add the particular data to the particular event.

7. The computer-readable medium of claim 6 , wherein the one or more computer systems are further configured to perform instructions that cause the one or more processors to create a mapping component.

8. The computer-readable medium of claim 7 , wherein the mapping component is configured to specify a mapping between an attribute of the particular event and information associated with the particular data.

9. The computer-readable medium of claim 8 , wherein the information associated with the particular data comprises at least one of a family or a qualifier associated with the particular data.

10. The computer-readable medium of claim 8 , wherein the one or more computer systems are further configured to perform instructions that cause the one or more processors to update a schema of the information associated with the particular data after creation of the table component.

11. The computer-readable medium of claim 10 , wherein the schema is updated dynamically while implementing the engine of the event processing network.

12. The computer-readable medium of claim 10 , wherein the schema defines at least one of a family type or a qualifier type associated with the particular data.

13. The computer-readable medium of claim 6 , wherein the engine comprises a continuous query language engine.

14. A system, comprising:

a memory storing a plurality of instructions; and

a processor configured to access the memory, the processor further configured to execute the plurality of instructions to at least:

create an event processing network to represent a data store, the event processing network comprising a plurality of distributed nodes, each node configured to process events of an event stream;

create a table component that represents a data store event of the data store; and

implement an engine of the event processing network using the table component as an external relation source to:

select, from the data store, particular data that corresponds to a particular event of the event stream;

retrieve the particular data utilizing an application programming interface (API) method call; and

add the particular data to the particular event.

15. The system of claim 14 , wherein the engine of the event processing network is configured to identify the particular data based at least in part on a map.

16. The system of claim 15 , wherein the map is configured to be updated after creation of the table component.

17. The system of claim 15 , wherein the map is included in the table component as a column family.

18. The system of claim 14 , wherein the data store comprises a cluster of data storage locations.

19. The system of claim 14 , wherein at least one of the data store comprises a non-relational database or the engine comprises a continuous query language engine.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2015
From: ALVES, ALEXANDRE DE CASTRO; DESHMUKH, UNMESH ANIL; BEDEKAR, YOGESH; THUKKARAM, PRABHU; MAHENDRU, ASHISH
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 035995/0967 →
Continuity (2)
Provisional Application 62054732 · Sep 24, 2014
Related Publication 20160085809A1 · Mar 24, 2016