Como executar o dsub

O dsub é uma ferramenta de linha de comando que pode ser usada para 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 no Google Cloud que cria um índice (arquivo BAI) a partir de um grande arquivo binário de sequências de DNA (arquivo BAM).

Custos

Neste tutorial, há componentes faturáveis do Google Cloud, entre eles:

  • Compute Engine
  • Cloud Storage

Use a Calculadora de preços para gerar uma estimativa de custo com base no uso previsto. Usuários novos do Cloud Platform podem ter direito a uma avaliação gratuita.

Antes de começar

  1. 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.
  2. Faça login na sua conta do Google.

    Se você ainda não tiver uma, inscreva-se.

  3. No Console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar a página do seletor de projetos

  4. Verifique se o faturamento está ativado para seu projeto na nuvem. Saiba como confirmar se o faturamento está ativado para o projeto.

  5. Ative as APIs Cloud Life Sciences, Compute Engine, and Cloud Storage.

    Ative as 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.

  1. Clone o repositório do GitHub databiosphere/dsub e, em seguida e, em seguida, altere para o diretório da ferramenta dsub. O repositório contém uma imagem do Docker predefinida que usa o SAMtools (em inglês) para fazer a indexação.

    git clone https://github.com/databiosphere/dsub.git
    cd dsub
    
  2. Instale o dsub e suas dependências:

    python setup.py install
    
  3. 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.

  4. Verifique se o arquivo BAI foi gerado:

    gsutil ls BUCKET
    

    O comando retornará isto:

    gs://BUCKET/HG00114.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.bai
    

Limpar

Após concluir este tutorial, é possível limpar os recursos que você criou no Google Cloud para que não sejam faturados no futuro. Nas seções a seguir, você aprenderá a excluir e desativar esses recursos.

Como excluir o projeto

A maneira mais fácil de evitar a cobrança é excluir o projeto usado no tutorial.

Para excluir o projeto, faça o seguinte:

  1. No Console do Cloud, acesse a página "Projetos".

    Acessar a página "Projetos"

  2. Na lista de projetos, selecione o que você quer excluir e clique em Excluir projeto. Depois de marcar a caixa de seleção ao lado do nome do projeto, clique em
  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.

A seguir

Leia a documentação do dsub no GitHub (em inglês) para mais detalhes e exemplos de como usá-lo para desenvolver localmente ou para escalonar verticalmente muitas tarefas no Google Cloud.