Use o dsub para escrever scripts e executar tarefas de computação em lote e fluxos de trabalho no Google Cloud.
Objetivos
Depois de concluir este tutorial, você saberá como executar um pipeline dsub em Google Cloud que cria um índice (arquivo BAI) a partir de um arquivo binário grande de sequências de DNA (arquivo BAM).
Custos
Neste documento, você usará os seguintes componentes faturáveis do Google Cloud:
- Compute Engine
- Cloud Storage
Para gerar uma estimativa de custo baseada na projeção de uso deste tutorial, use a calculadora de preços.
Antes de começar
- Instale o Python versão 3.6 ou posterior (em inglês). Para mais informações sobre como configurar o ambiente de desenvolvimento Python, como instalar o pip no sistema, consulte o Guia de configuração do ambiente de desenvolvimento 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.
Como criar um arquivo BAI
Conclua as etapas a seguir para criar um índice (arquivo BAI) a partir de um arquivo binário grande de sequências de DNA (arquivo BAM). Os dados vêm do projeto 1.000 Genomes.
Clone o repositório do GitHub databiosphere/dsub:
git clone https://github.com/databiosphere/dsub.git
Mude para o diretório da ferramenta dsub. O repositório contém uma imagem do Docker predefinida que usa samtools para fazer a indexação.
cd dsub
Instale o dsub e suas dependências:
sudo python3 setup.py install
Execute a ferramenta dsub para criar o arquivo BAI. Para isso, substitua PROJECT_ID pelo projeto Google Cloud e BUCKET por um bucket do Cloud Storage a que você tenha acesso de gravação:
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
O comando samtools é executado no arquivo de dados fornecido com a sinalização
--input
. O pipeline grava o arquivo de saída e os registros no bucket do Cloud Storage.Verifique se o arquivo BAI foi gerado:
gcloud storage ls gs://BUCKET
O comando retorna a seguinte resposta:
gs://BUCKET/HG00114.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.bai
Limpar
Depois de concluir o tutorial, você pode limpar os recursos que criou para que eles parem de usar a cota e gerar cobranças. Nas seções a seguir, você aprenderá a excluir e desativar esses recursos.
Exclua o projeto
O jeito mais fácil de evitar cobranças é excluindo o projeto que você criou para o tutorial.
Para excluir o projeto:
- 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.
A seguir
Leia a documentação do dsub no GitHub (em inglês) para mais detalhes e exemplos de como desenvolver com o dsub localmente ou usá-lo para escalonar verticalmente muitas tarefas no Google Cloud.