Verwenden Sie dsub, um Scripts zu schreiben, und führen Sie dann Batch-Computing-Aufgaben und Workflows in Google Cloud aus.
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.
Hinweise
- 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.
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Life Sciences, Compute Engine, and Cloud Storage APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Life Sciences, Compute Engine, and Cloud Storage 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.
Klonen Sie das GitHub-Repository databiosphere/dsub:
git clone https://github.com/databiosphere/dsub.git
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
Installieren Sie dsub und die zugehörigen Abhängigkeiten:
sudo python3 setup.py install
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.Prüfen Sie, ob die BAI-Datei generiert wurde:
gcloud storage 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:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Nächste Schritte
Weitere Informationen und Beispiele dazu, wie Sie mit dsub lokal entwickeln oder dsub zur Skalierung auf viele Tasks in der Google Cloud verwenden können, finden Sie in der dsub-Dokumentation auf GitHub.