Document-Store Graph Processing for Flexible Schema Evolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional database systems face challenges in efficiently generating and managing heterogeneous graphs due to limitations in transactional visibility and dynamic adaptability, particularly with schema constraints and non-persistent caching, which hinder real-time observation of graph changes.

Innovation Solution

The integration of a document store using JSON format and a persistent adjacency index provides a flexible schema-less data storage and persistent adjacency information, allowing for efficient graph generation and management by capturing evolving graph structures and maintaining transactional visibility.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Stability of the object's composition

If a column or row store is used to represent different types of nodes or edges in the graph, then data can be stored in a structured format with defined schemas, but the system lacks flexibility to accommodate evolving graph structures and schema changes

Engineering Contradiction:
Improvedata structure stabilityVSAvoidschema adaptability
Core Design Contradiction:
Stability of the object's compositionVSAdaptability or versatility

Solution Approach 1:

The patent changes the data storage format from traditional column/row stores with fixed schemas to a document store using JSON format, which allows flexible schema evolution while maintaining data structure. This parameter change enables the system to accommodate evolving graph structures without being constrained by predefined schemas.

Inventive Principle:
Principle #35Parameter changes

2Speed

If an adjacency list is implemented as a non-persistent cache, then graph relationships can be accessed quickly, but the system cannot maintain transactional visibility or observe real-time changes to the graph

Engineering Contradiction:
Improvegraph access speedVSAvoidtransactional visibility
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent pre-establishes a persistent adjacency index that maintains graph relationships in a durable storage medium. This preliminary action ensures that transactional visibility and real-time change observation are available before queries are executed, eliminating the limitations of non-persistent caches while maintaining fast access speeds.

Inventive Principle:
Principle #10Preliminary action

3Stability of the object's composition

If traditional database systems are used for graph processing, then data can be stored with defined schemas, but the system experiences delays in adjacency information updates and cannot support real-time graph operations

Engineering Contradiction:
Improvedata storage stabilityVSAvoidgraph operation efficiency
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The patent introduces a specialized graph processing module that acts as an intermediary between the document store and query operations. This module maintains a persistent adjacency index that optimizes graph traversal and relationship queries, eliminating the delays experienced by traditional database systems when performing graph operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12406003B2Graph processing using a document store
Publication Date: 2025.09.02 SAP SE
  • US12406003B2 patent drawing
  • US12406003B2 patent drawing
  • US12406003B2 patent drawing

AI summary

The present invention relates to an improved database system architecture designed for generating and managing heterogeneous graphs. The system utilizes a document store in conjunction with a persistent adjacency index to enhance flexibility, adaptability, and transactional visibility during the generation and modification of complex graph structures. Data stored in the document store utilizes a flexible schema for storing data which improves the efficiency in both storing and retrieving data from the document store during graph-related processing tasks.