I'm about to start a bioinformatics research project but I haven't any biological background.
I know my project is in regards to a performance analysis of DNA sequencing and searching "weapons" like Hadoop, Apache Spark and Apache Flink - so I've spent the last couple of days trying to put together the "DNA picture" before I get started with the programming stuff.
My understanding of the situation is that:
- Next-generation sequencing (NGS) techniques are used to efficiently provide reads of DNA (conversions from real, physical DNA to something that can be read and analysed), however today's most practical methods provide reads that are short and in disorder.
- Reads tell us which nucleotides, labeled one of ACGT, occur in sequence. Different nucleotides or values to take their place may exist, like N or X. Reads could range from 50 to 1000s of nucleotides in length depending on the method of sequencing.
- You can find historical raw read data in various places online, including the Sequence Read Archive (SRA). The same website contains lots of other DNA/bio related information. Reads are commonly stored in .fasta files which follow a simple and practical standard. A single file could contain a very small or very large read or sequence.
- Reads are then provided to DNA alignment programs like bowtie which will place them back in the correct order. The algorithms could use a template sequence to align them, or run "de novo" (without a template). The result of these alignments have also been indexed online however for the purpose of my studies I'll probably be aligning them myself.
- Once aligned (or maybe during alignment), nucleotide differences from a template sequence can be programmatically found or searched for, with crossbow for instance. Note that many other tasks can too be performed - not only this search. If a particular substitution occurs in more than 1% of a what I think is called a "genome's" population, then it is called a Single-nucleotide Polymorphism (SNP or snip). Most SNPs have two alleles, or two different recorded nucleotides (like either G or C), but more than two is possible.
- SNPs can be studied and mapped to various conditions or characteristics. A particular nucleotide could be responsible for part of one's emotional tendencies, reaction to particular medicines, or maybe anything, so a particular SNP could make a big difference.
What am I missing/what did I get wrong?