FMtree: a fast locating algorithm of FM-indexes for genomic data
Abstract Motivation As a fundamental task in bioinformatics, searching for massive short patterns over a long text has been accelerated by various compressed full-text indexes. These indexes are able to provide similar searching functionalities to classical indexes, e.g. suffix trees and suffix arra...
Saved in:
| Published in | Bioinformatics Vol. 34; no. 3; pp. 416 - 424 |
|---|---|
| Main Authors | , , |
| Format | Journal Article |
| Language | English |
| Published |
England
Oxford University Press
01.02.2018
|
| Subjects | |
| Online Access | Get full text |
| ISSN | 1367-4803 1367-4811 1460-2059 1367-4811 |
| DOI | 10.1093/bioinformatics/btx596 |
Cover
| Summary: | Abstract
Motivation
As a fundamental task in bioinformatics, searching for massive short patterns over a long text has been accelerated by various compressed full-text indexes. These indexes are able to provide similar searching functionalities to classical indexes, e.g. suffix trees and suffix arrays, while requiring less space. For genomic data, a well-known family of compressed full-text indexes, called FM-indexes, presents unmatched performance in practice. One major drawback of FM-indexes is that their locating operations, which report all occurrence positions of patterns in a given text, are not efficient, especially for the patterns with many occurrences.
Results
In this paper, we introduce a novel locating algorithm, FMtree, to fast retrieve all occurrence positions of any pattern via FM-indexes. When searching for a pattern over a given text, FMtree organizes the search space of the locating operation into a conceptual multiway tree. As a result, multiple occurrence positions of this pattern can be retrieved simultaneously by traversing the multiway tree. Compared with existing locating algorithms, our tree-based algorithm reduces large numbers of redundant operations and presents better data locality. Experimental results show that FMtree is usually one order of magnitude faster than the state-of-the-art algorithms, and still memory-efficient.
Availability and implementation
FMtree is freely available at https://github.com/chhylp123/FMtree.
Supplementary information
Supplementary data are available at Bioinformatics online. |
|---|---|
| Bibliography: | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 23 |
| ISSN: | 1367-4803 1367-4811 1460-2059 1367-4811 |
| DOI: | 10.1093/bioinformatics/btx596 |