Tratando de comprender el panorama general detrás de la secuenciación, alineación y búsqueda de ADN

Estoy a punto de comenzar un proyecto de investigación en bioinformática, pero no tengo antecedentes biológicos.

Sé que mi proyecto se trata de un análisis de rendimiento de la secuenciación del ADN y la búsqueda de "armas" como Hadoop, Apache Spark y Apache Flink, así que pasé los últimos días tratando de armar la "imagen del ADN" antes de obtener Comenzó con las cosas de programación.

Mi comprensión de la situación es que:

  1. Las técnicas de secuenciación de próxima generación (NGS) se utilizan para proporcionar lecturas de ADN de manera eficiente (conversiones de ADN físico real a algo que se puede leer y analizar), sin embargo, los métodos más prácticos de hoy en día proporcionan lecturas cortas y desordenadas.
  2. Las lecturas nos dicen qué nucleótidos, etiquetados como uno de ACGT, ocurren en secuencia. Pueden existir diferentes nucleótidos o valores para tomar su lugar, como N o X. Las lecturas pueden oscilar entre 50 y 1000 de nucleótidos de longitud, según el método de secuenciación.
  3. Puede encontrar datos históricos de lectura sin procesar en varios lugares en línea, incluido el archivo de lectura de secuencia (SRA). El mismo sitio web contiene mucha otra información relacionada con el ADN y la biología. Las lecturas se almacenan comúnmente en archivos .fasta que siguen un estándar simple y práctico. Un solo archivo puede contener una lectura o secuencia muy pequeña o muy grande.
  4. Luego, se proporcionan lecturas a los programas de alineación de ADN, como Bowtie, que los colocará nuevamente en el orden correcto. Los algoritmos podrían usar una secuencia de plantilla para alinearlos, o ejecutarse "de novo" (sin plantilla). El resultado de estas alineaciones también se ha indexado en línea; sin embargo, para fines de mis estudios, probablemente los alinearé yo mismo.
  5. Una vez alineados (o tal vez durante el alineamiento), las diferencias de nucleótidos de una secuencia de plantilla se pueden encontrar o buscar mediante programación, por ejemplo, con ballesta. Tenga en cuenta que también se pueden realizar muchas otras tareas, no solo esta búsqueda. Si una sustitución particular ocurre en más del 1% de lo que creo que se llama una población de "genoma", entonces se llama polimorfismo de un solo nucleótido (SNP o snip). La mayoría de los SNP tienen dos alelos, o dos nucleótidos registrados diferentes (como G o C), pero es posible que haya más de dos.
  6. Los SNP se pueden estudiar y asignar a varias condiciones o características. Un nucleótido en particular podría ser responsable de parte de las tendencias emocionales, la reacción a medicamentos en particular, o tal vez cualquier cosa, por lo que un SNP en particular podría marcar una gran diferencia.

¿Qué me estoy perdiendo/en qué me equivoqué?

¿Encontró una aplicación ejemplar/representativa que destaque el uso de Spark o Flink (Hadoop MapReduce está muriendo AFAIK)?
@Phil Parece que Flink aún tiene que ganar una tracción significativa, pero Spark está en camino. Esto se puede observar como una tendencia aproximada en la tabla 1 de mi borrador de revisión de la literatura ( bilalakil.github.io/mphil/assets/literature-review.pdf ) - allí también puede ver que Hadoop aún no está muriendo. Nuevamente, esa es una forma de medición muy aproximada, sin embargo, debería ser bastante indicativa de la tendencia. Todavía tengo que describir un uso tan explicativo/representativo de Spark hasta ahora.

Respuestas (2)

Aquí hay un resumen rápido de algunos errores en su buen análisis:

No muchas aplicaciones de bioinformática utilizan Hadoop, Apache Spark o Apache Flink. De hecho, nunca he oído hablar de las herramientas Apache Spark y Flink, y solo he visto a 2 personas usar Hadoop para procesar archivos de alineación.

  1. Las lecturas no son ADN físico real "convertido". Son representaciones de las señales de las moléculas que componen el ADN, tal como las leen las máquinas de secuenciación.
  2. A, T, C, G son moléculas que forman el ADN. N se refiere a "cualquiera de A,T,C,G", que se traduce como desconocido o ambiguo.
  3. Las lecturas se almacenan en archivos FASTQ. Las secuencias se almacenan en archivos FASTA. Las lecturas incluyen secuencia e información de calidad, por lo tanto, FASTA+QUAL=FASTQ
  4. Reordenar es una forma cruda pero aproximada de pensar en ello. Recuerde, este proceso implica superposiciones, mientras que el reordenamiento rara vez lo hace. Las superposiciones son cruciales para el proceso de montaje/alineación. Tiene razón sobre la alineación con la secuencia de referencia y las piezas de ensamblaje de novo.
  5. Esto es correcto, aunque se aplican modelos estadísticos para tener en cuenta las diferencias que no son necesariamente variantes significativas (como los errores de secuenciación)
  6. Sí, las variantes, que incluyen SNP, se pueden correlacionar con diferencias en el fenotipo (rasgos). Las tendencias emocionales son algo demasiado avanzado, piensa en algo más básico como la diabetes o el color de los ojos.

La imagen que tiene aquí es de una canalización de análisis NGS normal. Esto implica alineación/ensamblaje, llamada de variantes y análisis biológico con hipótesis relevantes. El ensamblaje/alineación es la parte más costosa desde el punto de vista computacional, y utilizamos clústeres de HPC o servicios en la nube escalables como AWS para lograrlo.

Definitivamente, debe hablar con un biólogo que tenga algo de experiencia computacional para obtener una idea de la razón detrás de nuestros análisis. Una vez que comprenda las motivaciones, su contribución será más relevante y útil para la comunidad.

Tenga en cuenta mi ingenuidad, pero si A, G, C y T son moléculas, ¿qué es un nucleótido?
@BilalAkil Los nucleótidos son un tipo de molécula. A, G, C y T son moléculas y nucleótidos.
Un nucleótido es un fosfato, azúcar pentosa y una base nitrogenada en el sentido más general. Los A/C/G/T se derivan del tipo de base nitrogenada adherida al azúcar-fosfato.
@BilalAkil Deseaba evitar la mayor cantidad posible de biología, de ahí el término "molécula". un nucleótido es una molécula biológica con un azúcar (ribosa/desoxirribosa) y una base nitrogenada (adenosina, guanosina, citosina, timidina) unida a ella con un enlace fosfato. La primera parte determina si el nucleótido es parte del ADN o del ARN, y la segunda determina la base. El ADN es una macromolécula, una molécula súper grande construida a partir de moléculas constituyentes más pequeñas :)

La respuesta de RAM es muy buena, solo agregaré el lado computacional, las lecturas cortas son propensas a errores. Eso es importante tenerlo en cuenta al alinear o ensamblar. Las lecturas en sí mismas pueden ser inexactas, lo que detectamos al tener múltiples lecturas que se superponen mucho; asumimos que las discrepancias perdidas vistas en una sola lectura en una posición son errores. Además, si un genoma de referencia no está lo suficientemente cerca de la muestra, las lecturas pueden estar desalineadas.

Los genomas de muchos organismos también tienen elementos repetitivos que pueden dificultar la alineación correcta de las lecturas y dificultar la creación de un genoma de referencia preciso.

Y tenga en cuenta que puede haber muchas más discrepancias además de las sustituciones de un solo nucleótido, aunque cualquier cosa más involucrada puede ser difícil de detectar solo con datos de lectura corta. Y la mayoría de los rasgos que son realmente interesantes de estudiar son poligénicos, por lo que no es exactamente fácil decir que una diferencia en el ADN provoca una diferencia detectable en el fenotipo.

Gracias. No quise profundizar en las complejidades que enfrentamos. Las variantes patogénicas de un solo nucleótido en enfermedades de un solo gen son el ejemplo más fácil de mutaciones con un efecto fenotípico, ¿no es así? Nota para OP: 1. Patógeno, 2. nucleótido único, 3. gen único 4. enfermedades, 5. efecto fenotípico son los puntos de variabilidad, cada uno con al menos otras 4 entidades que pueden tomar su lugar: la combinatoria le da la categorías posibles. ¡Imagínese la investigación cuando la mayor parte de lo que hacemos lo intentamos y asignamos estas categorías a miles de variantes!