System and method for improved data consistency in data systems including dependent algorithms

US10963445B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10963445-B2
Application numberUS-201916677394-A
CountryUS
Kind codeB2
Filing dateNov 7, 2019
Priority dateJul 20, 2016
Publication dateMar 30, 2021
Grant dateMar 30, 2021

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 data system is provided for analyzing and maintaining data obtained from one or more data sources on which the data system depends. The system includes a primary database including current values used by the system and a collection of executable algorithms used to generate the data maintained in the primary database. In response to receiving a notification regarding a change in one of the data sources, a dependency database is used to establish an execution order for algorithms of the algorithm collection that are directly or indirectly dependent on the changed data. The algorithms identified in the execution order are then executed in accordance with the execution order and the corresponding result is stored in the primary database. The system may include data harvesters adapted to recognize changes in the data sources and to generate and transmit corresponding change notifications when such changes occur.

First claim

Opening claim text (preview).

We claim: 1. A method for creating an execution plan for analyzing data in a data system comprising: receiving a change notification, wherein the change notification includes an identifier of a changed data field of a data source; identifying, in an algorithm metadata database, a plurality of algorithms affected by the changed data field based on the identifier of the changed data field; determining, for each algorithm of the plurality of algorithms, a maximum depth based on dependency data for the algorithm in the algorithm metadata database and the changed data field; and generating an execution plan including one or more layers, wherein each layer includes one or more algorithms of the plurality of algorithms, and each of the one or more algorithms in the layer has the same maximum depth. 2. The method of claim 1 , wherein the execution plan orders the one or more layers based on the maximum depth of the one or more algorithms included in each layer. 3. The method of claim 1 , further comprising: executing the execution plan to generate an algorithm result by executing each of the one or more algorithms in each of the one or more layers. 4. The method of claim 3 , wherein each of the one or more algorithms in a layer are executed in parallel. 5. The method of claim 3 , wherein the change notification further includes a new value or a value representative of a difference between a new value and a previous value for the changed data field, and execution of the one or more algorithms in a root layer of the one or more layers uses the new value or the value representative of the difference. 6. The method of claim 1 , wherein one of the one or more layers is a root layer where each of the one or more algorithms included in the root layer requires a value of the changed data field. 7. A system for creating an execution plan for analyzing data in a data system comprising: an algorithm metadata database including metadata for a plurality of executable algorithms for evaluating data; and one or more computing devices configured to: receive a change notification, wherein the change notification includes an identifier of a changed data field of a data source, identify, in the algorithm metadata database, a plurality of algorithms of the plurality of executable algorithms affected by the changed data field based on the identifier of the changed data field, determine, for each algorithm of the plurality of algorithms, a maximum depth based on dependency data for the algorithm in the algorithm metadata database and the changed data field, and generate an execution plan including one or more layers, wherein each layer includes one or more algorithms of the plurality of algorithms, and each of the one or more algorithms in the layer has the same maximum depth. 8. The system of claim 7 , wherein the execution plan orders the one or more layers based on the maximum depth of the one or more algorithms included in each layer. 9. The system of claim 7 , wherein the one or more computing devices is further configured to execute the execution plan to generate an algorithm result by executing each of the one or more algorithms in each of the one or more layers. 10. The system of claim 9 , wherein each of the one or more algorithms in a layer are executed in parallel. 11. The system of claim 9 , wherein the change notification further includes a new value or a value representative of a difference between a new value and a previous value for the changed data field, and execution of the one or more algorithms in a root layer of the one or more layers uses the new value or the value representative of the difference. 12. The system of claim 7 , wherein one of the one or more layers is a root layer where each of the one or more algorithms included in the root layer requires a value of the changed data field. 13. A computing device for creating an execution plan for analyzing data in a data system comprising a non-transitory computer readable medium storing program code that, when executed by a processor of the computing device, performs the following: receiving a change notification, wherein the change notification includes an identifier of a changed data field of a data source; identifying, in an algorithm metadata database, a plurality of algorithms affected by the changed data field based on the identifier of the changed data field; determining, for each algorithm of the plurality of algorithms, a maximum depth based on dependency data for the algorithm in the algorithm metadata database and the changed data field; and generating an execution plan including one or more layers, wherein each layer includes one or more algorithms of the plurality of algorithms, and each of the one or more algorithms in the layer has the same maximum depth. 14. The computing device of claim 13 , wherein the execution plan orders the one or more layers based on the maximum depth of the one or more algorithms included in each layer. 15. The computing device of claim 13 , further comprising: executing the execution plan to generate an algorithm result by executing each of the one or more algorithms in each of the one or more layers. 16. The computing device of claim 15 , wherein each of the one or more algorithms in a layer are executed in parallel. 17. The computing device of claim 15 , wherein the change notification further includes a new value or a value representative of a difference between a new value and a previous value for the changed data field, and execution of the one or more algorithms in a root layer of the one or more layers uses the new value or the value representative of the difference. 18. The computing device of claim 13 , wherein one of the one or more layers is a root layer where each of the one or more algorithms included in the root layer requires a value of the changed data field.

Assignees

Inventors

Classifications

  • G06F16/23Primary

    Updating · CPC title

  • Ensuring data consistency and integrity · CPC title

  • Indexing; Data structures therefor; Storage structures · 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 US10963445B2 cover?
A data system is provided for analyzing and maintaining data obtained from one or more data sources on which the data system depends. The system includes a primary database including current values used by the system and a collection of executable algorithms used to generate the data maintained in the primary database. In response to receiving a notification regarding a change in one of the dat…
Who is the assignee on this patent?
Level 3 Communications Llc
What technology area does this patent fall under?
Primary CPC classification G06F16/23. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 30 2021 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).