Unified search for dual domains
US-12105727-B2 · Oct 1, 2024 · US
US2016292076A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016292076-A1 |
| Application number | US-201615051220-A |
| Country | US |
| Kind code | A1 |
| Filing date | Feb 23, 2016 |
| Priority date | Mar 31, 2015 |
| Publication date | Oct 6, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A dataflow controller to store dataflow specifications and to control execution of the dataflow specified the specification specifying a series of linked data processing steps, each step specifying a processing operation to generate output data, and each link defining a consecutive pair relationship between two steps within the series, the link instructing the dataflow controller to trigger execution of the preceding member of the pair by, providing the output data of the member as the input data of the member; and a cache memory and memory controller, the memory controller to maintain an accumulation of the output data generated by the most recent execution of the operation of each member of a set of the steps specified by the dataflow controller; the dataflow controller upon execution of the operation of the step, to provide the output data to the memory controller; the memory controller, to update the maintained accumulation.
Opening claim text (preview).
What is claimed is: 1 . An apparatus, comprising: a dataflow controller configured to store at least one dataflow specification and to control execution of dataflow specified by the dataflow specification, the dataflow specification specifying a series of linked data processing steps, each processing step specifying a processing operation to be performed on data provided as input data to generate output data, and each link defining a consecutive pair relationship between two processing steps within the series, the link instructing the dataflow controller to trigger execution of a preceding member of the consecutive pair by, upon generation of the output data by the preceding member, providing generated output data of the preceding member as the input data of the preceding member; and a cache memory and cache memory controller, the cache memory controller being configured to maintain, on the cache memory, an accumulation of the output data generated by a most recent execution of the processing operation of each member of a set of data processing steps specified by the dataflow controller; the dataflow controller being configured, for each member of the set of data processing steps, upon execution of the processing operation of a data processing step, to provide the generated output data directly to the cache memory controller; the cache memory controller being configured, upon being provided the generated output data directly from the dataflow controller, to update a maintained accumulation. 2 . An apparatus according to claim 1 , wherein each time the maintained accumulation is updated, the cache memory controller is configured to trigger an analytics processing routine to operate on the maintained accumulation. 3 . An apparatus according to claim 1 , wherein the apparatus further comprises a data store configured to store a database; and the dataflow controller is configured to instruct writing to the database of the output data generated by the execution of the processing operation of the at least one data processing step per dataflow specification. 4 . An apparatus according to claim 3 , wherein at least one data processing step per dataflow specification specifies an input range, the input range defining a subset of data in the database; the dataflow controller being configured to respond to a notification of a data modification event involving data in the database falling within an input range of one of the data processing steps by providing involved data as input data and triggering execution of the processing operation of one of the data processing steps. 5 . An apparatus according to claim 3 , wherein the database is a graph database representing interconnected resources, a data graph being encoded as a plurality of triples, each triple comprising a value for each of: a subject, being an identifier of a subject resource; an object, being one of an identifier of an object resource and a literal value; and a predicate, being a named relationship between the subject and the object. 6 . An apparatus according to claim 5 , wherein the input range specified by a data processing step is specified by one of a value range for the predicate and by a value range for the subject, a triple being deemed to fall within the input range by having one of a predicate value falling within a specified predicate value range and a subject value falling within a subject value range. 7 . An apparatus according to claim 1 , wherein the dataflow specification includes, for each data processing step, an input range and an output range, the link between each consecutive pair of data processing steps being defined by the inclusion of one of some and all of the output range of the preceding member of the pair in the input range of the preceding member of the pair, each data processing step being configured, when triggered by being provided data falling within the input range of the data processing step as an input, to generate output data falling within an output range of the data processing step by performing the processing operation specified by the data processing step on the input. 8 . An apparatus according to claim 1 , wherein the cache memory controller includes an interface enabling a user to select data processing steps to include in the set of data processing steps. 9 . An apparatus according to claim 8 , wherein the interface enables the user to select data processing steps by specifying a resource represented by a data graph, the cache memory controller being configured to notify the dataflow controller of a specified resource, and the dataflow controller being configured to respond by notifying the cache controller of any data processing steps for which a specified input range includes triples in which a subject value is an identification of the specified resource. 10 . An apparatus according to claim 8 , wherein the interface enables the user to specify at least one predicate value range in addition to specifying a resource, the cache memory controller being configured to notify the dataflow controller of a specified resource and the at least one predicate value range, and the dataflow controller being configured to respond by notifying the cache controller of any processing steps for which a specified input range includes triples in which both the subject value is an identification of the specified resource, and predicate value is included within any of the at least one specified predicate value range. 11 . An apparatus according to claim 1 , wherein the cache memory controller is configured to construct a schema in which to store the accumulation of output data in the cache memory. 12 . An apparatus according to claim 1 , wherein the cache memory controller is configured to output the accumulation of data to an analytics program following each update. 13 . An apparatus according to claim 1 , wherein the cache memory controller is configured to maintain only a most recent version of the output data generated by each member of the set. 14 . A method, comprising: storing at least one dataflow specification and to control execution of the dataflow specified by the dataflow specification, the dataflow specification specifying a series of linked data processing steps, each processing step specifying a processing operation to be performed on data provided as input data to generate output data, and each link defining a consecutive pair relationship between two processing steps within the series, the link instructing the dataflow controller to trigger execution of a preceding member of the consecutive pair by, upon generation of the output data by the preceding member, providing generated output data of the preceding member as the input data of the preceding member; and maintaining, on a cache memory, an accumulation of the output data generated by a most recent execution of the processing operation of each member of a set of the specified data processing steps; for each member of the set of data processing steps, upon execution of the processing operation of the data processing step, obtaining the output data generated by the execution and updating a maintained accumulation with the obtained output data. 15 . A non-transitory storage medium storing a computer program which, when executed by a computing device, causes the computing device to perform the method of claim 14 .
Indexing; Data structures therefor; Storage structures · CPC title
Performance improvement · CPC title
Cache access modes · CPC title
of operating mode, e.g. cache mode or local memory mode · CPC title
Physics · mapped topic
Related publications grouped by family.
Answers are generated from the same data shown on this page.