Usar o dsub para escrever scripts, executar tarefas de computação em lote e de trabalho no Google Cloud.
Objetivos
Depois de concluir este tutorial, você saberá como executar um pipeline dsub no Google Cloud que cria um índice (arquivo BAI) com base em 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, substituindo PROJECT_ID pelo projeto do Google Cloud e BUCKET por um bucket do Cloud Storage ao qual você tem 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.