Package org.apache.lucene.util.bkd
Block KD-tree, implementing the generic spatial data structure described in this paper.
-
Interface Summary Interface Description PointReader One pass iterator through all points previously written with aPointWriter
, abstracting away whether points are read from (offline) disk or simple arrays in heap.PointValue Represents a dimensional point value written in the BKD tree.PointWriter Appends many points, and then at the end provides aPointReader
to iterate those points. -
Class Summary Class Description BKDConfig Basic parameters for indexing points on the BKD tree.BKDRadixSelector Offline Radix selector for BKD tree.BKDRadixSelector.PathSlice Sliced reference to points in an PointWriter.BKDReader Handles intersection of an multi-dimensional shape in byte[] space with a block KD-tree previously written withBKDWriter
.BKDReader.BKDReaderDocIDSetIterator ReusableDocIdSetIterator
to handle low cardinality leaves.BKDReader.IntersectState Used to track all state for a single call toBKDReader.intersect(org.apache.lucene.index.PointValues.IntersectVisitor)
.BKDWriter Recursively builds a block KD-tree to assign all incoming points in N-dim space to smaller and smaller N-dim rectangles (cells) until the number of points in a given rectangle is <=config.maxPointsInLeafNode
.HeapPointReader Utility class to read buffered points from in-heap arrays.HeapPointWriter Utility class to write new points into in-heap arrays.MutablePointsReaderUtils Utility APIs for sorting and partitioning buffered points.OfflinePointReader Reads points from disk in a fixed-with format, previously written withOfflinePointWriter
.OfflinePointWriter Writes points to disk in a fixed-with format.