IP Library Granted Patent US 12,468,606
Granted Patent B2
US 12,468,606 · App. 18/447,684 · Granted Nov 11, 2025

Management of logs and cache for a graph database

Inventor: Songting Chen (Portola Valley, CA)
Assignee: TigerGraph, Inc.
G06F11/1471G06F11/1451G06F16/24552G06F16/27G06F2201/84
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,468,606
App. No.
18/447,684
Granted
Nov 11, 2025
Kind
B2
Abstract

Systems, methods, and software described herein manage logs and cache storage for a graph database. In one implementation, a replica in a cluster of replicas, identifies an update associated with a graph database. In response to the update, the first replica determines whether a quorum exists for the update using one or more additional replicas and, when a quorum exists, generates an entry in a log based on the update.

Claims (62)

1 . A method comprising:

in a first replica, identifying an update associated with a graph database;

verifying a signature provided to the first replica in association with the update;

in the first replica and in response to verifying the signature, determining a quorum of one or more additional replicas have verified the signature;

in the first replica and in response to determining the quorum, generating an entry for the update in a log of entries for updates to the graph database; and

in response to a synchronization event, updating a local snapshot of the graph database at the first replica using the entries from the log.

2 . The method of claim 1 , wherein the update comprises an addition, deletion, or modification to a vertex or edge in the graph database.

3 . The method of claim 1 further comprising:

in the first replica, identifying the synchronization event for the graph database; and

in the first replica and in response to the synchronization event, communicating one or more entries from the log to a cloud data store that stores the graph database.

4 . The method of claim 3 , wherein the synchronization event comprises a quantity of entries in the log satisfying a threshold, an expiration of a period, or resource usage of the first replica satisfying one or more criteria.

5 . The method of claim 1 , wherein the signature is created by signing the update with a first encryption key and wherein the first replica and the quorum of the one or more additional replicas verify the signature using a second encryption key.

6 . The method of claim 1 further comprising, in the first replica, maintaining the local snapshot of the graph database.

7 . The method of claim 6 further comprising:

in the first replica, identifying a query to the graph database; and

in the first replica and in response to the query, generating a query response based on the local snapshot and the log.

8 . The method of claim 1 further comprising:

in the first replica, identifying a second update associated with the graph database;

verifying a second signature provided to the first replica in association with the second update;

in the first replica and in response to verifying the second signature, determining a second quorum of the one or more additional replicas does not exist; and

in the first replica and in response to determining the second quorum does not exist, preventing the second update from being applied in the log.

9 . The method of claim 1 further comprising:

in the one or more additional replicas, identifying a failure of the first replica; and

in the one or more additional replicas and in response to identifying the failure of the first replica, selecting a second replica in the one or more additional replicas to replace the first replica as a leader.

10 . A computing apparatus comprising:

a storage system;

a processing system operatively coupled to the storage system; and

program instructions stored on the storage system to operate a first replica in a cluster that, when executed by the processing system, direct the computing apparatus to:

identify an update associated with a graph database;

verify a signature provided to the first replica in association with the update;

in response to verifying the signature, determine a quorum of one or more additional replicas in the cluster have verified the signature;

in response to determining the quorum, generate an entry for the update in a log of entries for updates to the graph database; and

in response to a synchronization event, update a snapshot of the graph database at the first replica using the entries from the log.

11 . The computing apparatus of claim 10 , wherein the update comprises an addition, deletion, or modification to a vertex or edge in the graph database.

12 . The computing apparatus of claim 10 , wherein the program instructions further direct the computing apparatus to:

identify the synchronization event for the graph database; and

in response to the synchronization event, communicate one or more entries from the log to a cloud store that stores the graph database.

13 . The computing apparatus of claim 12 , wherein the synchronization event comprises a quantity of entries in the log satisfying a threshold, an expiration of a period, or resource usage of the first replica satisfying one or more criteria.

14 . The computing apparatus of claim 10 , wherein the signature is created by signing the update with a first encryption key and wherein the first replica and the quorum of the one or more additional replicas verify the signature using a second encryption key.

15 . The computing apparatus of claim 10 , wherein the program instructions further direct the computing apparatus to maintain a snapshot comprising frequently accessed data in association with the graph database.

16 . The computing apparatus of claim 15 , wherein the program instructions further direct the computing apparatus to:

identify a query to the graph database; and

generate a query response based on the snapshot and the log.

17 . The computing apparatus of claim 10 , wherein the program instructions further direct the computing apparatus to:

identify a second update associated with the graph database;

verify a second signature provided to the first replica in association with the second update;

in response to verifying the second signature, determine a second quorum of the one or more additional replicas does not exist; and

in response to determining the second quorum does not exist, prevent the second update from being applied in the log.

18 . A system comprising:

a plurality of replicas, wherein each replica comprises at least one computer; and

a first replica in the plurality of replicas configured to:

identify an update associated with a graph database;

verify a signature provided to the first replica in association with the update;

in response to verifying the signature, determine a quorum of one or more additional replicas in the plurality of replicas have verified the signature;

in response to determining the quorum, generate an entry for the update in a log of entries for updates to the graph database; and

in response to a synchronization event, update a snapshot of the graph database at the first replica using the entries from the log.

19 . The system of claim 18 , wherein the first replica is further configured to:

identify the synchronization event for the graph database; and

communicate one or more entries from the log to a cloud data store that stores the graph database.

20 . The system of claim 18 , wherein one or more replicas of the plurality of replicas are configured to:

identify a failure of the first replica; and

in response to identifying the failure of the first replica, select a second replica in the one or more replicas to replace the first replica as a leader, wherein the leader updates snapshots in a cloud data store.

Assignments (2)
SECURITY INTEREST Recorded Sep 24, 2025
From: TIGERGRAPH, INC.
To: WESTERN ALLIANCE BANK
Reel/Frame 072363/0020 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2023
From: CHEN, SONGTING
To: TIGERGRAPH, INC.
Reel/Frame 064553/0275 →
Continuity (2)
Provisional Application 63371846 · Aug 18, 2022
Related Publication 20240061754A1 · Feb 22, 2024
References Cited (6)
US 8301600B1 · Helmick · 2012 [cited by examiner]
US 10120924B2 · Wong · 2018 [cited by examiner]
US 10366106B2 · Fan · 2019 [cited by examiner]
US 20150066857A1 · Dayal · 2015 [cited by examiner]
US 20230062434A1 · Wagner · 2023 [cited by examiner]
US 20230376467A1 · Jenkins · 2023 [cited by examiner]