Questa guida aiuta gli utenti a preparare dati genomici, clinici, di mutazione, di espressione e di imaging per un'analisi su larga scala e a eseguire query interattive su un data lake. Include l'automazione dell'infrastructure as code (IaC), l'integrazione continua e la distribuzione continua (CI/CD) per un'iterazione rapida, una pipeline di acquisizione per archiviare e trasformare i dati, notebook e pannelli di controllo per l'analisi interattiva. Dimostriamo anche come i dati di varianti e annotazioni di genomica vengono archiviati e interrogati utilizzando i notebook AWS HealthOmics, Amazon Athena e Amazon SageMaker. Questa guida è stata realizzata in collaborazione con Bioteam.
Diagramma dell'architettura
-
Architettura
-
Integrazione e distribuzione continue
-
Architettura
-
Fase 1
Importa, formatta e cataloga dati dal programma The Cancer Genome Atlas (TCGA). I dati grezzi sono estratti dal Registro di dati aperti su AWS (RODA) attraverso l'API TCGA. I dati vengono trasformati attraverso un processo di estrazione, trasformazione e caricamento (ETL) AWS Glue e catalogati da un crawler AWS Glue. Ciò rende i dati disponibili per le query in Athena.Fase 2
I dati provenienti dal The Cancer Imaging Atlas (TCIA) vengono importati, formattati e catalogati. I dati grezzi vengono estratti da RODA tramite l'API TCIA. I dati vengono trasformati attraverso un processo ETL di AWS Glue e catalogati da un crawler AWS Glue. Le posizioni delle immagini possono essere interrogate e visualizzate tramite NotebookSageMaker.
Fase 3
I dati VCF dal progetto One Thousand Genomes, un VCF campione, e un VCF di annotazione ClinVar vengono acquisiti negli archivi di varianti e annotazioni di Amazon Omics e sono resi disponibili come tabelle in Lake Formation.
Fase 4
I ricercatori analizzano i dati multi-modali tramite un'interfaccia visiva in QuickSight. I dati vengono memorizzati nella cache su un database SPICE (Super-fast, Parallel, In-memory Calculation Engine), ottimizzando le prestazioni delle query.
Fase 5
I data scientist analizzano i dati tramite i codici utilizzando i notebook Jupyter forniti negli ambienti notebook di SageMaker.
-
Integrazione e distribuzione continue
-
Fase 1
Crea un progetto AWS CodeBuild contenente lo script setup.sh. Questo script crea i restanti stack AWS CloudFormation, i repository di codice e il codice.Fase 2
Lo stack della zona di destinazione (zona) crea il repository di pipe di AWS CodeCommit. Una volta che la configurazione dello stack della zona di destinazione (zona) è completa, lo script setup.sh invia il codice sorgente al repository di pipe di CodeCommit.Fase 3
Lo stack della pipeline di implementazione (pipe) crea il repository di codice di CodeCommit, un evento Amazon CloudWatch e la pipeline di codice di AWS CodePipeline. Una volta che la configurazione dello stack della pipeline di implementazione (pipe) è completa, lo script setup.sh invia il codice sorgente al repository di codice CodeCommit .
Fase 4
La pipeline CodePipeline (codice) implementa gli stack CloudFormation della base di codice (genomica e diagnostica per immagini). Una volta che la configurazione delle pipeline di CodePipeline è completa, le risorse implementate nell'account includeranno i bucket Amazon Simple Storage Service (Amazon S3) per l'archiviazione di log di accesso agli oggetti, artefatti di compilazione e dati nel data lake, repository CodeCommit per codice sorgente, un progetto CodeBuild per la costruzione di artefatti di codice, una pipeline CodePipeline per automatizzare la creazione e l'implementazione d risorse, processi AWS Glue di esempio, crawler e un catalogo dati, nonché un'istanza notebook Jupyter di Amazon SageMaker.Sono forniti un archivio di riferimenti, un archivio di varianti e un archivio di annotazioni di Amazon Omics e un file di chiamata alle varianti VCF (Variant Call File) di esempio, un VCF di 1000 genomi del sottoinsieme e un VCF di annotazioni ClinVar sono importati per l'analisi. Grazie a AWS Lake Formation, un amministratore di data lake può abilitare l'accesso di dati negli archivi di varianti e annotazioni Omics tramite Amazon Athena e SageMaker. Un archivio di riferimenti, un archivio di varianti e un archivio di annotazioni di Amazon Omics sono forniti per archiviare dati di varianti e annotazioni disponibili pubblicamente e renderli disponibili per query e analisi.
Fase 5
Lo stack della diagnostica per immagini crea un collegamento ipertestuale a un quick start CloudFormation, che può essere avviato per l'implementazione di stack Amazon QuickSight. Lo stack QuickSight crea le risorse Identity and Access Management (IAM) e QuickSight necessarie per l'esplorazione interattiva dei set di dati multi-omici.
Principi di Well-Architected
Il framework AWS Well-Architected consente di valutare i pro e i contro delle decisioni prese durante il processo di creazione di sistemi nel cloud. I sei principi del framework consentono di apprendere le best practice architetturali per la progettazione e il funzionamento di sistemi affidabili, sicuri, efficienti, convenienti e sostenibili. Grazie allo strumento AWS Well-Architected, disponibile gratuitamente nella Console di gestione AWS, puoi rivedere i tuoi carichi di lavoro rispetto a queste best practice rispondendo a una serie di domande per ciascun principio.
Il diagramma dell'architettura sopra riportato è un esempio di una soluzione creata tenendo conto delle best practice Well-Architected. Per essere completamente Well-Architected, dovresti seguire il maggior numero possibile di best practice.
-
Eccellenza operativa
Questa guida utilizza CodeBuild e CodePipeline per costruire, creare pacchetti e implementare tutto ciò che è necessario nella soluzione per importare e archiviare i file VCF (Variant Call File) e lavorare con dati multi-modali e multi-omici dai set di dati di The Cancer Genome Atlas (TCGA) e The Cancer Imaging Atlas (TCIA). L'importazione e l'analisi dei dati genomici serverless viene dimostrata utilizzando un servizio completamente gestito, Amazon Omics. Le modifiche al codice apportate nel repository CodeCommit della soluzione saranno implementate attraverso la pipeline di implementazione CodePipeline fornita.
-
Sicurezza
Questa Guida utilizza gli accessi basati su ruoli con IAM e la crittografia è abilitata su tutti i bucket, che sono privati e dispongono del blocco agli accessi pubblici. La crittografia è abilitata sul catalogo dati in AWS Glue e tutti i metadati scritti da AWS Glue su Amazon S3 sono crittografati. Tutti i ruoli sono caratterizzati da privilegio minimo e tutte le comunicazioni tra i servizi rientrano nell'account cliente. Gli amministratori possono controllare il notebook Jupyter, l'accesso ai dati degli archivi di varianti di Amazon Omics e del catalogo AWS Glue è gestito completamente tramite Lake Formation, e Athena, i dati del notebook SageMaker e QuickSight sono gestiti tramite i ruoli IAM forniti.
-
Affidabilità
AWS Glue, Amazon S3, Amazon Omics e Athena sono serverless e dimensionano le prestazioni dell'accesso ai dati man mano che aumenta il loro volume. AWS Glue effettua il provisioning, la configurazione e il dimensionamento delle risorse necessarie per eseguire le attività di integrazione dei dati. Athena è serverless, pertanto è possibile eseguire rapidamente query suoi dati senza configurare e gestire server o data warehouse. L'archiviazione in memoria di QuickSight SPICE dimensionerà l'esplorazione dei dati a migliaia di utenti.
-
Efficienza delle prestazioni
Grazie a tecnologie serverless, eseguirai il provisioning soltanto delle risorse che utilizzi. Ogni processo AWS Glue eseguirà il provisioning di un cluster Spark su richiesta per trasformare i dati e annullare il provisioning delle risorse al termine del processo. Se si decide di aggiungere nuovi set di dati TCGA, sarà possibile aggiungere anche nuovi processi AWS Glue e crawler AWS Glue che eseguiranno il provisioning delle risorse on demand. Athena esegue automaticamente query in parallelo; in questo modo, la maggior parte dei risultati viene restituita entro pochi secondi. Amazon Omics ottimizza le prestazioni delle query di varianti su larga scala trasformando i file in Apache Parquet.
-
Ottimizzazione dei costi
Grazie all'utilizzo di tecnologie serverless che scalano le risorse on demand, pagherai soltanto le risorse che utilizzi. Per ottimizzare ulteriormente i costi, è possibile interrompere gli ambienti notebook in SageMaker quando non sono utilizzati. Il pannello di controllo di QuickSight viene implementato anche tramite un modello di CloudFormation separato. In questo modo, se non si desidera utilizzare il pannello di controllo di visualizzazione, si può decidere di non implementarlo e ridurre i costi. Amazon Omics ottimizza i costi di archiviazione di dati delle varianti su larga scala. I costi delle query sono determinati dalla quantità di dati scansionati da Athena e possono essere ottimizzati scrivendo query di conseguenza.
-
Sostenibilità
Tramite un ampio utilizzo dei servizi gestiti e della scalabilità dinamica, potrai ridurre l'impatto ambientale dei servizi di back-end. Un fattore fondamentale per la sostenibilità è massimizzare l'uso delle istanze del server notebook. Quando non sono in uso, dovresti interrompere gli ambienti notebook.
Ulteriori considerazioni
Trasformazione dei dati
Questa architettura sceglie AWS Glue per i processi di estrazione, trasformazione e caricamento (ETL) necessari per importare, preparare e catalogare i set di dati nell'ambito delle soluzioni per le query e le prestazioni. Puoi aggiungere nuovi processi AWS Glue e crawler AWS Glue per importare nuovi set di dati di The Cancer Genome Atlas (TCGA) e The Cancer Image Atlas (TCIA), a seconda delle necessità. Puoi aggiungere anche nuovi processi e crawler per importare, preparare e catalogare i set di dati.
Analisi dei dati
Questa architettura ha scelto i notebook SageMaker per fornire un ambiente notebook Jupyter per l'analisi. Puoi aggiungere nuovi notebook all'ambiente esistente o crearne dei nuovi. Se preferisci RStudio ai notebook Jupyter, puoi utilizzare RStudio in Amazon SageMaker.
Visualizzazione di dati
Questa architettura ha scelto QuickSight per fornire dasboard interattive per la visualizzazione e l'esplorazione dei dati. La configurazione del pannello di controllo di QuickSight avviene tramite un modello separato di CloudFormation. In questo modo, se non desideri utilizzare il pannello di controllo, non dovrai eseguire il provisioning. In QuickSight, puoi eseguire analisi personalizzate, esplorare filtri o visualizzazioni aggiuntivi e condividere set di dati e analisi con i colleghi.
Risorse per l'implementazione
Questo repository crea un ambiente scalabile in AWS per preparare dati genomici, clinici, di mutazione, di espressione e di diagnostica per immagini per un'analisi su larga scala e per eseguire query interattive in un data lake. Questa soluzione mostra come 1) utilizzare l'archivio di varianti e l'archivio di annotazioni di HealthOmics per archiviare dati di varianti e di annotazione genomica, 2) eseguire il provisioning di pipeline serverless di importazione dei dati per la preparazione e la catalogazione di dati multi-modali, 3) visualizzare ed esplorare dati clinici tramite un'interfaccia interattiva ed 4) eseguire query analitiche interattive in un data lake multi-modale tramite Amazon Athena e Amazon SageMaker.
Viene fornita una guida dettagliata da sperimentare e utilizzare all'interno del proprio account AWS. Ogni fase della creazione della guida, inclusa l'implementazione, l'utilizzo e la pulizia, viene esaminata per prepararla all'implementazione.
Il codice di esempio è un punto di partenza. È convalidato dal settore, prescrittivo ma non definitivo, ed è il punto di partenza per iniziare a lavorare.
Contenuti correlati
Guida per l'analisi multi-modale dei dati con servizi di intelligenza artificiale e ML per la salute su AWS
Collaboratori
BioTeam è un'azienda di consulenza IT operante nel settore delle scienze biologiche che ha l'obiettivo di accelerare le scoperte scientifiche riducendo il divario esistente tra ciò che gli scienziati vogliono fare e ciò che possono fare con i dati. Grazie al suo lavoro nel settore della scienza, dei dati e della tecnologia dal 2002, BioTeam ha acquisito le competenze interdisciplinari necessarie per l'applicazione di strategie, tecnologie avanzate e servizi IT per poter risolvere i più complessi problemi di ricerca, tecnici e operativi. Grazie alle nostre competenze nel convertire le necessità della scienza in potenti ecosistemi per dati scientifici, siamo orgogliosi di collaborare con tantissimi leader nell'ambito della ricerca delle scienze biologiche, dalle startup biotech alle più grandi aziende farmaceutiche, dalle agenzie governative agli istituti di ricerca.
Avvertenza
Il codice di esempio, le librerie software, gli strumenti della linea di comando, le proof of concept, i modelli e le altre tecnologie correlate (comprese tutte le tecnologie di cui sopra fornite dal nostro personale) vengono forniti all'utente sotto forma di contenuto AWS ai sensi dell'Accordo cliente AWS o del relativo accordo scritto stipulato tra l'utente e AWS (a seconda dei casi). Non bisogna utilizzare il contenuto AWS in questione negli account di produzione o sui dati di produzione o altri dati fondamentali. L'utente è responsabile dei test, della sicurezza e dell'ottimizzazione del contenuto AWS, come il codice di esempio, in modo appropriato per l'utilizzo in produzione sulla base delle pratiche e degli standard di qualità specifici. L'implementazione del contenuto AWS può comportare costi AWS per la creazione o l'utilizzo di risorse AWS addebitabili, quali le istanze Amazon EC2 in esecuzione o l'archiviazione Amazon S3.
Eventuali riferimenti a servizi o organizzazioni di terze parti contenuti in questa guida non implicano alcuna approvazione, sponsorizzazione o affiliazione tra Amazon o AWS e dette terze parti. La guida di AWS è un punto di partenza tecnico e l'integrazione con servizi di terze parti può essere personalizzata al momento dell'implementazione dell'architettura.