JST

René Rahn, David Weese, and Knut Reinert

Abstract

Motivation: Next generation sequencing (NGS) has revolutionized biomedical research in the last decade and led to a continues stream of developments in bioinformatics addressing the need for fast and space efficient solutions for analyzing NGS data. Often researchers need to analyze a set of genomic sequences which stem from closely related species or are indeed individuals of the same species. Hence the analyzed sequences are very similar. For analyses where local changes in the examined sequence induce only local changes in the results it is obviously desirable to examine identical or similar regions not repeatedly.
Results: In this work we provide a datatype which exploits data parallelism inherent in a set of similar sequences by analyzing shared regions only once. In real-world experiments we show that algorithms which otherwise would scan each reference sequentially can be speeded up by a factor of 115.
Availability: The data structure and associated tools are publicly available at http://www.seqan.de/projects/jst and are part of SeqAn, the C++ template library for sequence analysis.

Main Features

  • Journaled String Tree data structure and traverser.
  • Generic Journaled String Tree finder.
  • Online-search functors: Naive, Horspool, Shift-And, Shift-Or, Myers’ Bitvector.
  • GDF converter to convert vcf files into our Genome Delta Format.

Version History

2014-08-18: v0.2

  • bug fixes

2014-04-11: v0.1

  • initial release

Demo Application

For now, we provide only a demo application used for performance measurements for download. Please have a look at the README file for usage instructions.

  • JST Data (v0.1) - An example gdf file of 1092 human chr1 sequences from the 1000 Genomes Project, the reference sequence and some pattern examples.
  • JST Bench (v0.2) - Linux x86 64 bit binaries of the JST benchmark tool built on Debian Wheezy.

Contact

For questions, comments, or suggestions feel free to contact René Rahn.

References

  1. Rahn, R., Weese D., & Reinert, K. (2014). Journaled String Tree – A scalable data structure for analyzing thousands of similar genomes on your laptop. Bioinformatics.
Last Update 20. August 2014