Querying Large Read Collections in Main Memory: A Versatile data Structure

Nicolas Philippe 1 Mikael Salson 2 Thierry Lecroq 3 Martine Léonard 3 Thérèse Commes 4 Eric Rivals 1, *
* Corresponding author
1 MAB - Méthodes et Algorithmes pour la Bioinformatique
LIRMM - Laboratoire d'Informatique de Robotique et de Microélectronique de Montpellier
2 BONSAI - Bioinformatics and Sequence Analysis
LIFL - Laboratoire d'Informatique Fondamentale de Lille, Inria Lille - Nord Europe
Abstract : Background High Throughput Sequencing (HTS) is now heavily exploited for genome (re-) sequencing, metagenomics, epigenomics, and transcriptomics and requires different, but computer intensive bioinformatic analyses. When a reference genome is available, mapping reads on it is the first step of this analysis. Read mapping programs owe their efficiency to the use of involved genome indexing data structures, like the Burrows-Wheeler transform. Recent solutions index both the genome, and the k-mers of the reads using hash-tables to further increase efficiency and accuracy. In various contexts (e.g. assembly or transcriptome analysis), read processing requires to determine the sub-collection of reads that are related to a given sequence, which is done by searching for some k-mers in the reads. Currently, many developments have focused on genome indexing structures for read mapping, but the question of read indexing remains broadly unexplored. However, the increase in sequence throughput urges for new algorithmic solutions to query large read collections efficiently. Results Here, we present a solution, named Gk arrays, to index large collections of reads, an algorithm to build the structure, and procedures to query it. Once constructed, the index structure is kept in main memory and is repeatedly accessed to answer queries like "given a k-mer, get the reads containing this k-mer (once/at least once)". We compared our structure to other solutions that adapt uncompressed indexing structures designed for long texts and show that it processes queries fast, while requiring much less memory. Our structure can thus handle larger read collections. We provide examples where such queries are adapted to different types of read analysis (SNP detection, assembly, RNA-Seq). Conclusions Gk arrays constitute a versatile data structure that enables fast and more accurate read analysis in various contexts. The Gk arrays provide a flexible brick to design innovative programs that mine efficiently genomics, epigenomics, metagenomics, or transcriptomics reads. The Gk arrays library is available under Cecill (GPL compliant) license from http://www.atgc-montpellier.fr/ngs/ webcite.
Liste complète des métadonnées

Contributor : Nicolas Philippe <>
Submitted on : Monday, October 17, 2011 - 10:50:41 AM
Last modification on : Wednesday, January 20, 2016 - 2:58:29 PM



Nicolas Philippe, Mikael Salson, Thierry Lecroq, Martine Léonard, Thérèse Commes, et al.. Querying Large Read Collections in Main Memory: A Versatile data Structure. BMC Bioinformatics, BioMed Central, 2011, 12, pp.242-258. <http://www.biomedcentral.com/1471-2105/12/242>. <10.1186/1471-2105-12-242>. <lirmm-00632958>



Record views


Document downloads