@@ -2,7 +2,7 @@ src/backend/access/spgist/README
2
2
3
3
SP-GiST is an abbreviation of space-partitioned GiST. It provides a
4
4
generalized infrastructure for implementing space-partitioned data
5
- structures, such as quadtrees, k-d trees, and suffix trees (tries). When
5
+ structures, such as quadtrees, k-d trees, and radix trees (tries). When
6
6
implemented in main memory, these structures are usually designed as a set of
7
7
dynamically-allocated nodes linked by pointers. This is not suitable for
8
8
direct storing on disk, since the chains of pointers can be rather long and
@@ -56,18 +56,18 @@ Inner tuple consists of:
56
56
57
57
optional prefix value - all successors must be consistent with it.
58
58
Example:
59
- suffix tree - prefix value is a common prefix string
59
+ radix tree - prefix value is a common prefix string
60
60
quad tree - centroid
61
61
k-d tree - one coordinate
62
62
63
63
list of nodes, where node is a (label, pointer) pair.
64
- Example of a label: a single character for suffix tree
64
+ Example of a label: a single character for radix tree
65
65
66
66
Leaf tuple consists of:
67
67
68
68
a leaf value
69
69
Example:
70
- suffix tree - the rest of string (postfix)
70
+ radix tree - the rest of string (postfix)
71
71
quad and k-d tree - the point itself
72
72
73
73
ItemPointer to the heap
@@ -122,7 +122,7 @@ space is as good as we can easily make it.
122
122
(2) Current implementation allows to do picksplit and insert a new leaf tuple
123
123
in one operation, if the new list of leaf tuples fits on one page. It's
124
124
always possible for trees with small nodes like quad tree or k-d tree, but
125
- suffix trees may require another picksplit.
125
+ radix trees may require another picksplit.
126
126
127
127
(3) Addition of node must keep size of inner tuple small enough to fit on a
128
128
page. After addition, inner tuple could become too large to be stored on
@@ -132,14 +132,14 @@ another page, we can't change the numbers of other tuples on the page, else
132
132
we'd make downlink pointers to them invalid. To prevent that, SP-GiST leaves
133
133
a "placeholder" tuple, which can be reused later whenever another tuple is
134
134
added to the page. See also Concurrency and Vacuum sections below. Right now
135
- only suffix trees could add a node to the tuple; quad trees and k-d trees
135
+ only radix trees could add a node to the tuple; quad trees and k-d trees
136
136
make all possible nodes at once in PickSplitFn() call.
137
137
138
138
(4) Prefix value could only partially match a new value, so the SplitTuple
139
139
action allows breaking the current tree branch into upper and lower sections.
140
140
Another way to say it is that we can split the current inner tuple into
141
141
"prefix" and "postfix" parts, where the prefix part is able to match the
142
- incoming new value. Consider example of insertion into a suffix tree. We use
142
+ incoming new value. Consider example of insertion into a radix tree. We use
143
143
the following notation, where tuple's id is just for discussion (no such id
144
144
is actually stored):
145
145
0 commit comments