4.0 Article

External memory BWT and LCP computation for sequence collections with applications

Journal

ALGORITHMS FOR MOLECULAR BIOLOGY
Volume 14, Issue -, Pages -

Publisher

BMC
DOI: 10.1186/s13015-019-0140-0

Keywords

Burrows-Wheeler Transform; Longest common prefix array; Maximal repeats; All pairs suffix-prefix overlaps; Succinct de Bruijn graph; External memory algorithms

Funding

  1. University of Eastern Piedmont project Behavioural Types for Dependability Analysis with Bayesian Networks
  2. Sao Paulo Research Foundation (FAPESP) [2017/09105-0, 2018/21509-2]
  3. PRIN grant [201534HNXC]
  4. INdAM-GNCS Project 2019 Innovative methods for the solution of medical and biological big data
  5. Brazilian agency Conselho Nacional de Desenvolvimento Cientifico e Tecnologico (CNPq)
  6. Brazilian agency Coordenacao de Aperfeicoamento de Pessoal de Nivel Superior (CAPES)

Ask authors/readers for more resources

BackgroundSequencing technologies produce larger and larger collections of biosequences that have to be stored in compressed indices supporting fast search operations. Many compressed indices are based on the Burrows-Wheeler Transform (BWT) and the longest common prefix (LCP) array. Because of the sheer size of the input it is important to build these data structures in external memory and time using in the best possible way the available RAM.ResultsWe propose a space-efficient algorithm to compute the BWT and LCP array for a collection of sequences in the external or semi-external memory setting. Our algorithm splits the input collection into subcollections sufficiently small that it can compute their BWT in RAM using an optimal linear time algorithm. Next, it merges the partial BWTs in external or semi-external memory and in the process it also computes the LCP values. Our algorithm can be modified to output two additional arrays that, combined with the BWT and LCP array, provide simple, scan-based, external memory algorithms for three well known problems in bioinformatics: the computation of maximal repeats, the all pairs suffix-prefix overlaps, and the construction of succinct de Bruijn graphs.ConclusionsWe prove that our algorithm performs O(nmaxlcp) sequential I/Os, where n is the total length of the collection and maxlcp is the maximum LCP value. The experimental results show that our algorithm is only slightly slower than the state of the art for short sequences but it is up to 40 times faster for longer sequences or when the available RAM is at least equal to the size of the input.

Authors

I am an author on this paper
Click your name to claim this paper and add it to your profile.

Reviews

Primary Rating

4.0
Not enough ratings

Secondary Ratings

Novelty
-
Significance
-
Scientific rigor
-
Rate this paper

Recommended

No Data Available
No Data Available