CM-tree: A dynamic clustered index for similarity search in metric databases

Lior Aronovich*, Israel Spiegler

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

23 Scopus citations


Repositories of unstructured data types, such as free text, images, audio and video, have been recently emerging in various fields. A general searching approach for such data types is that of similarity search, where the search is for similar objects and similarity is modeled by a metric distance function. In this article we propose a new dynamic paged and balanced access method for similarity search in metric data sets, named CM-tree (Clustered Metric tree). It fully supports dynamic capabilities of insertions and deletions both of single objects and in bulk. Distinctive from other methods, it is especially designed to achieve a structure of tight and low overlapping clusters via its primary construction algorithms (instead of post-processing), yielding significantly improved performance. Several new methods are introduced to achieve this: a strategy for selecting representative objects of nodes, clustering based node split algorithm and criteria for triggering a node split, and an improved sub-tree pruning method used during search. To facilitate these methods the pairwise distances between the objects of a node are maintained within each node. Results from an extensive experimental study show that the CM-tree outperforms the M-tree and the Slim-tree, improving search performance by up to 312% for I/O costs and 303% for CPU costs.

Original languageEnglish
Pages (from-to)919-946
Number of pages28
JournalData and Knowledge Engineering
Issue number3
StatePublished - Dec 2007


  • Clustering methods
  • Database indexing
  • Metric access methods
  • Metric spaces
  • Similarity search


Dive into the research topics of 'CM-tree: A dynamic clustered index for similarity search in metric databases'. Together they form a unique fingerprint.

Cite this