Utilizza dsub per scrivere script ed eseguire attività e flussi di lavoro di calcolo batch su Google Cloud.
Obiettivi
Al termine di questo tutorial, saprai come eseguire una pipeline dsub su Google Cloud che crea un indice (file BAI) da un grande file binario di sequenze del DNA (file BAM).
Costi
In questo documento utilizzi i seguenti componenti fatturabili di Google Cloud:
- Compute Engine
- Cloud Storage
Per generare una stima dei costi basata sull'utilizzo previsto,
utilizza il Calcolatore prezzi.
Prima di iniziare
- Installa Python 3.6 o versioni successive. Per ulteriori informazioni sulla configurazione dell'ambiente di sviluppo Python, ad esempio l'installazione di pip sul sistema, consulta la Guida alla configurazione dell'ambiente di sviluppo Python.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Life Sciences, Compute Engine, and Cloud Storage APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Life Sciences, Compute Engine, and Cloud Storage APIs.
Creare un file BAI
Completa i seguenti passaggi per creare un indice (file BAI) da un grande file binario di sequenze del DNA (file BAM). I dati provengono dal Progetto 1000 genomi.
Clona il repository GitHub databiosphere/dsub:
git clone https://github.com/databiosphere/dsub.git
Passa alla directory dello strumento dsub. Il repository contiene un'immagine Docker precompilata che utilizza samtools per l'indicizzazione.
cd dsub
Installa dsub e le sue dipendenze:
sudo python3 setup.py install
Esegui lo strumento dsub per creare il file BAI, sostituendo PROJECT_ID con il tuo progetto Google Cloud e BUCKET con un bucket Cloud Storage a cui hai accesso in scrittura:
dsub \ --provider google-cls-v2 \ --project PROJECT_ID \ --logging gs://BUCKET/logs \ --input BAM=gs://genomics-public-data/1000-genomes/bam/HG00114.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam \ --output BAI=gs://BUCKET/HG00114.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.bai \ --image quay.io/cancercollaboratory/dockstore-tool-samtools-index \ --command 'samtools index ${BAM} ${BAI}' \ --wait
Il comando samtools viene eseguito sul file di dati fornito con il flag
--input
. La pipeline scrive il file di output e i log nel tuo bucket Cloud Storage.Verifica che il file BAI sia stato generato:
gcloud storage ls gs://BUCKET
Il comando restituisce la seguente risposta:
gs://BUCKET/HG00114.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.bai
Esegui la pulizia
Al termine del tutorial, puoi eliminare le risorse che hai creato in modo che smettano di utilizzare la quota e di generare addebiti. Le sezioni seguenti descrivono come eliminare o disattivare queste risorse.
Elimina il progetto
Il modo più semplice per eliminare la fatturazione è eliminare il progetto che hai creato per il tutorial.
Per eliminare il progetto:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Passaggi successivi
Leggi la documentazione di dsub su GitHub per ulteriori dettagli ed esempi su come sviluppare con dsub localmente o utilizzarlo per eseguire l'upgrade a molte attività su Google Cloud.