Kurzanleitung

Auf dieser Seite wird beschrieben, wie Sie eine Genomics-Pipeline ausführen, die mit der Cloud Life Sciences API aus einer großen Binärdatei mit DNA-Sequenzen (BAM-Datei) eine Indexdatei (BAI-Datei) erstellt.

Hinweis

  1. Melden Sie sich bei Ihrem Google-Konto an.

    Wenn Sie noch kein Konto haben, melden Sie sich hier für ein neues Konto an.

  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für Ihr Projekt aktiviert ist.

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

    Aktivieren Sie die APIs

  5. Installieren und initialisieren Sie das Cloud SDK.
  6. Alternativ können Sie Cloud Shell verwenden, das im Lieferumfang des bereits installierten Cloud SDK enthalten ist.

Pipeline ausführen

Sie können die Pipeline mit curl oder Windows PowerShell ausführen.

curl

  1. Erstellen Sie eine BUCKET-Umgebungsvariable. Die Variable verweist auf einen Cloud Storage-Bucket mit dem Projektnamen und angehängtem -life-sciences.

    export BUCKET=gs://PROJECT_ID-life-sciences
    
  2. Erstellen Sie den Bucket mit dem Befehl gsutil mb:

    gsutil mb ${BUCKET}
    
  3. Führen Sie mit dem gcloud-Befehlszeilentool eine Pipeline aus und geben Sie einen BAM-Dateinamen für die Eingabe und einen BAI-Dateinamen für die Ausgabe an. Die Pipeline ruft die Cloud Life Sciences API auf, erstellt eine Compute Engine-VM-Instanz und führt dann den Pipelineprozess auf der Instanz aus. Nach Abschluss des Prozesses wird die Instanz automatisch beendet und die BAI-Datei in Ihren Cloud Storage-Bucket kopiert.

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

    Wenn der Prozess erfolgreich durchgeführt wurde, gibt der Befehl Folgendes zurück:

    Running [projects/PROJECT_ID/operations/OPERATION_ID]
    
  4. Es kann mehrere Minuten dauern, bis die Pipeline abgeschlossen ist. Sie können den folgenden Befehl ausführen, um ihren Status zu überprüfen. Ersetzen Sie OPERATION_ID durch den im vorherigen Schritt ausgegebenen Wert.

    gcloud beta lifesciences operations wait OPERATION_ID
    

    Nachdem der Vorgang abgeschlossen ist, wird die folgende Meldung zurückgegeben:

    Waiting for [projects/PROJECT_ID/operations/OPERATION_ID]...done.
    
  5. Prüfen Sie, ob die BAI-Datei generiert wurde:

    gsutil ls ${BUCKET}
    

    Der Befehl sollte Folgendes zurückgeben:

    gs://BUCKET/NA12878.chr20.sample.bam.bai
    

Sie haben gerade eine Pipeline mit der Cloud Life Sciences API ausgeführt, um eine BAI-Datei aus einer BAM-Datei zu erstellen.

PowerShell

  1. Erstellen Sie eine BUCKET-Umgebungsvariable. Die Variable verweist auf einen Cloud Storage-Bucket mit dem Projektnamen und angehängtem -life-sciences.

    $BUCKET = "gs://PROJECT_ID-life-sciences"
    
  2. Erstellen Sie den Bucket mit dem Befehl gsutil mb:

    gsutil mb ${BUCKET}
    
  3. Führen Sie mit dem gcloud-Befehlszeilentool eine Pipeline aus und geben Sie einen BAM-Dateinamen für die Eingabe und einen BAI-Dateinamen für die Ausgabe an. Die Pipeline ruft die Cloud Life Sciences API auf, erstellt eine Compute Engine-VM-Instanz und führt dann den Pipelineprozess auf der Instanz aus. Nach Abschluss des Prozesses wird die Instanz automatisch beendet und die BAI-Datei in Ihren Cloud Storage-Bucket kopiert.

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

    Wenn der Prozess erfolgreich durchgeführt wurde, gibt der Befehl Folgendes zurück:

    Running [projects/PROJECT_ID/operations/OPERATION_ID]
    
  4. Es kann mehrere Minuten dauern, bis die Pipeline abgeschlossen ist. Sie können den folgenden Befehl ausführen, um ihren Status zu überprüfen. Ersetzen Sie OPERATION_ID durch den im vorherigen Schritt ausgegebenen Wert.

    gcloud beta lifesciences operations wait OPERATION_ID
    

    Nachdem der Vorgang abgeschlossen ist, wird die folgende Meldung zurückgegeben:

    Waiting for [projects/PROJECT_ID/operations/OPERATION_ID]...done.
    
  5. Prüfen Sie, ob die BAI-Datei generiert wurde:

    gsutil ls ${BUCKET}
    

    Der Befehl sollte Folgendes zurückgeben:

    gs://BUCKET/NA12878.chr20.sample.bam.bai
    

Sie haben gerade eine Pipeline mit der Cloud Life Sciences API ausgeführt, um eine BAI-Datei aus einer BAM-Datei zu erstellen.

Bereinigen

Um zu vermeiden, dass Ihrem Google Cloud-Konto die in dieser Kurzanleitung verwendeten Ressourcen in Rechnung gestellt werden, können Sie die in Google Cloud erstellten Ressourcen bereinigen. In den folgenden Abschnitten wird erläutert, wie Sie diese Ressourcen löschen oder deaktivieren.

Projekt löschen

Wenn Sie das Projekt speziell für diesen Schnellstart erstellt haben und es nicht mehr benötigen, können Sie das Projekt löschen. Dabei werden auch der Cloud Storage-Bucket und die BAI-Datei gelöscht.

  1. Wechseln Sie in der Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite "Ressourcen verwalten"

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen .
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.

BAI-Datei löschen

Um die generierte BAI-Datei zu löschen, aber das von Ihnen erstellte Projekt und den Bucket beizubehalten, führen Sie den Befehl gsutil rm aus:

gsutil rm ${BUCKET}/NA12878.chr20.sample.bam.bai

Bucket löschen

Wenn Sie den Bucket speziell für diese Kurzanleitung erstellt haben und ihn nicht mehr benötigen, aber das Projekt behalten möchten, löschen Sie den Bucket mit dem Befehl gsutil rb. Durch das Löschen des Buckets wird auch die generierte BAI-Datei gelöscht.

gsutil rb ${BUCKET}

Weitere Informationen