Specifying and applying rules to data

US2016110407A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016110407-A1
Application numberUS-201514886541-A
CountryUS
Kind codeA1
Filing dateOct 19, 2015
Priority dateOct 20, 2014
Publication dateApr 21, 2016
Grant date

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.

A computing system processes data units using one of at least two different modes of applying a rule. In a first mode, data units are received in a particular order and are processed including writing an updated value to at least one state variable based on a result of applying the rule to the data unit. In a second mode, a selection of particular data units is processed including determining a first set of data units including an ordered subset of data units that occur before the particular data unit from the number of data units, prior to applying the rule to the particular data unit, updating at least one state variable to a state that would result from processing the first set of data units in the first mode, and applying the rule to the particular data unit including reading the updated value of the state variable.

First claim

Opening claim text (preview).

What is claimed is: 1 . A computing system for applying a rule to data from one or more data sources, the computing system including: an input device or port configured to receive data from a first data source; at least one processor configured to process a plurality of data units derived at least in part from the data received from the first data source in a selected one of at least two different modes of applying the rule, the modes including: a first mode in which the plurality of data units are received in a particular order, and processing the plurality of data units includes, for each of at least some of the plurality of data units, writing an updated value to at least one state variable based on a result of applying the rule to the data unit; and a second mode in which a selection of particular data unit of the plurality of data units is received, and processing the particular data unit includes: (1) determining a first set of data units that includes an ordered subset of data units from the plurality of data units, each data unit included in the ordered subset occurring before the particular data unit in the plurality of data units, (2) prior to applying the rule to the particular data unit, updating at least one state variable to a state that would result from processing the first set of data units in the first mode, and (3) applying the rule to the particular data unit including reading the updated value of the state variable. 2 . The computing system of claim 1 wherein the second mode is a mode of applying the rule to data from one or more data sources in a testing environment in which the particular data unit is selected within a user interface for testing the rule. 3 . The computing system of claim 2 wherein the first mode is a mode of applying the rule to data from one or more data sources in a production environment. 4 . The computing system of claim 2 wherein the first mode is a mode of applying the rule to data from one or more data sources in the testing environment in which all of the plurality of data units are tested in a batch. 5 . The computing system of claim 1 wherein the first set of data units consists of the ordered subset of data units. 6 . The computing system of claim 1 wherein updating the state variable includes iterating in order through the first set of data units and, for each data unit of the ordered subset, applying the rule to the data unit and writing an updated value of the state variable based on a result of applying the rule to the data unit. 7 . The computing system of claim 6 wherein the first set of data units includes data units not in the ordered subset of data units, and iterating in order through the first set of data units includes determining if a data unit is a member of the ordered subset of data units. 8 . The computing system of claim 1 wherein each data unit included in the ordered subset is related to the particular data unit, and the plurality of data units includes a related data unit that is a first occurrence of a data unit related to the particular data unit in the plurality of data units, and an initial data unit of the ordered subset of data units is a data unit other than the related data unit. 9 . The computing system of claim 8 wherein processing the particular data unit in the second mode further includes storing the updated values of the state variable for each application of the rule to data units of the plurality of data units in a state variable cache. 10 . The computing system of claim 9 wherein applying the rule to the initial data unit of the ordered subset of data units includes reading an updated value of the state variable that was stored in response to application of the rule to a data unit occurring before the initial data unit in the plurality of data units from the state variable cache. 11 . The computing system of claim 10 wherein the data unit occurring before the initial data unit in the plurality of data units is the nearest data unit related to the initial data unit and occurring before the initial data unit in the plurality of data units. 12 . The computing system of claim 1 wherein the rule includes a plurality of rule cases. 13 . The computing system of claim 12 wherein a result of testing at least one rule case of the plurality of rule cases depends on the value of the state variable. 14 . The computing system of claim 13 wherein applying the rule to the particular data unit of the plurality of data units includes testing the at least one rule case of the plurality of rule cases against the updated value of the state variable. 15 . The computing system of claim 1 wherein each data unit included in the ordered subset is related to the particular data unit, and an initial data unit of the ordered subset of data units is a first occurrence of a data unit related to the particular data unit in the plurality of data units. 16 . The computing system of claim 15 wherein at least one rule case of the plurality of rule cases is based on a value derived from a second data source that is different from the first data source. 17 . The computing system of claim 16 wherein the second data source is dynamically accessed after beginning of the processing. 18 . The computing system of claim 16 wherein each data unit of the plurality of data units includes one or more values from a record of the first data source, and at least one value from the second data source. 19 . The computing system of claim 18 wherein the plurality of data units are ordered according to an order of a set of records of the first data source. 20 . The computing system of claim 1 wherein each data unit included in the ordered subset is related to the particular data unit, and to the other data units of the ordered subset of data units, by a shared identifier. 21 . The computing system of claim 20 wherein the shared identifier includes a key field value. 22 . The computing system of claim 1 wherein processing the particular data unit includes determining whether one or more previously obtained values for the particular data unit exist in a data unit cache and are valid, and if the previously obtained values are determined to exist and to be valid, obtaining one or more values for the particular data unit from the data unit cache, otherwise obtaining one or more values for the particular data unit from one or more data sources including the first data source. 23 . The computing system of claim 22 wherein determining whether the previously obtained values for the particular data unit are valid includes comparing an elapsed time since the previously obtained values were obtained to a predetermined elapsed time threshold. 24 . The computing system of claim 22 wherein obtaining one or more values for the particular data unit from the one or more data sources includes opening a connection to the first data source for receiving one or more values for the particular data unit and maintaining the connection in an open state for receiving one or more values for other data units of the plurality of data units. 25 . The computing system of claim 22 wherein obtaining one or more values for the particular data unit from the one or more data sources includes receiving one or more values for the particular data unit from a previously opened connection to the first data source. 26 . The computing system of c

Assignees

Inventors

Classifications

  • G06F16/214Primary

    Database migration support · CPC title

  • G06Q30/02Primary

    Marketing; Price estimation or determination; Fundraising · CPC title

  • Ensuring data consistency and integrity · CPC title

  • Updates performed during online database operations; commit processing · CPC title

  • Applying rules; Deductive queries · CPC title

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 US2016110407A1 cover?
A computing system processes data units using one of at least two different modes of applying a rule. In a first mode, data units are received in a particular order and are processed including writing an updated value to at least one state variable based on a result of applying the rule to the data unit. In a second mode, a selection of particular data units is processed including determining a…
Who is the assignee on this patent?
Ab Initio Technology Llc
What technology area does this patent fall under?
Primary CPC classification G06F16/214. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Apr 21 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).