Support for a parameterized query/view in complex event processing

US9110945B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9110945-B2
Application numberUS-201314077230-A
CountryUS
Kind codeB2
Filing dateNov 12, 2013
Priority dateSep 17, 2010
Publication dateAug 18, 2015
Grant dateAug 18, 2015

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The present invention includes a method for providing parameterized queries in complex event processing (CEP). The method includes providing a query template which includes one or more bind variables, providing sets of parameters corresponding to the one or more bind variables, and parsing the query template to determine positions of the one or more bind variables. The method further includes scanning the provided sets of parameters to determine which of the sets of parameters are to be bound to the one or more bind variables, binding the one or more bind variables which are determined to be bound to the sets of parameters, and substituting the bound one or more bind variables with the corresponding sets of parameters. The method further includes injecting all incarnations of the parameterized queries into the system, and one template/parameterized query is configured to run them all.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of providing parameterized queries in complex event processing (CEP) environment, the method comprising: providing a query template which includes one or more bind variables, wherein the one or more bind variables are typeless within the CEP environment; providing sets of parameters corresponding to the one or more bind variables; parsing the query template to determine positions of the one or more bind variables; scanning the provided sets of parameters to determine which of the sets of parameters are to be bound to the one or more bind variables; binding the one or more bind variables which are determined to be bound to the corresponding sets of parameters; inserting one or more arbitrary predicates into the query template, based on the one or more bind variables being typeless; substituting the bound one or more bind variables with the corresponding sets of parameters; determining that the sets of parameters correspond to the same bind variable; based on the sets of parameters, generating a single parameterized query which is a template that provides possible values for the bound one of more bind variables; determining a placeholder occurring in the single parameterized query for processing an event stream; substituting the placeholder at runtime with parameter values corresponding to the sets of parameters; generating multiple customized queries and views which differ by at least only one variable based on the substituting; instantiating a new query for each of the sets of parameters which correspond to the same bind variable as a continuous query; and executing the continuous query to process the event stream. 2. The method of providing parameterized queries in CEP as in claim 1 , further comprising building a map of the determined positions of the one or more bind variables. 3. The method of providing parameterized queries in CEP as in claim 2 , wherein the substituting of the one or more bind variables with the corresponding sets of parameters further comprises using the map of determined positions of the one or more bind variables to place the bound sets of parameters within the query template. 4. The method of providing parameterized queries in CEP as in claim 1 , wherein the providing of the sets of parameters corresponding to the one or more bind variables is performed either statically or dynamically. 5. The method of providing parameterized queries in CEP as in claim 4 , wherein the providing of the sets of parameters corresponding to the one or more bind variables is performed statically by using a config file at deployment time of the query template. 6. The method of providing parameterized queries in CEP as in claim 4 , wherein the providing of the sets of parameters corresponding to the one or more bind variables is performed dynamically by using a module management solution. 7. The method of providing parameterized queries in CEP as in claim 5 , wherein the config file includes one or more of the following: application association, processor association, query rules, the query template, the sets of parameters, or the bindings. 8. A system for providing parameterized queries in complex event processing (CEP), the system comprising: a memory; and a processor coupled with the memory, wherein the memory has sets of instructions stored thereon which, when executed by the processor, cause the processor to: provide a query template which includes one or more bind variables, wherein the one or more bind variables are typeless within the CEP environment; provide sets of parameters corresponding to the one or more bind variables; parse the query template to determine positions of the one or more bind variables; scan the provided sets of parameters to determine which of the sets of parameters are to be bound to the one or more bind variables; bind the one or more bind variables which are determined to be bound to the corresponding sets of parameters; insert one or more arbitrary predicates into the query template, based on the one or more bind variables being typeless; substitute the bound one or more bind variables with the corresponding sets of parameters; determine that the sets of parameters correspond to the same bind variable; based on the sets of parameters, generate a single parameterized query which is a template that provides possible values for the bound one of more bind variables; determine a placeholder occurring in the single parameterized query for processing an event stream; substitute the placeholder at runtime with parameter values corresponding to the sets of parameters; generate multiple customized queries and views which differ by at least only one variable based on the substituting; instantiate a new query for each of the sets of parameters which correspond to the same bind variable as a continuous query; and execute the continuous query to process the event stream. 9. The system for providing parameterized queries in CEP as in claim 8 , wherein the sets of instructions when further executed by the processor, cause the processor to: generate the query; and process the event stream. 10. The system for providing parameterized queries in CEP as in claim 9 , further comprising: a CEP server including a Continuous Query Language (“CQL”) engine, wherein the CQL engine instantiates a plurality of CEP applications; and a visualizer in communication with the CEP server, wherein the visualizer is configured to display result information from the processed event stream. 11. A non-transitory computer-readable medium having sets of instructions stored for providing parameterized queries in complex event processing (CEP), when executed by a computer, cause the computer to: provide a query template which includes one or more bind variables; provide sets of parameters corresponding to the one or more bind variables, wherein the one or more bind variables are typeless within the CEP environment; parse the query template to determine positions of the one or more bind variables; bind the one or more bind variables which are determined to be bound to the corresponding sets of parameters; insert one or more arbitrary predicates into the query template, based on the one or more bind variables being typeless; substitute the bound one or more bind variables with the corresponding sets of parameters; determine that the sets of parameters correspond to the same bind variable; based on the sets of parameters, generate a single parameterized query which is a template that provides possible values for the bound one of more bind variables; determine a placeholder occurring in the single parameterized query for processing an event stream; substitute the placeholder at runtime with parameter values corresponding to the sets of parameters; generate multiple customized queries and views which differ by at least only one variable based on the substituting; instantiate a new query for each of the sets of parameters which correspond to the same bind variable as a continuous query; and execute the continuous query to process the event stream. 12. The non-transitory computer-readable medium of claim 11 , wherein the sets of instructions when further executed by the computer, cause the computer to determine that new sets of parameters are specified for binding. 13. The non-transitory computer-readable medium of claim 12 , wherein the sets of instructions when further executed by the computer, cause the computer to: identify queries which have been instantiated using sets of parameters prior to being specified with new sets of parameters; and delete the queries which ha

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9110945B2 cover?
The present invention includes a method for providing parameterized queries in complex event processing (CEP). The method includes providing a query template which includes one or more bind variables, providing sets of parameters corresponding to the one or more bind variables, and parsing the query template to determine positions of the one or more bind variables. The method further includes s…
Who is the assignee on this patent?
Oracle Int Corp
What technology area does this patent fall under?
Primary CPC classification G06F16/2452. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 18 2015 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).