Patent Issued for Shared hierarchical data design model for transferring data within distributed systems (USPTO 11907185): State Farm Mutual Automobile Insurance Company
2024 MAR 13 (NewsRx) -- By a
The patent’s assignee for patent number 11907185 is
News editors obtained the following quote from the background information supplied by the inventors: “Modern computing systems often include various software components, devices, systems, and data centers interacting across a distributed computing environment. Large-scale distributed computing systems may be implemented as enterprise systems or other organization-wide computing systems, and may maintain a variety of storage components (e.g., data stores) and software components operating on various different computing infrastructures. Such computing infrastructures may include different computing devices, data centers, public or private cloud infrastructures, or computing infrastructure within a distributed system. The various software and storage components of a distributed system may reside on client systems and/or server systems, either inside or outside of a firewall or secure network infrastructures.
“Within distributed computing systems, the software and storage components often include combinations of legacy and newer components, operating on different platforms and within different devices or data centers of the distributed system. The various software and storage components may have different development, testing, and deployment processes within their respective systems, during which independent developers design, create, and deploy the software and data storage solutions. During such processes, designers and developers may independently determine the data structures generated and used by the software, including determining data designs based on schemas, data elements, and relationships between elements. Designers and developers also select and assign names, types, and other attributes for data elements, including defining derived elements and data dependencies. Interactions between software components and devices in distributed systems often include one device or system transferring structured data to another device or system. For example, individual software components and applications may transfer data to other components and applications by creating, populating, and transmitting data structures during execution of a software application or service. Additional examples of transferring data within distributed systems include transferring data structures between devices or servers (e.g., data centers) during data migration, replication, and backup tasks, etc.
“However, errors and inefficiencies may result from transferring data structures between components, devices, and servers in a distributed system, when a common data design is not used across the distributed system. For instance, when transferring or receiving data structures within a distributed system, various components within the system may be required to perform data formatting and data integration techniques on non-uniform data structures for compatibility with other components. Additionally, when non-uniform data is transferred between different devices of a distributed system, data non-uniformity may cause errors or inefficiencies in various other components such as network monitoring components, performance monitoring components, and data analytics components. Further, when the components in a distributed system are designed to transfer non-uniform data structures to other components, upgrades and new development within the distributed system may be more cumbersome and time-consuming. For instance, the use of non-uniform data designs across a distributed system may cause errors when upgrading legacy systems, and may greatly prolong development lifecycles for new components of the distributed system.”
As a supplement to the background information on this patent, NewsRx correspondents also obtained the inventors’ summary information for this patent: “To address these problems and inefficiencies within distributed computing systems, this disclosure describes various techniques for using a shared hierarchical data design model for creating and transferring data within distributed systems. Techniques described herein can be implemented by various components within distributed systems (e.g., software components, applications, services, devices, and servers/data centers) to access a shared data design model when designing and creating software components, data structures, or application programming interfaces (APIs) through which data is transferred in the distributed system. Additional techniques relate to verifying and enforcing that the components within the distributed system conform with the shared hierarchical data design model, including using design/development environments and element-by-element analyses of the data structures transferred between components of the distributed system.
“As described in the various examples below, in certain scenarios a shared hierarchical data design model may serve as an inventory of conformed data elements that provides data element “metadata” to independent system associated with different entities in a distributed systems (e.g., business partners such as actuaries, data scientists, etc.) and IT developer resources. The shared hierarchical data design model also may provide a logical hierarchical structure for relating the data elements contained within the data subject areas. Additionally, the shared hierarchical data design model may be used to design and build data structures during the system development phase of projects. Such application program interfaces (APIs) may be implemented into production code, and may be static or dynamic in various examples. In still other examples, the shared hierarchical data design model may be used to build conformed “views” of data for analyses initiated by independent systems (e.g., actuaries, data scientists and data engineers) to decide what data is predictive and can be used to build model that will automate rating and underwriting operations. In some examples, such models may be implemented into production but do not access any artifacts of the shared model during operational production processing.
“In an example of the present disclosure, a system includes a first computing device storing a hierarchical data design model, and a second computing device comprising at least one processor and memory storing executable instructions that, when executed by the at least one processor, cause the second computing device to perform operations comprising receiving a first portion of the hierarchical data design model from the first computing device and via a network, determining a data design sub-model based at least in part on the first portion of the hierarchical data design model, creating a data structure using the data design sub-model, wherein the data structure comprises one or more elements, and wherein a first element of the one or more elements corresponds to a second element of the hierarchical data design model, and transmitting the data structure to a third computing device associated with a remote system.
“In another example of the present disclosure, a method includes receiving, by a first computing device, a data design comprising at least a first data element, determining a first attribute of the first data element, receiving, from a second computing device, at least a portion of a hierarchical data design model, determining a second data element within the hierarchical data design model associated with the first data element, retrieving, from the hierarchical data design model, a second attribute associated with the second data element, determining that the first attribute corresponds to the second attribute, identifying a data structure associated with the data design, storing or transmitting the data structure associated with the data design, based at least in part on determining that the first attribute corresponds to the second attribute.
“In yet another example of the present disclosure, a method includes receiving, via a software development environment, user input associated with a data design to be created via the software development environment, receiving, from a first computing device, at least a portion of a hierarchical data design model, determining a first data element within the hierarchical data design model, based on the user input data, receiving a definition of the first data element from the hierarchical data design model, and creating a data structure having the first data element, via the software development environment.”
The claims supplied by the inventors are:
“1. A system, comprising: a data design system storing a hierarchical data design model; a first computing device comprising at least one processor and memory storing executable instructions that, when executed by the at least one processor, cause the first computing device to perform operations comprising: receiving a request to create a data structure for transferring data to a second computing device; receiving a first portion of the hierarchical data design model from the data design system and via a network, the hierarchical data design model defining a shared inventory of definitions of common data elements and relationships between the common data elements; determining a data design sub-model based at least in part on the first portion of the hierarchical data design model; creating the data structure, based at least in part on the request and using the data design sub-model, wherein the data structure comprises at least a first element; determining that the first element corresponds to a second element of the hierarchical data design model; determining, based at least in part on the first element and the second element, that the data structure conforms to the hierarchical data design model; and based at least in part on determining that the data structure conforms to the hierarchical data design model, transmitting the data structure to the second computing device.
“2. The system of claim 1, wherein creating the data structure using the data design sub-model comprises: creating the first element within the data structure; determining the second element within the hierarchical data design model corresponding to the first element; determining a name for the first element based on a unique identifier of the second element in the hierarchical data design model; determining a type for the first element based on a type of the second element in the hierarchical data design model; and determining a relationship between the first element and another element in the data structure, based on one or more relationships of the second element in the hierarchical data design model.
“3. The system of claim 1, further comprising: the second computing device, the second computing device comprising at least one processor and memory storing executable instructions that, when executed by the at least one processor of the second computing device, cause the second computing device to perform operations comprising: receiving the data structure from the first computing device over a computer network; receiving, from the data design system, the first portion of the hierarchical data design model; determining, based on the first portion of the hierarchical data design model, that the first element in the data structure corresponds to the second element in the hierarchical data design model; and storing the data structure in the memory of the second computing device, based at least in part on determining that the first element in the data structure corresponds to the second element in the hierarchical data design model.
“4. The system of claim 1, wherein the executable instructions further cause the first computing device to perform operations comprising: verifying that the first element in the data structure conforms to the hierarchical data design model, prior to transmitting the data structure to the second computing device.
“5. The system of claim 1, further comprising: a network device, wherein the network device is configured to monitor network traffic between the first computing device and the second computing device, the network device comprising at least one processor and memory storing executable instructions that, when executed by the at least one processor, cause the network device to perform operations comprising: receiving the data structure from the first computing device; determining that the first element in the data structure conforms to the hierarchical data design model; and permitting transmission of the data structure to the second computing device, based at least in part on determining that the first element in the data structure conforms to the hierarchical data design model.
“6. The system of claim 1, wherein the first computing device comprises a customer mobile device operating on an unsecure computer network, and wherein the second computing device comprises a computer server operating on a private secure computer network.
“7. A method, comprising: receiving, by a first computing device, a request to transfer a data structure to second computing device; determining, by the first computing device, a data design associated with the data structure, the data design comprising at least a first data element and a first attribute of the first data element; generating, by the first computing device, the data structure based on the data design; receiving, from a data design system, via computer network, at least a portion of a hierarchical data design model, the hierarchical data design model defining a shared inventory of common data element definitions and relationships; determining a second data element within the hierarchical data design model associated with the first data element; retrieving, from the hierarchical data design model, a second attribute associated with the second data element; determining that the first attribute corresponds to the second attribute; and determining based at least in part on the first data element and the second data element, that the data structure generated by the first computing device conforms to the hierarchical data design model; and causing the requested transfer of the data structure from the first computing device to the second computing device.
“8. The method of claim 7, wherein determining that the first attribute corresponds to the second attribute comprises at least one of: determining that a first name of the first data element matches a second name of the second data element; determining that first data type name of the first data element matches a second data type of the second data element; or determining that a first dependency of the first data element matches a second dependency of the second data element.
“9. The method of claim 7, wherein the determining the data design associated with the data structure comprises determining that the data structure comprises at least one of: a data structure instantiated within a software program component, based on the data design; an application program interface (API) based on the data design; or a database based on the data design.
“10. The method of claim 7, further comprising: determining a first hierarchical level of the first data element within a first data hierarchy associated with the data structure; determining a second hierarchical level of the second data element within the hierarchical data design model; and determining that the first hierarchical level matches the second hierarchical level.
“11. The method of claim 7, further comprising: determining that the first attribute of the first data element matches the second attribute of the second data element; and transmitting the data structure associated with the data design, from the first computing device to the second computing device, based at least in part on determining that the first attribute of the first data element matches the second attribute of the second data element.
“12. The method of claim 11, wherein the first computing device comprises a customer mobile device operating on an unsecure computer network, and wherein the second computing device comprises a computer server operating on a private secure computer network.
“13. The method of claim 7, further comprising: determining that a third attribute of the first data element does not match a fourth attribute of the second data element; and causing a second requested transfer of the data structure to be prevented, based at least in part on determining that the third attribute of the first data element does not match the fourth attribute of the second data element.
“14. The method of claim 7, wherein causing the requested transfer of the data structure comprises: permitting the requested transfer to be performed, based at least in part on determining that the generated data structure conforms to the hierarchical data design model.
“15. A method, comprising: receiving, by a first computing device and via a software development environment, user input indicating a request to create a data structure for transferring data within a distributed system; receiving, via the software development environment, from a data design system, at least a portion of a hierarchical data design model, the hierarchical data design model defining a shared inventory of common data element definitions and relationships for the distributed system; determining a first data element within the hierarchical data design model, based on user input received via the software development environment; receiving a definition of the first data element from the hierarchical data design model; creating the data structure having the first data element, via the software development environment; and determining based at least in part on the first data element and a second data element in the data structure, that the data structure conforms to the hierarchical data design model.
“16. The method of claim 15, further comprising: rendering a graphical representation of the hierarchical data design model, in a first user interface window of the software development environment; and receiving a graphical representation of the data design, in a second user interface window of the software development environment, wherein receiving the user input comprises receiving a drag-and-drop command dragging the first data element from the first user interface window to the second user interface window.”
There are additional claims. Please visit full patent to read further.
For additional information on this patent, see: Kussmann, Scott D. Shared hierarchical data design model for transferring data within distributed systems.
(Our reports deliver fact-based news of research and discoveries from around the world.)
Researcher from University College London (UCL) Publishes New Studies and Findings in the Area of Sustainability Research (The barriers to sustainable risk transfer in the cyber-insurance market): Sustainability Research
Researchers’ Work from Southern Illinois University Focuses on Risk Management (Impact of Land Use and Land Cover Change on Hydrological Processes in Urban Watersheds: Analysis and Forecasting for Flood Risk Management): Risk Management
Advisor News
Annuity News
Health/Employee Benefits News
Life Insurance News