Indexing hierarchical data
First Claim
Patent Images
1. A computing system comprising:
- one or more memory storing processor-executable program code; and
one or more processor to execute the processor-executable program code in order to cause the computing system to;
generate an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer;
generate an order tree comprising a hierarchy of entries that is different from the hierarchy of nodes and the encoding, wherein each pointer of the encoding points to a respective one of the entries, and wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes; and
use the order tree to support queries on the hierarchy of the nodes;
wherein the processor is to execute the processor-executable program code in order to cause the computing system to;
determine an order relation between a first entry of the order tree and a second entry of the order tree based on a structure of the order tree; and
wherein determination of the order relation comprises;
determination of a number p1 where each digit of p1 corresponds to a position of each entry on a first path from the first entry to a root entry of the order tree, and a least significant digit of p1 corresponds to a position of the first entry;
determination of a number p2 where each digit of p2 corresponds to a position of each entry on a second path from the second entry to the root entry of the order tree, and a least significant digit of p2 corresponds to a position of the second entry; and
comparison of p1 and p2.
2 Assignments
0 Petitions
Accused Products
Abstract
A system includes generation of an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer, and generation of an order tree comprising a hierarchy of entries, where each pointer of the encoding points to a respective one of the entries, wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes.
42 Citations
15 Claims
-
1. A computing system comprising:
-
one or more memory storing processor-executable program code; and one or more processor to execute the processor-executable program code in order to cause the computing system to; generate an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer; generate an order tree comprising a hierarchy of entries that is different from the hierarchy of nodes and the encoding, wherein each pointer of the encoding points to a respective one of the entries, and wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes; and use the order tree to support queries on the hierarchy of the nodes; wherein the processor is to execute the processor-executable program code in order to cause the computing system to; determine an order relation between a first entry of the order tree and a second entry of the order tree based on a structure of the order tree; and wherein determination of the order relation comprises; determination of a number p1 where each digit of p1 corresponds to a position of each entry on a first path from the first entry to a root entry of the order tree, and a least significant digit of p1 corresponds to a position of the first entry; determination of a number p2 where each digit of p2 corresponds to a position of each entry on a second path from the second entry to the root entry of the order tree, and a least significant digit of p2 corresponds to a position of the second entry; and comparison of p1 and p2. - View Dependent Claims (2, 3, 4)
-
-
5. A non-transitory computer-readable medium storing program code, the program code executable by one or more processor of a computing system to cause the computing system to:
-
generate an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer; generate an order tree comprising a hierarchy of entries that is different from the hierarchy of nodes and the encoding, wherein each pointer of the encoding points to a respective one of the entries, and wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes; and use the order tree to support queries on the hierarchy of the nodes; the program code further executable by a processor of a computing system to cause the computing system to; determine an order relation between a first entry of the order tree and a second entry of the order tree based on a structure of the order tree; and wherein determination of the order relation comprises; determination of a number p1 where each digit of p1 corresponds to a position of each entry on a first path from the first entry to a root entry of the order tree, and a least significant digit of p1 corresponds to a position of the first entry; determination of a number p2 where each digit of p2 corresponds to a position of each entry on a second path from the second entry to the root entry of the order tree, and a least significant digit of p2 corresponds to a position of the second entry; and comparison of p1 and p2. - View Dependent Claims (6, 7, 8)
-
-
9. A computer-implemented method comprising:
-
generating an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer; generating an order tree comprising a hierarchy of entries that is different from the hierarchy of nodes and the encoding, wherein each pointer of the encoding points to a respective one of the entries, and wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes; and using the order tree to support queries on the hierarchy of the nodes; the method further comprising; determining an order relation between a first entry of the order tree and a second entry of the order tree based on a structure of the order tree; and wherein determining the order relation comprises; determining a number p1 where each digit of p1 corresponds to a position of each entry on a first path from the first entry to a root entry of the order tree, and a least significant digit of p1 corresponds to a position of the first entry; determining a number p2 where each digit of p2 corresponds to a position of each entry on a second path from the second entry to the root entry of the order tree, and a least significant digit of p2 corresponds to a position of the second entry; and comparing p1 and p2. - View Dependent Claims (10, 11, 12)
-
-
13. A computing system comprising:
-
a memory storing processor-executable program code; and a processor to execute the processor-executable program code in order to cause the computing system to; generate an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer; generate an order tree comprising a hierarchy of entries, where each pointer of the encoding points to a respective one of the entries, wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes; and determine an order relation between a first entry of the order tree and a second entry of the order tree based on a structure of the order tree; wherein determination of the order relation comprises; determination of a number p1 where each digit of p1 corresponds to a position of each entry on a first path from the first entry to a root entry of the order tree, and a least significant digit of p1 corresponds to a position of the first entry; determination of a number p2 where each digit of p2 corresponds to a position of each entry on a second path from the second entry to the root entry of the order tree, and a least significant digit of p2 corresponds to a position of the second entry; and comparison of p1 and p2.
-
-
14. A non-transitory computer-readable medium storing program code, the program code executable by a processor of a computing system to cause the computing system to:
-
generate an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer; generate an order tree comprising a hierarchy of entries, where each pointer of the encoding points to a respective one of the entries, wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes; and determine an order relation between a first entry of the order tree and a second entry of the order tree based on a structure of the order tree; wherein determination of the order relation comprises; determination of a number p1 where each digit of p1 corresponds to a position of each entry on a first path from the first entry to a root entry of the order tree, and a least significant digit of p1 corresponds to a position of the first entry; determination of a number p2 where each digit of p2 corresponds to a position of each entry on a second path from the second entry to the root entry of the order tree, and a least significant digit of p2 corresponds to a position of the second entry; and comparison of p1 and p2.
-
-
15. A computer-implemented method comprising:
-
generating an encoding for each of a hierarchy of nodes, each of the nodes associated with one or more attributes, and the encoding for each node including a first pointer and a second pointer; generating an order tree comprising a hierarchy of entries, where each pointer of the encoding points to a respective one of the entries, wherein the encoding and the order tree indicate a position of each node in the hierarchy of nodes; and determining an order relation between a first entry of the order tree and a second entry of the order tree based on a structure of the order tree; wherein determining the order relation comprises; determining a number p1 where each digit of p1 corresponds to a position of each entry on a first path from the first entry to a root entry of the order tree, and a least significant digit of p1 corresponds to a position of the first entry; determining a number p2 where each digit of p2 corresponds to a position of each entry on a second path from the second entry to the root entry of the order tree, and a least significant digit of p2 corresponds to a position of the second entry; and comparing p1 and p2.
-
Specification