Dataflow Optimization for Data Repository Extractions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional database systems require manual specification of relationship fields between objects for data extraction, leading to inefficient data retrieval and analysis, as they lack visual representation of relationships and require users to write SQL queries with minimal visual builder tools, limiting data extraction optimization and accuracy.

Innovation Solution

A data graph representation mechanism that allows users to visually define relationships and joins, leveraging metadata to automatically assemble join conditions and generate SOQL queries, enabling faster and more accurate data extraction by traversing the object-relationship graph multiple times for optimization and providing a preview of the extracted data in a denormalized form.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional database systems require manual specification of relationship fields for data extraction, then users can retrieve data from the system, but the data retrieval process becomes inefficient and time-consuming

Engineering Contradiction:
Improvedata extraction efficiencyVSAvoidtime for manual relationship specification
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by automatically generating the complete object-relationship graph structure before data extraction begins. Relationship fields are pre-identified and organized in the graph, eliminating the need for users to manually specify relationships during the extraction process. This preliminary structuring of data relationships enables efficient querying without manual intervention.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system performs self-service by automatically traversing the object-relationship graph to identify and extract relationship fields. The graph structure enables the system to self-determine join conditions and relationship paths without user input. The automated graph traversal algorithm independently identifies optimal data extraction paths based on the pre-built relationship model.

Inventive Principle:
Principle #25Self-service

2Ease of operation

If conventional systems lack visual representation of relationships, then the system structure remains simple, but users cannot easily understand or select relationships for extraction

Engineering Contradiction:
Improveease of relationship selectionVSAvoidcomplexity of visual graph interface
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The object-relationship graph serves as an intermediary between the complex database structure and the user. It visually represents relationships in an intuitive graph format where nodes represent objects and edges represent relationships. This intermediary visualization layer translates complex relational database structures into easily understandable visual forms, enabling users to select relationships for extraction without dealing with the underlying complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If conventional systems traverse the object-relationship graph once and execute steps in graph order, then the extraction process is simple to implement, but optimization opportunities are missed

Engineering Contradiction:
Improvedata extraction speedVSAvoidcomplexity of multi-pass traversal algorithm
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs a preliminary traversal pass to analyze the complete object-relationship graph structure before executing data extraction. During this preliminary pass, the system identifies optimization opportunities such as reusable subgraphs, redundant relationship paths, and efficient traversal sequences. This preliminary analysis enables the system to generate optimized extraction plans that improve performance without requiring complex real-time decision-making during execution.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10380136B2Dataflow optimization for extractions from a data repository
Publication Date: 2019.08.13 SALESFORCE INC
  • US10380136B2 patent drawing
  • US10380136B2 patent drawing
  • US10380136B2 patent drawing

AI summary

Dataflow optimization is described for extractions from a data depository. In one example an object-relationship graph of a data extraction definition is traversed in a first pass. The object-relationship graph has a node for each object. The steps from each node of the graph in the first pass is determined. It is determined if any of the determined steps are repeated. A single instance of each repeated step is placed before other steps in a query plan. Data is then extracted in a second pass from the object-oriented database system according to the object-relationship graph by performing the repeated steps first and then reusing the repeated steps in other determined steps.