Lucene90PointsFormat
Lucene 9.0 point format, which encodes dimensional values in a block KD-tree structure for fast 1D range and N dimensional shape intersection filtering. See this paper for details.
Data is stored across three files
A .kdm file that records metadata about the fields, such as numbers of dimensions or numbers of bytes per dimension.
A .kdi file that stores inner nodes of the tree.
A .kdd file that stores leaf nodes, where most of the data lives.
See this wiki for detailed data structures of the three files.
Functions
Reads a segment. NOTE: by the time this call returns, it must hold open any files it will need to use; else, those files may be deleted. Additionally, required files may be deleted during the execution of this call before there is a chance to open them. Under these circumstances an IOException should be thrown by the implementation. IOExceptions are expected and will automatically cause a retry of the segment opening logic with the newly revised segments.
Writes a new segment