Cargando…
Querying large read collections in main memory: a versatile data structure
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...
Autores principales: | , , , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
BioMed Central
2011
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3163563/ https://www.ncbi.nlm.nih.gov/pubmed/21682852 http://dx.doi.org/10.1186/1471-2105-12-242 |
_version_ | 1782210962228510720 |
---|---|
author | Philippe, Nicolas Salson, Mikaël Lecroq, Thierry Léonard, Martine Commes, Thérèse Rivals, Eric |
author_facet | Philippe, Nicolas Salson, Mikaël Lecroq, Thierry Léonard, Martine Commes, Thérèse Rivals, Eric |
author_sort | Philippe, Nicolas |
collection | PubMed |
description | 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/. |
format | Online Article Text |
id | pubmed-3163563 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2011 |
publisher | BioMed Central |
record_format | MEDLINE/PubMed |
spelling | pubmed-31635632011-08-30 Querying large read collections in main memory: a versatile data structure Philippe, Nicolas Salson, Mikaël Lecroq, Thierry Léonard, Martine Commes, Thérèse Rivals, Eric BMC Bioinformatics Methodology Article 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/. BioMed Central 2011-06-17 /pmc/articles/PMC3163563/ /pubmed/21682852 http://dx.doi.org/10.1186/1471-2105-12-242 Text en Copyright ©2011 Philippe et al; licensee BioMed Central Ltd. http://creativecommons.org/licenses/by/2.0 This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. |
spellingShingle | Methodology Article Philippe, Nicolas Salson, Mikaël Lecroq, Thierry Léonard, Martine Commes, Thérèse Rivals, Eric Querying large read collections in main memory: a versatile data structure |
title | Querying large read collections in main memory: a versatile data structure |
title_full | Querying large read collections in main memory: a versatile data structure |
title_fullStr | Querying large read collections in main memory: a versatile data structure |
title_full_unstemmed | Querying large read collections in main memory: a versatile data structure |
title_short | Querying large read collections in main memory: a versatile data structure |
title_sort | querying large read collections in main memory: a versatile data structure |
topic | Methodology Article |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3163563/ https://www.ncbi.nlm.nih.gov/pubmed/21682852 http://dx.doi.org/10.1186/1471-2105-12-242 |
work_keys_str_mv | AT philippenicolas queryinglargereadcollectionsinmainmemoryaversatiledatastructure AT salsonmikael queryinglargereadcollectionsinmainmemoryaversatiledatastructure AT lecroqthierry queryinglargereadcollectionsinmainmemoryaversatiledatastructure AT leonardmartine queryinglargereadcollectionsinmainmemoryaversatiledatastructure AT commestherese queryinglargereadcollectionsinmainmemoryaversatiledatastructure AT rivalseric queryinglargereadcollectionsinmainmemoryaversatiledatastructure |