Ejecutar dsub

Usa dsub para escribir secuencias de comandos y, luego, ejecutar tareas y flujos de trabajo de computación por lotes en Google Cloud.

Objetivos

Después de completar este instructivo, sabrás cómo ejecutar una canalización de dsub en Google Cloud que crea un índice (archivo BAI) a partir de un gran archivo binario de secuencias de ADN (archivo BAM).

Costos

En este instructivo, se usan los siguientes componentes facturables de Google Cloud:

  • Compute Engine
  • Cloud Storage

Para generar una estimación de costos en función del uso previsto, usa la calculadora de precios. Es posible que los usuarios nuevos de Google Cloud califiquen para obtener una prueba gratuita.

Antes de comenzar

  1. Instala Python 3.6  o superior. Para obtener más información sobre cómo configurar tu entorno de desarrollo de Python, incluida la instalación de pip en tu sistema, consulta la Guía de configuración del entorno de desarrollo de Python.
  2. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  3. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  4. Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Obtén información sobre cómo verificar si la facturación está habilitada en un proyecto.

  5. Habilita las API de Cloud Life Sciences, Compute Engine, and Cloud Storage.

    Habilita las API

  6. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  7. Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Obtén información sobre cómo verificar si la facturación está habilitada en un proyecto.

  8. Habilita las API de Cloud Life Sciences, Compute Engine, and Cloud Storage.

    Habilita las API

Crea un archivo BAI

Completa los siguientes pasos para crear un índice (archivo BAI) a partir de un archivo binario grande de secuencias de ADN (archivo BAM). Los datos provienen del proyecto 1,000 Genomes.

  1. Clona el repositorio databiosphere/dsub de GitHub:

    git clone https://github.com/databiosphere/dsub.git
    
  2. Cambia al directorio de la herramienta dsub. El repositorio contiene una imagen de Docker prediseñada que utiliza samtools para realizar la indexación.

    cd dsub
    
  3. Instala dsub y sus dependencias:

    sudo python3 setup.py install
    
  4. Ejecuta la herramienta dsub a fin de crear el archivo BAI. Para ello, reemplaza PROJECT_ID con tu proyecto de Google Cloud y BUCKET con un depósito de Cloud Storage al que tengas acceso de escritura:

    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
    

    El comando samtools se ejecuta en el archivo de datos proporcionado con la marca --input. La canalización escribe el archivo de salida y los registros en tu bucket de Cloud Storage.

  5. Verifica que se haya generado el archivo BAI:

    gsutil ls gs://BUCKET
    

    El comando muestra la siguiente respuesta:

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

Realiza una limpieza

Una vez que completes el instructivo, puedes limpiar los recursos que creaste para que dejen de usar la cuota y generar cargos. En las siguientes secciones, se describe cómo borrar o desactivar estos recursos.

Borra el proyecto

La manera más fácil de eliminar la facturación es borrar el proyecto que creaste para el instructivo.

Para borrar el proyecto, haga lo siguiente:

  1. En la consola, ve a la página Administrar recursos.

    Ir a Administrar recursos

  2. En la lista de proyectos, elige el proyecto que quieres borrar y haz clic en Borrar.
  3. En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrar el proyecto.

¿Qué sigue?

Lee la documentación sobre dsub en GitHub para obtener más detalles y ejemplos sobre cómo desarrollar con dsub de forma local, o usa dsub para escalar verticalmente a muchas tareas en Google Cloud.