Class MMRadSplit<E extends MTreeEntry,​N extends AbstractMTreeNode<?,​N,​E>>

  • Type Parameters:
    E - the type of MTreeEntry used in the M-Tree
    N - the type of AbstractMTreeNode used in the M-Tree
    All Implemented Interfaces:
    MTreeSplit<E,​N>

    @Reference(authors="P. Ciaccia, M. Patella, P. Zezula",
               title="M-tree: An Efficient Access Method for Similarity Search in Metric Spaces",
               booktitle="Proc. Int. Conf. Very Large Data Bases (VLDB\'97)",
               url="http://www.vldb.org/conf/1997/P426.PDF",
               bibkey="DBLP:conf/vldb/CiacciaPZ97")
    public class MMRadSplit<E extends MTreeEntry,​N extends AbstractMTreeNode<?,​N,​E>>
    extends AbstractMTreeSplit<E,​N>
    Encapsulates the required methods for a split of a node in an M-Tree. The routing objects are chosen according to the mMrad strategy.

    Reference:

    P. Ciaccia, M. Patella, P. Zezula
    M-tree: An Efficient Access Method for Similarity Search in Metric Spaces
    Proc. Int. Conf. Very Large Data Bases (VLDB'97)

    Since:
    0.2
    Author:
    Elke Achtert
    • Constructor Detail

      • MMRadSplit

        public MMRadSplit​(DistributionStrategy distributor)
        Constructor.
        Parameters:
        distributor - Distribution strategy
    • Method Detail

      • split

        public Assignments<E> split​(AbstractMTree<?,​N,​E,​?> tree,
                                    N node)
        Selects two objects of the specified node to be promoted and stored into the parent node. The mM-RAD strategy considers all possible pairs of objects and, after partitioning the set of entries, promotes the pair of objects for which the larger of the two covering radiuses is minimum.
        Parameters:
        tree - Tree to use
        node - the node to be split
        Returns:
        the assignments of this split