Graph-Based Roll-Up Summary Field Calculation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Calculating roll-up summary fields (RSFs) in large-scale systems with complex data models is time-consuming and resource-intensive, particularly when multiple RSFs are involved, leading to performance issues due to the need for frequent recalculations and increased pressure on shared resources like databases and computing resources.

Innovation Solution

The system uses a graph-based approach to update RSF values by deserializing data, updating values at nodes based on established master-detail relationships, and serializing the changes, thereby optimizing the calculation process and reducing resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional methods are used to calculate roll-up summary fields in large-scale systems with complex data models, then calculation accuracy is maintained, but calculation time increases and system performance deteriorates

Engineering Contradiction:
Improvecalculation accuracyVSAvoidcalculation time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments the complex data model into a graph structure where nodes represent records and edges represent relationships. This segmentation allows the system to process only the relevant subset of records affected by a change rather than recalculating all roll-up summary fields in the entire data model, thereby reducing calculation time while maintaining accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by building the graph structure in advance and pre-identifying the relationships between records. When a data change occurs, the system can immediately traverse the pre-built graph to determine which roll-up summary fields need updating, avoiding the need to analyze the entire data model at calculation time.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If traditional methods are used to update roll-up summary fields, then completeness of updates is ensured, but computational load increases and resource utilization worsens

Engineering Contradiction:
Improvecompleteness of updatesVSAvoidcomputational load
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent implements a feedback mechanism where the graph structure provides information about which records are related to which roll-up summary fields. When a record changes, the system uses this feedback to automatically determine the exact set of fields that need updating, ensuring completeness while minimizing computational load by avoiding unnecessary calculations.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent makes the update process dynamic by traversing the graph structure to identify only the affected roll-up summary fields based on the specific change that occurred. This dynamic approach adapts to each change scenario, updating only what is necessary rather than performing static, comprehensive recalculations that consume excessive computational resources.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If multiple roll-up summary fields are calculated in complex data models, then comprehensive summarization is achieved, but system performance and resource availability deteriorate

Engineering Contradiction:
Improvecomprehensive summarizationVSAvoidsystem performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the comprehensive summarization task into individual graph traversal operations for each affected roll-up summary field. This allows the system to maintain comprehensive summarization capabilities while improving productivity by processing only the specific fields that need updating rather than recalculating all fields simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by updating only the specific roll-up summary fields that are affected by a data change, rather than performing excessive full recalculations of all fields. This maintains comprehensive summarization where needed while optimizing system performance by avoiding unnecessary computations.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11442989B2Scalable roll-up summary field calculation using graphs
Publication Date: 2022.09.13 SALESFORCE INC
  • US11442989B2 patent drawing
  • US11442989B2 patent drawing
  • US11442989B2 patent drawing

AI summary

Systems and methods for updating values of roll-up summary fields (RSFs) associated with a data model are described. A server computing system receives data associated with roll-up summary fields (RSF) of objects of a data model. The data is in in a serialized format. The computer system deserializes the data to determine values of the RSFs at nodes of a graph associated with the data model. The computer system updates a value of a RSF at a first node of the graph. The computer system updates a value of one or more RSFs at one or more remaining nodes of the graph based on said updating the value of the RSF at the first node. The computer system serializes the values of the RSFs at all of the nodes of the graph to generate serialized data subsequent to said updating the value of the one or more RSFs at the one or more remaining nodes of the graph.