Blast Query Visualizer Demo by Jacob

En el trabajo he estado desarrollando varias herramientas para procesar datos en gran escala, al menos para mi es cierto, al inicio use PostgreSQL para almacenar mucha información, 8GB en registros aproximadamente, y plenamente confió en postgreSQL aunque primero hay que configurar postgreSQL para obtener un rendimiento optimo.

Entre varias herramientas de las cuales mas delante comentare, tiene sentido ahora comentar sobre Blast Query Visualizer Demo la cual es una aplicación web que al día de hoy sigo desarrollando. esta aplicación permite representar gráficamente la información que BLAST genera y con esto quiero decir que permite representar contigs con los hits asociados y hsps por cada hit, aunque platicando con varios compañeros de trabajo hay mucho trabajo por hacer, pero la parte sustancial que permite dibujar en una pagina web es estable.

Para darnos una idea les muestro primero una imagen:

Blast Query Visualizer Demo

En esta imagen pueden observar un contig(E09Contig125.1) de NR con 1 hit y 9 hsps y el color indica el score en bits muy al estilo del NCBI, aunque bueno esta pantalla realmente no esta terminada ni a un 40% hay cosas como la tabla de coordenadas que no debe aparecer ahi, esa informacion es para mi como desarrollador, la barra de escala no indica nada pero lo hara en algun momento
, por lo que los siguientes componentes estan en fase de pruebas:

  • El motor que dibuja hsps con un sustento de una base de datos MySql, PostgreSql, Sqlite y en un futuro XML crudo generado por BLAST, para ello necesito Linq a XML.
  • Las coordenadas de los hsps están a escala con base a 850 pixeles. Maggy y su servidor desarrollamos una formula de conversión de coordenadas BLAST a coordenadas en Html-Pixel, esto es :
  • hsp_queryfrom, hsp_queryto, hsp_hitfrom,hsp_hitto

El Desarrollo de este chisme:

  • El motor de generación gráfica de hsps lo estoy desarrollando con DojoToolkit.
  • Usa un Servicio Web escrito en C# en Mono como “capa de negocio” que interactua con la capa de datos para extraer la información de la base de datos.
  • Un poco de trabajo con objetos en Javascript (offobjects)
  • Parser en Javascript para la clasificación de los datos al vuelo provenientes en formato SOAP del servicio web , esto quiere decir Javascript+ XML – asincronico (el archifamoso AJAX).
  • Algunos puntos de comunicación entre Javascript y C# vía ASP.NET en Mono.

Algo interesante aparte de lo que estoy comentando es que debido a la estructura de los módulos se puede fácilmente quitar el servicio web en c# y reemplazarlo por uno escrito en Perl o algún otro lenguaje que para ustedes sea lo mejor.

Esta herramienta es la que mas tiempo me esta consumiendo pero con buenos resultados, por ahora estoy trabajando con hsps sobrelapados y como generar un despliegue vertical de los mismos dinamicamente. la idea principal sera dibujar toda la información completa y creo que la gente de biología o bioinformatica comprenderá que es toda la información. al día de hoy yo no me considero bioinformatico, solo un buen paria que intenta hacer herramientas de software para obtener resultados mas eficientemente aunque no tenga la mas mínima puta idea de la biología molecular.

About Jacob

I'm a Bioinformatics Developer, Software Engineer, Open Source Developer, Mobile Developer, Unix/Linux SysAdmin, HPC Sysadmin

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s