Graph Database Query Sharding for Synchronized Dual Read-Write Copies

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Maintaining multiple copies of a graph database while keeping vertices and edges up to date with recent client activity and meeting high query demand poses challenges, especially in protecting restricted information and ensuring quality of service.

Innovation Solution

A computer system divides queries into sub-queries using hash values to distribute them across multiple database repositories, validates storage of new records in duplicate databases, and manages unavailable repositories to maintain synchronized copies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If multiple copies of graph database are maintained to meet high query demand, then query processing speed is improved, but data consistency and synchronization between copies become more difficult to maintain

Engineering Contradiction:
Improvequery processing speedVSAvoiddata consistency
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent divides the graph database into multiple independent copies or shards distributed across different repositories. Each copy can be queried independently and concurrently, improving query processing speed. The segmentation allows parallel processing while reducing the complexity of maintaining consistency across the entire database.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates multiple copies of the graph database stored in different database repositories. These copies can be accessed simultaneously by different queries, improving query throughput. The copying mechanism enables read scalability while the system manages synchronization to maintain data consistency across copies.

Inventive Principle:
Principle #26Copying

2Reliability

If data is stored in duplicate databases for redundancy, then reliability is improved, but storage space and validation complexity increase

Engineering Contradiction:
Improvedata redundancyVSAvoidvalidation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent stores duplicate copies of graph database data in different database repositories to ensure reliability and fault tolerance. If one repository fails, other copies can continue to serve queries. The system manages the complexity of maintaining these duplicates through automated synchronization mechanisms.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent combines multiple database repositories into a unified graph database system that automatically manages data across them. The merging approach allows the system to present a single logical interface to users while handling the complexity of distributed storage and validation internally, reducing the perceived complexity for end users.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If queries are distributed across multiple repositories using hash values, then query processing efficiency is improved, but system complexity increases

Engineering Contradiction:
Improvequery processing efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent uses hash values to segment and distribute queries across multiple database repositories. This segmentation strategy directs different portions of the query workload to appropriate repositories based on hash calculations, improving query processing efficiency through load distribution while maintaining manageable system complexity through deterministic routing rules.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250348615A1Dual Write and Dual Read Access to Graph Databases
Publication Date: 2025.11.13 PAYPAL INC
  • US20250348615A1 patent drawing
  • US20250348615A1 patent drawing
  • US20250348615A1 patent drawing

AI summary

A method for operating a graph database, including receiving, by a computer system, a query to a particular graph database, the query identifying a plurality of vertices of the particular graph database. The method further includes performing, by the computer system, hash operations on two or more of the plurality of vertices to generate respective hash values and dividing, using the respective hash values, the query into a plurality of sub-queries, each corresponding to a subset of the plurality of vertices. The method also includes sending, by the computer system, ones of the plurality of sub-queries to a plurality of database repositories for the particular graph database.