Service Dependency Graph for Data Integration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional data integration systems face inefficiencies and errors due to the need for re-implementing back-end processing logic for new data requests, as they rely on fixed calling schedules that hinder the sharing of common processing logic.

Innovation Solution

A service dependency graph (SDG) is used to model the relationships between services as a directed acyclic graph (DAG), allowing for an efficient topological ordering that determines an optimal sequence for accessing services, enabling developers to reuse processing logic and improve data retrieval efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a fixed calling schedule is used to handle back-end processes, then the system operation is simple to implement, but the processing logic cannot be shared and must be re-implemented for new data requests

Engineering Contradiction:
Improveprocessing logic reusabilityVSAvoidsystem structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent transitions from a static fixed calling schedule to a dynamic service dependency graph that adapts to different data requests. The graph structure allows the system to dynamically determine service calling sequences based on specific data integration needs, enabling processing logic to be reused across different scenarios while maintaining flexibility.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The service dependency graph serves as a universal structure that can handle multiple types of data integration requests. By modeling services and their dependencies in a graph format, the system can reuse the same graph structure and processing logic for different data sources and integration scenarios, eliminating the need to re-implement logic for each new request.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If a fixed calling schedule is used, then the implementation is straightforward, but developers must re-implement back-end processing logic for new data requests which is inefficient and error-prone

Engineering Contradiction:
Improvedata retrieval efficiencyVSAvoidprocessing logic correctness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs preliminary action by pre-defining service dependencies and calling sequences in the service dependency graph before actual data integration requests are processed. This pre-established graph structure allows the system to efficiently retrieve and execute appropriate processing logic without re-implementation, improving productivity while maintaining reliability through consistent, pre-validated dependency relationships.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If services are called in an arbitrary sequence, then the implementation is simple, but the correct sequence for accessing services cannot be determined

Engineering Contradiction:
Improveservice calling sequence determinationVSAvoidservice dependency modeling complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The service dependency graph acts as an intermediary structure that mediates between services and determines the correct calling sequence. Rather than directly managing complex service interactions, the graph serves as a middle layer that models dependencies and provides a systematic way to determine calling sequences, making the system easier to operate while managing the necessary complexity in an organized manner.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10650048B2Managing complex service dependencies in a data integration system
Publication Date: 2020.05.12 BAIDU USA LLC
  • US10650048B2 patent drawing
  • US10650048B2 patent drawing
  • US10650048B2 patent drawing

AI summary

Described is a data integration technique and system for providing data in response to a request. The data integration system may overcome the limits of a fixed scheduling system by implementing a service dependency graph (SDG). In particular, the data integration system may represent the SDG as a directed acyclic graph (DAG). Accordingly, the system may leverage the nature of DAGs in order to derive an efficient topological ordering for calling one or more services. Thus, the data integration system may retrieve and compile data in an efficient and scalable manner.