Processar dados genômicos usando o Cloud Life Sciences

Nesta página, explicamos como executar um pipeline genômico que usa a API Cloud Life Sciences para criar um arquivo de índice (BAI) com base em um arquivo binário contendo sequências de DNA (arquivo BAM).

Os arquivos BAM geralmente são grandes e podem levar muito tempo para serem lidos com um leitor de genoma. Use um arquivo BAI para localizar as partes do arquivo BAM que contêm a posição do genoma em que você tem interesse.

Antes de começar

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Life Sciences, Compute Engine, and Cloud Storage JSON APIs.

    Enable the APIs

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Enable the Cloud Life Sciences, Compute Engine, and Cloud Storage JSON APIs.

    Enable the APIs

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init
  12. Como alternativa, use o Cloud Shell, que já vem com a CLI gcloud instalada.

  13. Instale o Python 3.8

    Se você está usando o Windows e marcou a caixa de seleção pertinente quando instalou a CLI do Google Cloud, isso foi feito automaticamente.

Executar o pipeline

Para executar o pipeline, conclua as seguintes etapas:

  1. Crie um bucket para armazenar o arquivo BAI. buckets são os contêineres básicos que armazenam dados no Cloud Storage. Para criar um bucket chamado PROJECT_ID-life-sciences, execute o comando gcloud storage buckets create:

    gcloud storage buckets create gs://PROJECT_ID-life-sciences

    Substitua PROJECT_ID pelo ID do projeto do Google Cloud. Use um nome de bucket globalmente exclusivo.

    Se o procedimento for bem-sucedido, o comando retornará:

    Creating gs://PROJECT_ID-life-sciences
  2. Para iniciar o pipeline, execute o comando gcloud beta lifesciences pipelines run:

    gcloud beta lifesciences pipelines run \
        --regions us-east1 \
        --command-line 'samtools index ${BAM} ${BAI}' \
        --docker-image "gcr.io/cloud-lifesciences/samtools" \
        --inputs BAM=gs://genomics-public-data/NA12878.chr20.sample.bam \
        --outputs BAI=gs://PROJECT_ID-life-sciences/NA12878.chr20.sample.bam.bai

    Se o procedimento for bem-sucedido, o comando retornará:

    Running [projects/PROJECT_ID/operations/OPERATION_ID]

    Observe o OPERATION_ID, que será usado na próxima etapa.

  3. Para rastrear o status do pipeline, execute o comando gcloud beta lifesciences operations wait. Substitua OPERATION_ID pelo valor mostrado na etapa anterior. O pipeline leva alguns minutos para ser concluído.

    gcloud beta lifesciences operations wait OPERATION_ID

    Depois que a operação for concluída, ela retornará a seguinte mensagem:

    Waiting for [projects/PROJECT_ID/operations/OPERATION_ID]...done.
  4. Para verificar se o arquivo BAI foi gerado, execute o comando gcloud storage ls:

    gcloud storage ls gs://PROJECT_ID-life-sciences

    Se o procedimento for bem-sucedido, o comando retornará:

    gs://PROJECT_ID-life-sciences/NA12878.chr20.sample.bam.bai

Você acabou de executar um pipeline usando a API Cloud Life Sciences para criar um arquivo BAI com base em um arquivo BAM. Use um leitor de genoma para examinar o arquivo BAM NA12878.chr20.sample.bam usando o arquivo de índice NA12878.chr20.sample.bam.bai.

Limpar

Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.

Excluir o arquivo BAI

Para excluir o arquivo BAI gerado, mas manter o projeto e o bucket criados, execute o comando gcloud storage rm:

gcloud storage rm PROJECT_ID-life-sciences/NA12878.chr20.sample.bam.bai

Excluir o bucket

Se você criou o bucket especificamente para esse guia de início rápido e não precisa mais dele, mas quer manter seu projeto, exclua o bucket usando o comando gcloud storage rm. Excluir o também exclui o arquivo BAI gerado.

gcloud storage rm gs://PROJECT_ID-life-sciences --recursive

Exclua o projeto

Se você tiver criado o projeto especificamente para este guia de início rápido e não precisar mais dele, exclua-o. A exclusão do projeto também exclui o arquivo BAI e o bucket do Cloud Storage.

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Como foi?

A seguir