System and method for storing and accessing data in an interlocking trees datastore
First Claim
1. A system for generating a tree-based datastore comprising:
- a processor;
a memory coupled to the processor; and
a tree-based datastore generator for creating at least one level of a tree-based datastore, the at least one level of the tree-based datastore comprising a first tree a first root and at least one node of a plurality of nodes, a second tree comprising a second root and the at least one node of the first tree and at least a third tree comprising a third root and at least one of the plurality of nodes of the first tree.
10 Assignments
0 Petitions
Accused Products
Abstract
A tree-based datastore comprising a forest of interconnected trees is generated and/or accessed. The tree-based datastore comprises a first tree that depends from a first root node and may include a plurality of branches. Each of the branches of the first tree ends in a leaf node. Each leaf node may represent an end product, as described more fully below. A second root of the same tree-based datastore is linked to each leaf node representing an end product. Hence, the second root is essentially a root to an inverted order of the first tree, but the first tree is not duplicated. Finally, the tree-based datastore comprises a plurality of trees in which the root node of each of these trees is an elemental node, as described more fully below. The root node of each of these trees may be linked to one or more nodes in one or more branches of the first tree. The nodes of the tree-based datastore contain only pointers to other nodes in the tree-based datastore. The roots of the trees in the forest of trees comprising the tree-based datastore may be linked to data.
42 Citations
40 Claims
-
1. A system for generating a tree-based datastore comprising:
-
a processor;
a memory coupled to the processor; and
a tree-based datastore generator for creating at least one level of a tree-based datastore, the at least one level of the tree-based datastore comprising a first tree a first root and at least one node of a plurality of nodes, a second tree comprising a second root and the at least one node of the first tree and at least a third tree comprising a third root and at least one of the plurality of nodes of the first tree. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system for generating a datastore comprising:
-
a processor;
a memory coupled to the processor; and
a datastore generator for creating a datastore, wherein the datastore comprises;
root nodes and non-root nodes organized into a plurality of connected trees, the plurality of connected trees comprising a tree of a first type comprising a first root and at least one of a plurality of non-root nodes and at least one of a plurality of trees of a second type, wherein the second tree type comprises a second root node and a plurality of non-root nodes common with the nodes of the tree of the first type. - View Dependent Claims (14, 15, 16, 23, 24)
-
-
17. (canceled)
-
18. (canceled)
-
19. (canceled)
-
20. (canceled)
-
21. (canceled)
-
22. (canceled)
-
25. A method for generating and accessing data from a datastore, comprising:
-
in response to receiving data, creating at least one level of a tree-based datastore, the at least one level of the tree-based datastore comprising a first tree comprising a first root and at least one node of a plurality of nodes, a second tree comprising a second root and the at least one node of the first tree and at least a third tree comprising a third root and at least one of the plurality of nodes of the first tree;
receiving an information request for information accessible from the at least one level of the tree-based datastore; and
retrieving the information from the at least one level of the tree-based datastore. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32)
-
-
33. A method for accessing information from a tree-based datastore, the method comprising:
-
in response to receiving a request for information from a datastore, the information request comprising at least one constraint, the datastore comprising at least one level of a tree-based datastore, the at least one level of the tree-based datastore comprising a first tree comprising a first root and at least one node of a plurality of nodes, a second tree comprising a second root and the at least one node of the first tree and at least a third tree comprising a third root and at least one of the plurality of nodes of the first tree, retrieving a list of nodes associated with the third root, each node in the list of nodes comprising a first portion and a second portion, wherein the third root comprises the at least one constraint; and
following the branch of each node in the first tree to the at least one node of the second tree. - View Dependent Claims (34)
-
-
35. A computer-readable medium comprising computer-executable instructions for generating an interlocking tree database, including instructions for:
-
in response to receiving data to be added to the tree-based datastore, creating a new node in the tree-based datastore for storing information associated with the received data;
creating links from the new node to a first node comprising a first portion of the new node and a second node comprising a second portion of the new node;
adding a link back to the new node to a first list of pointers of the first node; and
adding a link back to the new node to a second list of pointers of the second node.
-
- 36. A structure comprising nodes and links between said nodes, said nodes having a plurality of data fields, at least two of said plurality of data fields containing a pointer, one of said at least two pointers being a Case pointer and the other of said at least two pointers being a Result pointer and at least one node having at least an additional pointer to a list of pointers, one of said additional pointers to said list of pointers being to an asCase list in instances where said node has associated asCase list and another being to asResult list in instances where said node has associated an asResult list, and wherein said nodes include root nodes of which there are at least one primary root node and at least one elemental root node and wherein said nodes may include other root nodes, said nodes further including at least one end of thought node, at least one subcomponent node, and at least one end product node, and wherein said asResult links point between a root node and any other node, and wherein said asCase links point between at least one primary root node and at least one end product node include in a path therebetween containing at least one subcomponent node and wherein said asResult links point between a root or end product node and a subcomponent node or end product node on said path therebetween, and wherein said elemental nodes also have a field having a value.
Specification