IP Library Granted Patent US 12688233
Granted Patent B2
US 12688233 · App. 18/935,891 · Granted Jul 21, 2026

Construction of point-in-time graph for analytics queries

Inventors: Hongjiang Zhang (Shanghai, CN); Xubin Chen (Shanghai, CN); Jun Li (Mountain View, CA)
Assignee: eBay Inc.
G06F16/9024
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 12688233
App. No.
18/935,891
Granted
Jul 21, 2026
Kind
B2
Abstract

A method for constructing a point-in-time global consistent graph is described. The method includes accessing a stream of data from a transactional graph database, receiving, at a scalable persistent computational platform that is separate from the transactional graph database, a graph analytics query that indicates a time attribute value, in response to receiving the graph analytics query, constructing, at the scalable persistent computational platform, a point-in-time graph snapshot based on the stream of data and the time attribute value, and processing, at the scalable persistent computational platform, the graph analytics query with the point-in-time graph snapshot.

Claims (44)

1 . A computer-implemented method comprising:

accessing a stream of data from a transactional graph database;

receiving, at a scalable persistent computational platform that is separate from the transactional graph database, a graph analytics query that indicates a time attribute value;

in response to receiving the graph analytics query, constructing, at the scalable persistent computational platform, a point-in-time graph snapshot based on the stream of data and the time attribute value by reconstructing the point-in-time graph snapshot exclusively from database snapshots and database mutation logs already stored at the scalable persistent computational platform, without making any further requests to the transactional graph database after receiving the graph analytics query; and

processing, at the scalable persistent computational platform, the graph analytics query with the reconstructed point-in-time graph snapshot.

2 . The computer-implemented method of claim 1 , wherein the stream of data comprises a plurality of database snapshots of the transactional graph database and a stream of database mutation logs of the transactional graph database.

3 . The computer-implemented method of claim 2 , further comprising:

storing the plurality of database snapshots and the stream of database mutation logs at the scalable persistent computational platform.

4 . The computer-implemented method of claim 2 , wherein constructing the point-in-time graph snapshot further comprises:

constructing the point-in-time graph snapshot corresponding to the time attribute value based on one or more database snapshots of the plurality of database snapshots, the one or more database snapshots corresponding to the time attribute value, and one or more database mutation logs from the stream of database mutation logs, the one or more database mutation logs corresponding to the time attribute value.

5 . The computer-implemented method of claim 4 , wherein the one or more database mutation logs comprise a combination of unmerged database mutation logs and merged database mutation logs corresponding to the time attribute value.

6 . The computer-implemented method of claim 2 , wherein constructing the point-in-time graph snapshot further comprises:

constructing, at the scalable persistent computational platform, the point-in-time graph snapshot corresponding to the time attribute value based on the constructed point-in-time database snapshot corresponding to the time attribute value.

7 . The computer-implemented method of claim 2 , wherein constructing the point-in-time graph snapshot further comprises:

identifying a time window comprising a last database snapshot prior to the time attribute value and one or more database mutation logs between the last database snapshot and an unmerged database mutation log prior to the time attribute value.

8 . The computer-implemented method of claim 7 , further comprising:

merging the one or more database mutation logs identified in the time window.

9 . The computer-implemented method of claim 1 , wherein the graph analytics query is processed at the scalable persistent computational platform, and a graph transactional query is processed at the transactional graph database.

10 . The computer-implemented method of claim 1 , wherein the graph analytics query and a graph transactional query are processed on separate systems.

11 . A computing apparatus comprising:

a processor; and

a memory storing instructions that, when executed by the processor, configure the apparatus to:

access a stream of data from a transactional graph database;

receive, at a scalable persistent computational platform that is separate from the transactional graph database, a graph analytics query that indicates a time attribute value;

in response to receiving the graph analytics query, constructing, at the scalable persistent computational platform, a point-in-time graph snapshot based on the stream of data and the time attribute value by reconstructing the point-in-time graph snapshot exclusively from database snapshots and database mutation logs already stored at the scalable persistent computational platform, without making any further requests to the transactional graph database after receiving the graph analytics query; and

process, at the scalable persistent computational platform, the graph analytics query with the reconstructed point-in-time graph snapshot.

12 . The computing apparatus of claim 11 , wherein the stream of data comprises a plurality of database snapshots of the transactional graph database and a stream of database mutation logs of the transactional graph database.

13 . The computing apparatus of claim 12 , wherein the instructions further configure the apparatus to:

store the plurality of database snapshots and the stream of database mutation logs at the scalable persistent computational platform.

14 . The computing apparatus of claim 12 , wherein constructing the point-in-time graph snapshot further comprises:

construct the point-in-time graph snapshot corresponding to the time attribute value based on one or more database snapshots of the plurality of database snapshots, the one or more database snapshots corresponding to the time attribute value, and one or more database mutation logs from the stream of database mutation logs, the one or more database mutation logs corresponding to the time attribute value.

15 . The computing apparatus of claim 14 , wherein the one or more database mutation logs comprise a combination of unmerged database mutation logs and merged database mutation logs corresponding to the time attribute value.

16 . The computing apparatus of claim 12 , wherein constructing the point-in-time graph snapshot further comprises:

construct, at the scalable persistent computational platform, the point-in-time graph snapshot corresponding to the time attribute value based on the constructed point-in-time database snapshot corresponding to the time attribute value.

17 . The computing apparatus of claim 12 , wherein constructing the point-in-time graph snapshot further comprises:

identify a time window comprising a last database snapshot prior to the time attribute value and one or more database mutation logs between the last database snapshot and an unmerged database mutation log prior to the time attribute value.

18 . The computing apparatus of claim 17 , wherein the instructions further configure the apparatus to:

merge the one or more database mutation logs identified in the time window.

19 . The computing apparatus of claim 11 , wherein the graph analytics query is processed at the scalable persistent computational platform, and a graph transactional query is processed at the transactional graph database.

20 . A non-transitory computer-readable storage medium, the computer-readable storage medium including instructions that when executed by a computer, cause the computer to:

access a stream of data from a transactional graph database;

receive, at a scalable persistent computational platform that is separate from the transactional graph database, a graph analytics query that indicates a time attribute value;

in response to receiving the graph analytics query, constructing, at the scalable persistent computational platform, a point-in-time graph snapshot based on the stream of data and the time attribute value by reconstructing the point-in-time graph snapshot exclusively from database snapshots and database mutation logs already stored at the scalable persistent computational platform, without making any further requests to the transactional graph database after receiving the graph analytics query; and

process, at the scalable persistent computational platform, the graph analytics query with the reconstructed point-in-time graph snapshot.