METHOD AND SYSTEM FOR CONTINUOUS QUERY PROCESSING
First Claim
1. A method of processing a continuous query on a stored data set, the method including the steps of:
- receiving a query designated as a continuous query and storing a query model representing that query containing one or more atoms which are individual queries on the data set;
when new data is added to the data set, or the data set is modified, checking the new or modified data against the atoms of the stored query model to determine if any part of the new or modified data matches an atom of the stored query model;
if a match is found, checking whether the new or modified data matches the stored query model as a whole;
if a match is found with the model as a whole, assigning any fixed values in the new or modified data that correspond to free variables in the query model to those free variables;
processing the query resulting from said assignment on the stored data set; and
returning the result of the query.
2 Assignments
0 Petitions
Accused Products
Abstract
The invention relates to a method and system that provide a continuous querying mechanism that analyses real-time data streams to generate relevant results. It leverages data grid and event processing technology to provide a high performance and extremely scalable continuous querying solution. An embodiment of the invention provides a flexible querying language and data storage to allow users to register their interest in specific types of data, e.g. processes. The users are notified of matching results using an event-based mechanism. In order to efficiently analyse a large amount of data, the embodiment uses a grid infrastructure that allows storage of the data across many grid nodes and distributes the query execution workload, avoiding the bottleneck represented by constantly querying a database. Continuous queries are stored in a Continuous Query Registry and that Registry is invoked every time an insert or update event occurs on the triple store.
-
Citations
19 Claims
-
1. A method of processing a continuous query on a stored data set, the method including the steps of:
-
receiving a query designated as a continuous query and storing a query model representing that query containing one or more atoms which are individual queries on the data set; when new data is added to the data set, or the data set is modified, checking the new or modified data against the atoms of the stored query model to determine if any part of the new or modified data matches an atom of the stored query model; if a match is found, checking whether the new or modified data matches the stored query model as a whole; if a match is found with the model as a whole, assigning any fixed values in the new or modified data that correspond to free variables in the query model to those free variables; processing the query resulting from said assignment on the stored data set; and returning the result of the query. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system for processing queries on a data set, the system including:
-
one or more nodes storing part of the data in the data set and capable of executing queries on the data of the data set; a query engine which stores a query model representing a continuous query and containing one or more atoms which are individual queries on the data set, wherein, when new data is added to the data set, or the data set is modified; the node to which the data is added, or on which the data is modified sends the new or modified data to the query engine; the query engine; checks the new or modified data against the atoms of the stored query model to determine if any part of the new or modified data matches an atom of the stored query model; if a match is found, checks whether the new or modified data matches the stored query model as a whole; if a match is found with the model as a whole, assigns any fixed values in the new or modified data that correspond to free variables in the query model to those free variables; processes the query resulting from said assignment on the stored data set; and returns the result of the query. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification