Distributed graph database writes
First Claim
1. A method, comprising:
- executing a set of processes for processing queries of a graph database storing a graph, wherein the graph comprises a set of nodes, a set of edges between pairs of nodes in the set of nodes, and a set of predicates;
when a write query of the graph database is received, using one or more of the processes to process the write query by;
using a schema of the graph database to validate the write query;
transmitting the validated write query to a set of shards comprising the graph database; and
for each shard in the set of shards, processing the write query at the shard when a shard identifier representing the shard is matched to one or more attributes in the write query;
when an additional write query fails validation using the schema, retrieving a latest version of the schema from one or more of the shards; and
using the latest version of the schema to revalidate the additional write query.
2 Assignments
0 Petitions
Accused Products
Abstract
The disclosed embodiments provide a system for processing queries of a graph database. During operation, the system executes a set of processes for maintaining the graph database storing a graph, wherein the graph includes a set of nodes, a set of edges between pairs of nodes in the set of nodes, and a set of predicates. When a write query of the graph database is received, the system uses one or more of the processes to process the write query by using a schema of the graph database to validate the write query. Next, the system transmits the validated write query to a set of shards containing the graph database. Finally, the system processes the write query at each shard when a shard identifier representing the shard is matched to one or more attributes in the write query.
-
Citations
20 Claims
-
1. A method, comprising:
-
executing a set of processes for processing queries of a graph database storing a graph, wherein the graph comprises a set of nodes, a set of edges between pairs of nodes in the set of nodes, and a set of predicates; when a write query of the graph database is received, using one or more of the processes to process the write query by; using a schema of the graph database to validate the write query; transmitting the validated write query to a set of shards comprising the graph database; and for each shard in the set of shards, processing the write query at the shard when a shard identifier representing the shard is matched to one or more attributes in the write query; when an additional write query fails validation using the schema, retrieving a latest version of the schema from one or more of the shards; and using the latest version of the schema to revalidate the additional write query. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. An apparatus, comprising:
-
one or more processors; and memory storing instructions that, when executed by the one or more processors, cause the apparatus to; execute a set of processes for processing queries of a graph database storing a graph, wherein the graph comprises a set of nodes, a set of edges between pairs of nodes in the set of nodes, and a set of predicates; when a write query of the graph database is received, use one or more of the processes to process the write query by; using a schema of the graph database to validate the write query; transmitting the validated write query to a set of shards comprising the graph database; and for each shard in the set of shards, processing the write query at the shard when a shard identifier representing the shard matches one or more attributes in the write query; retrieve a latest version of the schema from one or more of the shards when an additional write query fails validation using the schema; and use the latest version of the schema to revalidate the additional write query. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. A system, comprising:
-
a graph database storing a graph, wherein the graph comprises a set of nodes, a set of edges between pairs of nodes in the set of nodes, and a set of predicates; a broker comprising a non-transitory computer-readable medium comprising instructions that, when executed, cause the system to process a query of the graph database by; using a schema of the graph database to validate the write query; transmitting the validated write query to a set of shards comprising the graph database; retrieving a latest version of the schema from one or more of the shards when an additional write query fails validation using the schema; and using the latest version of the schema to revalidate the additional write query; and the set of shards, wherein each shard in the set of shards comprises a non-transitory computer-readable medium comprising instructions that, when executed, cause the system to process the write query at the shard when a shard identifier representing the shard is matched to one or more attributes in the write query. - View Dependent Claims (20)
-
Specification