O
- the type of DatabaseObject to be stored in the metrical indexD
- the type of Distance used in the metrical indexN
- the type of MetricalNode used in the metrical indexE
- the type of MetricalEntry used in the metrical indexS
- the type of Settings used.public abstract class AbstractMkTreeUnified<O,D extends NumberDistance<D,?>,N extends AbstractMTreeNode<O,D,N,E>,E extends MTreeEntry,S extends MkTreeSettings<O,D,N,E>> extends AbstractMkTree<O,D,N,E,S>
AbstractMTree.Statistics
knnq
EXTRA_INTEGRITY_CHECKS, settings, statistics
dirCapacity, dirMinimum, initialized, leafCapacity, leafMinimum
Constructor and Description |
---|
AbstractMkTreeUnified(Relation<O> relation,
PageFile<N> pagefile,
S settings)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected TreeIndexHeader |
createHeader()
Creates a header for this index structure which is an instance of
TreeIndexHeader . |
int |
getKmax()
Get the value of k_max.
|
void |
insertAll(List<E> entries)
Bulk insert.
|
protected abstract void |
kNNdistanceAdjustment(E entry,
Map<DBID,KNNList<D>> knnLists)
Performs a distance adjustment in the subtree of the specified root entry.
|
batchNN, distance, reverseKNNQuery
createEmptyRoot, createNewDirectoryEntry, distance, getDistanceFactory, getDistanceFunction, getHeight, getLeaves, getSortedEntries, insert, logStatistics, toString
createNewDirectoryNode, createNewLeafNode, createRootEntry, deleteNode, getFile, getLogger, getNode, getNode, getPageID, getPageSize, getRoot, getRootEntry, getRootID, getRootPath, initialize, initialize, initializeCapacities, initializeFromFile, isRoot, postDelete, preInsert, writeNode
protected TreeIndexHeader createHeader()
IndexTree
TreeIndexHeader
. Subclasses may need to overwrite this method if
they need a more specialized header.createHeader
in class IndexTree<N extends AbstractMTreeNode<O,D,N,E>,E extends MTreeEntry>
MkTreeHeader
public void insertAll(List<E> entries)
AbstractMTree
insertAll
in class AbstractMTree<O,D extends NumberDistance<D,?>,N extends AbstractMTreeNode<O,D,N,E>,E extends MTreeEntry,S extends MkTreeSettings<O,D,N,E>>
entries
- Entries to insertprotected abstract void kNNdistanceAdjustment(E entry, Map<DBID,KNNList<D>> knnLists)
entry
- the root entry of the current subtreeknnLists
- a map of knn lists for each leaf entrypublic int getKmax()