Traiter des données génomiques à l'aide de Cloud Life Sciences

Cette page explique comment exécuter un pipeline génomique qui utilise l'API Cloud Life Sciences pour créer un fichier d'index (fichier BAI) à partir d'un fichier binaire contenant des séquences d'ADN (fichier BAM).

Les fichiers BAM sont généralement volumineux et leur lecture avec un lecteur de génome peut prendre beaucoup de temps. Vous utilisez un fichier BAI pour localiser les parties du fichier BAM contenant la position génomique qui vous intéresse.

Avant de commencer

  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. Vous pouvez également utiliser Cloud Shell, qui comprend déjà la gcloud CLI.

  13. Installez Python 3.8.

    Si vous utilisez Windows et que vous avez laissé la case correspondante cochée lors de l'installation de la Google Cloud CLI, cette opération a été effectuée automatiquement.

Exécuter le pipeline

Pour exécuter le pipeline, procédez comme suit :

  1. Créez un bucket dans lequel vous allez stocker le fichier BAI. Les buckets sont les conteneurs de base dans lesquels sont stockées vos données dans Cloud Storage. Pour créer un bucket nommé PROJECT_ID-life-sciences, exécutez la commande gcloud storage buckets create:

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

    Remplacez PROJECT_ID par l'ID de votre projet Google Cloud. Vous devez utiliser un nom de bucket unique.

    Si l'opération réussit, la commande renvoie les éléments suivants :

    Creating gs://PROJECT_ID-life-sciences
  2. Pour démarrer le pipeline, exécutez la commande 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

    Si l'opération réussit, la commande renvoie les éléments suivants :

    Running [projects/PROJECT_ID/operations/OPERATION_ID]

    Notez la valeur de OPERATION_ID. Vous l'utiliserez à l'étape suivante.

  3. Pour suivre l'état du pipeline, exécutez la commande gcloud beta lifesciences operations wait. Remplacez OPERATION_ID par la valeur affichée à l'étape précédente. Le déploiement prend quelques minutes.

    gcloud beta lifesciences operations wait OPERATION_ID

    Une fois l'opération terminée, elle renvoie le message suivant :

    Waiting for [projects/PROJECT_ID/operations/OPERATION_ID]...done.
  4. Pour vérifier que le fichier BAI a été généré, exécutez la commande gcloud storage ls :

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

    Si l'opération réussit, la commande renvoie les éléments suivants :

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

Vous venez d'exécuter un pipeline utilisant l'API Cloud Life Sciences pour créer un fichier BAI à partir d'un fichier BAM. Utilisez un lecteur de génome pour examiner le fichier BAM NA12878.chr20.sample.bam à l'aide du fichier d'index NA12878.chr20.sample.bam.bai.

Effectuer un nettoyage

Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :

Supprimer le fichier BAI

Pour supprimer le fichier BAI généré tout en conservant le projet et le bucket que vous avez créés, exécutez la commande gcloud storage rm :

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

Supprimer le bucket

Si vous avez créé le bucket spécifiquement pour ce démarrage rapide et que vous n'en avez plus besoin, mais que vous souhaitez conserver votre projet, supprimez le bucket à l'aide de la commande gcloud storage rm. La suppression du bucket supprime également le fichier BAI généré.

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

Supprimer le projet

Si vous avez créé le projet spécifiquement pour ce démarrage rapide et que vous n'en avez plus besoin, vous pouvez le supprimer. La suppression du projet entraîne celle du fichier BAI et du bucket 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.

Comment ça s'est passé ?

Étape suivante