Symbolic hyper-graph database
First Claim
Patent Images
1. A graph database comprising:
- at least one non-transitory computer-readable medium including;
one or more symbolic data stores configured to symbolically store sets of multiple hyper-graph nodes;
one or more of the multiple hyper-graph nodes associated with a first unique identifier including one or more first global keys and a first local key, the one or more first global keys including a binary integer associated with a database server and the first local key uniquely identifying the one or more multiple hyper-graph nodes stored on the database server;
a second unique identifier including one or more second global keys and a second local key and identifying a set of multiple hyper-graph nodes representing a set operation of a union of hyper-graph nodes with comparable relationships based on having similar edges; and
one or more key-value data stores configured to store attribute information for hyper-graph nodes and hyper-graph edges, the attribute information including a first symbolic key and a first value, the first symbolic key identifying at least one of the one or more hyper-graph nodes symbolically stored by the one or more symbolic data stores, and the first value including an object key and data that is associated with the object key, the attribute information also including a second symbolic key and a second value associated with the set of multiple hyper-graph nodes representing the set operation;
wherein each set is stored as a three element binary decision diagram (e3BDD).
1 Assignment
0 Petitions
Accused Products
Abstract
A graph database is described. The graph database includes one or more symbolic data stores and one or more key-value data stores. Each symbolic data store is configured to symbolically store sets of multiple hyper-graph nodes. Each key-value data store is configured to store attribute information for hyper-graph nodes and hyper-graph edges.
19 Citations
17 Claims
-
1. A graph database comprising:
-
at least one non-transitory computer-readable medium including; one or more symbolic data stores configured to symbolically store sets of multiple hyper-graph nodes; one or more of the multiple hyper-graph nodes associated with a first unique identifier including one or more first global keys and a first local key, the one or more first global keys including a binary integer associated with a database server and the first local key uniquely identifying the one or more multiple hyper-graph nodes stored on the database server; a second unique identifier including one or more second global keys and a second local key and identifying a set of multiple hyper-graph nodes representing a set operation of a union of hyper-graph nodes with comparable relationships based on having similar edges; and one or more key-value data stores configured to store attribute information for hyper-graph nodes and hyper-graph edges, the attribute information including a first symbolic key and a first value, the first symbolic key identifying at least one of the one or more hyper-graph nodes symbolically stored by the one or more symbolic data stores, and the first value including an object key and data that is associated with the object key, the attribute information also including a second symbolic key and a second value associated with the set of multiple hyper-graph nodes representing the set operation; wherein each set is stored as a three element binary decision diagram (e3BDD). - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of implementing a graph database comprising:
-
symbolically storing sets of multiple hyper-graph nodes in one or more symbolic data stores, one or more of the multiple hyper-graph nodes associated with a first unique identifier including one or more first global keys and a first local key, the one or more first global keys including, a binary integer associated with a database server and the first local key uniquely identifying the one or more multiple, hyper-graph nodes stored on the database server, at least one of the sets of multiple hyper-graph nodes representing a set operation of a union of hyper-graph nodes with comparable relationships based on having similar edges, each hyper-graph node in the at least one of the sets of multiple hyper-graph nodes also being stored with its own unique identifier; associating a second unique identifier, including one or more second global keys and a second local key, with each of the one or more sets of multiple hypergraph nodes representing the set operation; and storing attribute information for nodes and edges in one or more key-value data stores, including for the at least one of the sets of multiple hyper-graph nodes, the attribute information including a symbolic key and a value, the symbolic key identifying at least one of the multiple hyper-graph nodes symbolically stored by the one or more symbolic data stores, and data that is associated with the object key; wherein each set, each node, and each edge is stored as a three element BDD (e3BDD). - View Dependent Claims (8, 9, 10)
-
-
11. A non-transitory computer-readable medium storing a program that causes a processor to execute a method of implementing, a graph database comprising:
-
symbolically storing sets of multiple hyper-graph nodes in one or more symbolic data stores, one or more of the multiple hyper-graph nodes associated with a first unique identifier including, one or more first global keys and a first local key, the one or more first global keys including a binary integer associated with a database server and the first local key uniquely identifying the one or more multiple hyper-graph nodes stored on the database server, at least one of the sets of multiple hyper-graph nodes representing a set operation of a union of hyper-graph nodes with comparable relationships based on having similar edges, each hyper-graph node in the at least one of the sets of multiple hyper-graph nodes also being, stored with its own unique identifier; associating a second unique identifier, including one or more second global keys and a second local key, with each of the one or more sets of multiple hyper-graph nodes representing the set operation; and storing attribute information for nodes and edges in one or more key-value data stores, including for the at least one of the sets of multiple hyper-graph nodes, the attribute information including a symbolic key and a value, the symbolic key identifying at least one of the multiple hyper-graph nodes symbolically stored by the one or more symbolic data stores, and data that is associated with the object key; wherein each set, each node, and each edge is stored as a three element BDD (e3BDD). - View Dependent Claims (12, 13, 14)
-
-
15. A system, comprising:
-
a processor; a non-transitory computer-readable medium storing a program that causes the processor to execute an implementation of a three element binary decision diagram (e3BDD) that are each configured to be employed in symbolically storing a set of multiple hyper-graph nodes, one or more of the multiple hyper-graph nodes associated with a first unique identifier including one or more first global keys and a first local key, the one or more first global keys including a binary integer associated with a database server and the first local key uniquely identifying the one or more multiple hyper- graph nodes stored on the database server, the set of multiple hyper-graph nodes representing a set operation of a union of hyper-graph nodes with comparable relationships based on having similar edges, each hyper-graph node in the set of multiple hyper-graph nodes also being stored with its own unique identifier; associating a second unique identifier, including one or more second global keys and a second local key, with each of the one or more sets of multiple hyper-graph nodes representing the set operation; and wherein the program is further configured to cause the processor to store attribute information for nodes and edges in one or more key-value data stores including for the at least one of the sets of multiple hyper-graph nodes, the attribute information including a symbolic key and a value, the symbolic key identifying at least one of the multiple hyper-graph nodes symbolically stored by the one or more symbolic data stores, and data that is associated with the object key. - View Dependent Claims (16, 17)
-
Specification