dsub ausführen

dsub verwenden um Skripts zu schreiben und dann Batch-Computing-Aufgaben auszuführen. Workflows in Google Cloud.

Lernziele

Nach Abschluss dieser Anleitung können Sie eine dsub-Pipeline in Google Cloud ausführen, die aus einer großen Binärdatei mit DNA-Sequenzen (BAM-Datei) einen Index (BAI-Datei) erstellt.

Kosten

In diesem Dokument verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:

  • Compute Engine
  • Cloud Storage

Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen. Neuen Google Cloud-Nutzern steht möglicherweise eine kostenlose Testversion zur Verfügung.

Hinweise

  1. Installieren Sie Python 3.6 oder höher. Weitere Informationen zur Einrichtung der Python-Entwicklungsumgebung, z. B. zur Installation von „pip“ auf Ihrem System, finden Sie im Einrichtungsleitfaden für die Python-Entwicklungsumgebung.
  2. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  3. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  4. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  5. Cloud Life Sciences, Compute Engine, and Cloud Storage APIs aktivieren.

    Aktivieren Sie die APIs

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  8. Cloud Life Sciences, Compute Engine, and Cloud Storage APIs aktivieren.

    Aktivieren Sie die APIs

BAI-Datei erstellen

Nachfolgend wird beschrieben, wie Sie aus einer großen Binärdatei mit DNA-Sequenzen (BAM-Datei) einen Index (BAI-Datei) erstellen. Die Daten stammen aus dem 1000 Genomes Project.

  1. Klonen Sie das GitHub-Repository databiosphere/dsub:

    git clone https://github.com/databiosphere/dsub.git
    
  2. Wechseln Sie in das Verzeichnis für das dsub-Tool. Das Repository enthält ein fertiges Docker-Image, das zur Indexerstellung samtools nutzt.

    cd dsub
    
  3. Installieren Sie dsub und die zugehörigen Abhängigkeiten:

    sudo python3 setup.py install
    
  4. Führen Sie das dsub-Tool aus, um die BAI-Datei zu erstellen. Ersetzen Sie dabei PROJECT_ID durch Ihr Google Cloud-Projekt und BUCKET durch einen Cloud Storage-Bucket, auf den Sie Schreibzugriff haben:

    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
    

    Der Befehl samtools wird in der Datendatei ausgeführt, die mit dem Flag --input angegeben wurde. Von der Pipeline werden die Ausgabedatei und die Logs in den Cloud Storage-Bucket geschrieben.

  5. Prüfen Sie, ob die BAI-Datei generiert wurde:

    gsutil ls gs://BUCKET
    

    Der Befehl gibt die folgende Antwort zurück:

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

Bereinigen

Nachdem Sie die Anleitung abgeschlossen haben, können Sie die erstellten Ressourcen bereinigen, damit sie keine Kontingente mehr nutzen und keine Gebühren mehr anfallen. In den folgenden Abschnitten erfahren Sie, wie Sie diese Ressourcen löschen oder deaktivieren.

Projekt löschen

Am einfachsten vermeiden Sie weitere Kosten durch Löschen des für die Anleitung erstellten Projekts.

So löschen Sie das Projekt:

  1. Wechseln Sie in der Google 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 Shut down (Beenden), um das Projekt zu löschen.

Nächste Schritte

dsub-Dokumentation auf GitHub lesen finden Sie weitere Details und Beispiele zur lokalen Entwicklung mit dsub oder zur Verwendung von dsub. um viele Aufgaben in Google Cloud zu skalieren.