Blog

La nostra raccolta di articoli e approfondimenti tecnici

Video

Una raccolta di video dai nostri eventi, webinar e molto altro

Use case

Una raccolta dei nostri Casi di successo

A seguito delle riduzioni nei costi delle tecnologie di sequencing degli ultimi dieci anni, la disponibilità di informazioni genetiche e genomiche è aumentata enormemente; Nonostante questo, gran parte delle informazioni disponibili è distribuita su molteplici risorse, in quadro estremamente confuso e frammentario. Ne consegue che dettagli relativi a uno stesso gene presentino spesso differenti identificatori, formati e informazioni. Questo scenario di dati frammentati rende particolarmente frustranti e impegnative le attività di creazione e mantenimento delle pipeline bioinformatiche.

Il gruppo di ricerca di Biologia Computazionale di Andrew Su si occupa della risoluzione di problemi legati alla presenza di grandi quantità di dati frammentati.

Chunlei Wu ha coordinato le attività di realizzazione di un servizio di annotazione di dati genetici di semplice utilizzo, con l’obiettivo di semplificare le attività di analisi dei dati dei ricercatori.
Disponibile come servizio gratuito, questo sistema consente di ottenere informazioni aggiornate in un più “robusto” formato JSON.

La soluzione basata su Elasticsearch

MyGene.info è stato il primo servizio di annotazione di informazioni genetiche disponibile. Durante le fasi di realizzazione sono state affrontate diverse problematiche:

  • Aggregazione di dati relativi a 13 milioni di Geni da 7 database.
  • Il numero di dati da ciascuna sorgente era destinato ad aumentare progressivamente, rendendo necessario un supporto altamente scalabile.
  • Necessità di reperire le informazioni rapidamente, evitando perdite di performance all’aumentare dei dati.

Alla luce di questi vincoli, è stato quindi scelto di impiegare la tecnologia Elastic come strumento di indicizzazione. Il passaggio dal vecchio engine CouchDB a Elasticsearch non ha rappresentato particolari problematiche. Il gruppo di ricerca aveva inoltre precedentemente utilizzato una delle prime versioni di Elasticsearch (v0.5.x) per altre attività.

Ottenuto un discreto successo nel servizio MyGene.info, è stato deciso di realizzare MyVariant.info seguendo esattamente lo stesso principio. Il dataset di Variazioni Genetiche rappresenta un insieme di dati ancora più frammentato rispetto al precedente. Attualmente MyVariant.info conta più di 334 milioni di varianti genetiche uniche distribuite su 14 database.

Utilizzando Elasticsearch in questo servizio, gli utenti sono in grado di cercare da uno a migliaia di oggetti JSON utilizzando query semplici e flessibili. L’utilizzo di filtri permette inoltre di finalizzare e restringere la ricerca secondo i parametri desiderati.

Uno degli aspetti più importanti rimane comunque di sicuro la rapidità di elaborazione, che permette ai ricercatori di ottenere risposte in tempi particolarmente rapidi.

Stando ai rapporti pubblicati su Genome Biology, MyGene.info è in grado di gestire il traffico di più di 5000 utenti simultaneamente, per circa 10000 richieste al minuto. Più del 95% degli utenti attivi è in grado di ottenere i dati processati in meno di 30 ms. MyGene e MyVariant ricevono richieste su base mensile rispettivamente da 4000 e 1500 IP unici.

L’utilizzo di Kibana

Il gruppo di ricerca utilizzava precedentemente BioGPS.org, una risorsa user-friendly basata su CouchDB. Una volta effettuata la migrazione per utilizzare MyGene.info è stato necessario trovare un modo per distinguere il traffico da BioGPS distribuito sui vari Client (Python, R, ecc.). È stato di conseguenza introdotto Kibana per agevolare la visualizzazione delle sorgenti e dei volumi di traffico  delle due applicazioni.

Qualche numero..

MyGene.info è attualmente costituito da 10 shard distribuite su 2 nodi Web, 3 nodi Master, e 3 Nodi dati. Per effettuare uno scaling efficiente nel passaggio dai 13 Milioni di MyGene ai 334 di MyVariant è stato necessario aumentare il numero di shard a 20 su 3 Nodi web, e aumentare i Nodi dati da 3 a 5.

Applicazioni future

MyGene e MyVariant rappresentano una soluzione a solo due dei diversi casi di data fragmentation. Sulla base di questo sviluppo e sui buoni risultati ottenuti dal team, è forte la speranza di poter utilizzare questo approccio anche per altre situazioni, a supporto dell’intera comunità della ricerca.

Per ulteriori informazioni su MyGene e MyVariant è possibile scaricare il paper ufficiale pubblicato su Genome Biology

Fonte: Elastic blog