Upload
nieves-araya-blanco
View
215
Download
0
Tags:
Embed Size (px)
Citation preview
Era7 Information Technologies SLU
Atlantic AcceleratorEra7
March 2012
INTERCROSSING un Proyecto Marie Curie Initial Training Network (ITN) financiado por la UE
II Reunión de la Plataforma Tecnológica para la Innovación en la Salud – Toledo 21 de Noviembre de 2013
www.era7bioinformatics.com
INnovativeTrainingEnvironment forResearchersCombining theResourcesOfStatisticalScience,InformaticsN&Genetics
www.era7bioinformatics.com
El proyecto INTERCROSSING:
• 13 ESR (Early Stage Researchers)
• Pares de socios Universidad – SME
• USA, Russia 2, France 2, Croatia, Germany 3, Pakistan, UK, Greece, India
www.era7bioinformatics.com
¿ Por qué estamos en este proyecto ?
• Porque somos expertos en Cloud Computing (AWS)
• Porque lo usamos para manejar y analizar Big Data Biológico
www.era7bioinformatics.com
¿ Por qué estamos en este reunión ?
• Porque nuestros desarrollos en el marco del proyecto podrían ser de utilidad en otros proyectos y
• Son de Open Source
www.era7bioinformatics.com
Un poco de contexto
www.era7bioinformatics.com
Que es ?
www.era7bioinformatics.com
Era7 es una EIBT :
Empresa Innovadora de Base Tecnológica
Somos una PYME: 13 personas
www.era7bioinformatics.com
Un modelo de negocio innovador:
1. Investigación
2. Cloud Computing
3. Open Source
4. Especialización en biomedicina
www.era7bioinformatics.com
1. Investigación
• Grupo de Investigación propio• Publicaciones• Congresos Científicos• Colaboraciones Científicas• Proyectos: CDTI, IDEA, UE, …
www.era7bioinformatics.com
2. Cloud Computing
• AWS (desde 2007)
• Ninguna Infraestructura propia
• Mucho I+D para manejar AWS
www.era7bioinformatics.com
3. Open Source
• Desarrollos propios
• AGPLv3
• Sin “Dual Licensing”
• Vendemos servicio
www.era7bioinformatics.com
4. Especialización en biomedicina
• Solo ese mercado• Intentamos aportar conocimiento• Equipo multidisciplinar
• Matemáticos• Ingenieros• Bioquímicos• Médicos
www.era7bioinformatics.com
Un modelo de negocio innovador:
Que nos ha permitido ir desde Granada a
Boston pasando por Madrid (literalmente)
www.era7bioinformatics.com
Innovando en Tecnologías
• NoSQL Graph Databases (Neo4J, Titan, Blueprints)
• Programación en Scala
• Diseño de arquitecturas Cloud
www.era7bioinformatics.com
Bio4J
Plataforma Bioinformática basada sobre una Graph database, integrando Uniprot, Refseq, Gene Ontology, NCBI Taxonomy y Enzyme DB
Big Data: 1.216.993.547 relationships 190.625.351 nodes
584.436.429 properties
www.era7bioinformatics.com
Clientes:
• Hospitales
• Empresas Biotech y Gran Farma
• CSIC y Universidad
www.era7bioinformatics.com
Hospitales y entornos sanitarios:
• Desarrollos a medida
• DoPlanning: herramienta colaborativa• SaaS o In house• Open Source• Integración
• Servicios de genómica
www.era7bioinformatics.com
El proyecto INTERCROSSING:
• Nuevos ensambladores de genomas en Cloud con nuevas aproximaciones matemáticas
• Nuevos sistemas de “mapeo” de secuencias en Cloud
• Nuevas plataformas de Big Data Bioinformático
www.era7bioinformatics.com
Para ello , primero, hacemos herramientas generales de uso de AWS:
• Níspero
• Státika
www.era7bioinformatics.com
Dirigido por:Eduardo Pareja-Tobes
Evdokim Kovach
www.era7bioinformatics.com
Níspero:
Un componente para escalar en AWS tareas independientes, un bloque básico para implementar sistemas distribuidos
www.era7bioinformatics.com
Tareas en Níspero:
Una tarea es un conjunto de ficheros de entrada y salida (URLs de objetos de S3)
Instrucciones: una herramienta (o herramientas ) que pueden resolver una tarea. Las instruciones no son parte de Níspero.
www.era7bioinformatics.com
Principales componentes:
nisperoClient
nisperoFarm , un conjunto de instancias EC2 con nisperoClient
nisperoServer , sistema de monitorización y management
WebClient , interfaz web para nisperoClient
www.era7bioinformatics.com
nisperoClient es una aplicación que hace el setup del entorno para las instrucciones:
Establece conexión con AWS
Recibe las tareas de entrada de una input queue
Lanza las instrucciones
Publica los resultados de las instrucciones
www.era7bioinformatics.com
Por cada tarea input nisperoServer lanza una nueva instancia que ejecuta un user-data script directamente. Estos scripts hacen lo siguiente:
Configuración inicial de una instancia
Descargar e instalar nisperoClient desde un bucket de S3
Lanzar nisperoClient
www.era7bioinformatics.com
Ciclo de vida de nisperoClient:
• Establecer conexion con AWS• Esperar un mensaje de la inputQueue• Parsear la descripción de la tarea que
viene en el mensaje recibido (JSON)• Correr las instrucciones de la tarea• Publicar los resultados en OutputTopic• Eliminar el mensaje de la inputQueue• Terminar la instancia (suicidarse)
www.era7bioinformatics.com
nisperoServer se encarga de monitorizar y manejar nispero
Puede ser lanzado desde cualquier máquina con conexión a Internet pero es mejor correrlo desde la misma región que nisperoFarm y otros recursos de AWS que usa nispero.
www.era7bioinformatics.com
www.era7bioinformatics.com
Statika
Alexey Alekhin
Dirigido por:Eduardo Pareja-Tobes
www.era7bioinformatics.com
Statika
El objetivo de statika es hacer algún trabajo real teniendo todas las dependencias bajo control en tiempo de compilación
www.era7bioinformatics.com
Statika
Librerias en Scala que usan tipos para el manejo de paquetes de software. Se trata de saber todo lo necesario acerca de las dependencias en tiempo de compilación
www.era7bioinformatics.com
Nispero y Statika….. …….la pareja perfecta !!
Con Statika configuramos las instancias de Níspero
www.era7bioinformatics.com
Que quiere decir esto en la práctica?
Un ejemplo, un proyecto de Metagenómica:
• Millones se secuencias (strings) que deben compararse (blast) con TODAS las secuencias conocidas.
• Statika dice como tener lista una máquina con Blast y todas aplicaciones necesarias
• Níspero maneja la distribución y ejecución de hasta 1000 máquinas en nuestro caso.
www.era7bioinformatics.com
La ventaja de esto es que está abstraído:
Se puede usar en cualquier proceso paralelizable:
• Análisis de imágenes radiológicas• Análisis de analíticas de cada paciente• Análisis de text mining de cada fichero.• Etc….
www.era7bioinformatics.com
¿ Para que hacemos estas cosas tan raras ?
Porque al final hay que tener soluciones reales, cotidianas, en el mundo real:
• Proyectos de Bioinformática por supuesto • Escalado de nuestra herramienta colaborativa.
Optimización de procesos.• Porque sin innovación no somos competitivos.• (porque nos gusta)