Dual Write and Dual Read Access to Graph Databases

US2024086563A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2024086563-A1
Application numberUS-202218053870-A
CountryUS
Kind codeA1
Filing dateNov 9, 2022
Priority dateSep 13, 2022
Publication dateMar 14, 2024
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

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.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method comprising: receiving, by a computer system, a query to a particular graph database, the query identifying a plurality of vertices of the particular graph database; performing, by the computer system, hash operations on two or more of the plurality of vertices to generate respective hash values; dividing, by the computer system using the respective hash values, the query into a plurality of sub-queries, each corresponding to a subset of the plurality of vertices; and sending, by the computer system, ones of the plurality of sub-queries to a plurality of database repositories for the particular graph database. 2 . The method of claim 1 , wherein the plurality of database repositories includes a primary copy of the particular graph database and one or more redundant copies of the particular graph database. 3 . The method of claim 1 , further comprising: receiving, by the computer system, an indication that a particular one of the plurality of database repositories is unavailable; and distributing, by the computer system, vertices included in a sub-query intended for the unavailable database repository into remaining ones of the plurality of sub-queries. 4 . The method of claim 1 , further comprising: receiving, by the computer system, an indication that a particular one of the plurality of database repositories is unavailable; and reassigning, by the computer system, a sub-query intended for the unavailable database repository to an available one of the plurality of database repositories. 5 . The method of claim 1 , further comprising: storing, by the computer system, a duplicate of the particular graph database into a different plurality of database repositories; wherein the particular graph database is accessible by a first group of users categorized as risk; and wherein the duplicate graph database is accessible by a second group of users categorized as non-risk and is not accessible by the first group. 6 . The method of claim 5 , further comprising: receiving a first query from a user of the first group using a first process running on the computer system; and receiving a second query from a user of the second group using a second process running on the computer system, wherein the first and second processes do not communicate with one another. 7 . The method of claim 5 , wherein storing the particular and duplicate graph databases includes sending, by the computer system using respective data storage engines for the particular and duplicate graph databases, a new record to the particular and duplicate graph databases concurrently. 8 . The method of claim 7 , further comprising validating storage of the new record to the particular and duplicate graph databases by: reading respective copies of the new record from the particular and duplicate graph databases; and comparing the respective copies to a copy of the new record held in the computer system. 9 . A computer-readable, non-transient memory including instructions that when executed by a computer system within a computer network, cause the computer system to perform operations including: maintaining a particular graph database in a plurality of database repositories; receiving a query to the particular graph database, the query identifying a plurality of vertices of the particular graph database; generating respective hash values for a subset of the plurality of vertices; using the respective hash values, distributing the plurality of vertices among a plurality of sub-queries; and sending ones of the plurality of sub-queries to respective repositories of the plurality of database repositories. 10 . The computer-readable, non-transient memory of claim 9 , wherein generating the respective hash values includes performing hash operations on user identification information associated with ones of the subset of vertices. 11 . The computer-readable, non-transient memory of claim 9 , further comprising, in response to an indication that a particular one of the plurality of database repositories is unavailable, distributing vertices included in a sub-query intended for the unavailable database repository into remaining ones of the plurality of sub-queries. 12 . The computer-readable, non-transient memory of claim 9 , further comprising, in response to an indication that a particular one of the plurality of database repositories is unavailable, reassigning a sub-query intended for the unavailable database repository to an available one of the plurality of database repositories. 13 . The computer-readable, non-transient memory of claim 9 , further comprising: storing a duplicate of the particular graph database into a different plurality of database repositories; wherein the particular graph database is accessible by a first group of users; and wherein the duplicate graph database is accessible by a second group of users and is not accessible by the first group. 14 . The computer-readable, non-transient memory of claim 13 , further comprising: receiving a first query from a user of the first group using a first process running on the computer system; and receiving a second query from a user of the second group using a second process running on the computer system, wherein the first and second processes are isolated from one another. 15 . The computer-readable, non-transient memory of claim 13 , wherein storing the particular and duplicate graph databases includes sending, using respective data storage engines for the particular and duplicate graph databases, a new record to the particular and duplicate graph databases concurrently. 16 . A system comprising: a processor circuit; and a memory circuit including instructions that when executed by the processor circuit, cause the system to perform operations including: receiving a query to a particular graph database, the query identifying a plurality of vertices of the particular graph database; generating respective hash values for a subset of the plurality of vertices; using the respective hash values, distributing the plurality of vertices among a plurality of sub-queries; and sending ones of the plurality of sub-queries to respective repositories of a plurality of database repositories. 17 . The system of claim 16 , wherein the plurality of database repositories includes a primary copy of the particular graph database and one or more redundant copies of the particular graph database. 18 . The system of claim 16 , wherein generating the respective hash values includes performing hash operations on information about electronic exchanges associated with ones of the subset of vertices. 19 . The system of claim 16 , wherein the operations further include: receiving an indication that a particular one of the plurality of database repositories is unavailable; and distributing vertices included in a sub-query intended for the unavailable database repository into remaining ones of the plurality of sub-queries. 20 . The system of claim 16 , wherein the operations further include: storing a duplicate of the particular graph database into a different plurality of database repositories; wherein the particular graph database is accessible by a first group of users; and wherein the duplicate graph database is accessible by a second group of users and is not accessible by the first group.

Assignees

Inventors

Classifications

  • where protection concerns the structure of data, e.g. records, types, queries · CPC title

  • of sub-queries or views · CPC title

  • Access rights, e.g. capability lists, access control lists, access tables, access matrices · CPC title

  • Object oriented databases · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2024086563A1 cover?
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…
Who is the assignee on this patent?
Paypal Inc
What technology area does this patent fall under?
Primary CPC classification G06F21/6227. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Mar 14 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).