Einen Lauf starten in HealthOmics - AWS HealthOmics

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Einen Lauf starten in HealthOmics

Wenn Sie einen Lauf starten, können Sie den Speichertyp und die Speichermenge für den Lauf (für statischen Speicher) festlegen. Weitere Informationen finden Sie unter Speichertypen in HealthOmics Workflows ausführen.

Sie legen auch die Ausführungspriorität fest. Wie sich die Priorität auf den Lauf auswirkt, hängt davon ab, ob der Lauf einer Ausführungsgruppe zugeordnet ist. Weitere Informationen finden Sie unter Priorität ausführen.

Wenn Sie eine oder mehrere Workflow-Versionen erstellt haben, können Sie die Version angeben, wenn Sie den Lauf starten. Wenn Sie keine Version angeben, HealthOmics wird die Standard-Workflow-Version gestartet.

Geben Sie einen Amazon S3 S3-Speicherort für die Ausgabedateien an. Wenn Sie eine große Anzahl von Workflows gleichzeitig ausführen, verwenden Sie URIs für jeden Workflow eine separate Amazon S3 S3-Ausgabe, um Bucket-Throttling zu vermeiden. Weitere Informationen finden Sie unter Objekte mithilfe von Präfixen organisieren im Amazon S3-Benutzerhandbuch und Speicherverbindungen horizontal skalieren im Whitepaper Optimizing Amazon S3 Performance.

Anmerkung

Sie geben eine IAM-Servicerolle an, wenn Sie einen Lauf starten. Optional kann die Konsole die Servicerolle für Sie erstellen. Weitere Informationen finden Sie unter Servicerollen für AWS HealthOmics.

HealthOmics Parameter ausführen

Wenn Sie einen Lauf starten, geben Sie die Eingaben für die Ausführung in der JSON-Datei mit den Ausführungsparametern an, oder Sie können die Parameterwerte inline eingeben. Hinweise zur Verwaltung der Größe der JSON-Datei mit den Ausführungsparametern finden Sie unterGröße der Ausführungsparameter verwalten.

HealthOmics unterstützt die folgenden JSON-Typen für Parameterwerte.

JSON-Typ Beispiel für Schlüssel und Wert Hinweise
boolesch „b“: wahr Der Wert steht nicht in Anführungszeichen und ist ausschließlich in Kleinbuchstaben geschrieben.
Ganzzahl „i“ :7 Der Wert steht nicht in Anführungszeichen.
Zahl „f“: 42,3 Der Wert steht nicht in Anführungszeichen.
Zeichenfolge „s“: „Zeichen“ Der Wert steht in Anführungszeichen. Verwenden Sie den Zeichenfolgentyp für Textwerte und URIs. Das URI-Ziel muss dem erwarteten Eingabetyp entsprechen.
Array „a“: [1,2,3] Der Wert steht nicht in Anführungszeichen. Array-Mitglieder müssen jeweils den durch den Eingabeparameter definierten Typ haben.
object „o“: {"links“ :"a“, „rechts“ :1} In WDL wird das Objekt WDL Pair, Map oder Struct zugeordnet

Einen Lauf über die Konsole starten

Um einen Workflow-Lauf zu starten
  1. Öffnen Sie die HealthOmics -Konsole.

  2. Wählen Sie im linken Navigationsbereich die Option Läufe aus.

  3. Wählen Sie auf der Seite „Läufe“ die Option Ausführung starten aus.

  4. Geben Sie im Bereich mit den Ausführungsdetails die folgenden Informationen ein

    • Workflow-Quelle — Wählen Sie Eigener Workflow oder Geteilter Workflow aus.

    • Workflow-ID — Die Workflow-ID, die diesem Lauf zugeordnet ist.

    • Workflow-Version (optional) — Wählen Sie eine Workflow-Version aus, die für diesen Lauf verwendet werden soll. Wenn Sie keine Version auswählen, verwendet der Lauf die Workflow-Standardversion.

    • Laufname — Ein eindeutiger Name für diesen Lauf.

    • Ausführungspriorität (optional) — Die Priorität dieses Laufs. Höhere Zahlen geben eine höhere Priorität an, und die Aufgaben mit der höchsten Priorität werden zuerst ausgeführt.

    • Speichertyp ausführen — Geben Sie hier den Speichertyp an, um den für den Workflow angegebenen Standardspeichertyp für die Ausführung zu überschreiben. Statischer Speicher weist dem Lauf eine feste Speichermenge zu. Dynamischer Speicher wird je nach Bedarf für jede Aufgabe in der Ausführung nach oben oder unten skaliert.

    • Laufspeicherkapazität — Geben Sie für statischen Laufspeicher die Speichermenge an, die für die Ausführung benötigt wird. Dieser Eintrag überschreibt die für den Workflow angegebene Standardspeichermenge für die Ausführung.

    • Wählen Sie das S3-Ausgabeziel aus — Der S3-Speicherort, an dem die Run-Ausgaben gespeichert werden.

    • Konto-ID des Output-Bucket-Besitzers (optional) — Wenn Ihr Konto nicht Eigentümer des Output-Buckets ist, geben Sie die AWS-Konto ID des Bucket-Besitzers ein. Diese Informationen sind erforderlich, damit der Besitzer des Buckets verifiziert werden HealthOmics kann.

    • Aufbewahrungsmodus für Metadaten ausführen — Wählen Sie aus, ob die Metadaten für alle Läufe beibehalten werden sollen oder ob das System die Metadaten der ältesten Ausführung entfernen soll, wenn Ihr Konto die maximale Anzahl von Durchläufen erreicht. Weitere Informationen finden Sie unter Aufbewahrungsmodus für HealthOmics Läufe ausführen.

  5. Unter Servicerolle können Sie eine bestehende Servicerolle verwenden oder eine neue erstellen.

  6. (Optional) Für Tags können Sie dem Lauf bis zu 50 Tags zuweisen.

  7. Wählen Sie Weiter aus.

  8. Geben Sie auf der Seite Parameterwerte hinzufügen die Ausführungsparameter an. Sie können entweder eine JSON-Datei hochladen, die die Parameter spezifiziert, oder die Werte manuell eingeben.

  9. Wählen Sie Weiter aus.

  10. Im Bereich „Gruppe ausführen“ können Sie optional eine Ausführungsgruppe für diesen Lauf angeben. Weitere Informationen finden Sie unter HealthOmics Laufgruppen erstellen.

  11. Im Bereich „Cache ausführen“ können Sie optional einen Run-Cache für diesen Lauf angeben. Weitere Informationen finden Sie unter Konfiguration eines Laufs mit Run-Cache mithilfe der Konsole.

  12. Wählen Sie Review and start run (Überprüfen und Testlauf starten).

  13. Nachdem Sie die Ausführungskonfiguration überprüft haben, wählen Sie Start run aus.

Einen Lauf mithilfe der API starten

Verwenden Sie den Start-Run-API-Vorgang mit der IAM-Rolle und dem Amazon S3 S3-Bucket, die Sie erstellt haben. In diesem Beispiel wird der Aufbewahrungsmodus auf festgelegt. REMOVE Weitere Hinweise zum Aufbewahrungsmodus finden Sie unterAufbewahrungsmodus für HealthOmics Läufe ausführen.

aws omics start-run --workflow-id workflow id \ --role-arn arn:aws:iam::1234567892012:role/service-role/OmicsWorkflow-20221004T164236 \ --name workflow name \ --retention-mode REMOVE

Als Antwort erhalten Sie die folgende Ausgabe. Das uuid ist einzigartig für den Lauf und outputUri kann zusammen mit verwendet werden, um zu verfolgen, wohin die Ausgabedaten geschrieben wurden.

{ "arn": "arn:aws:omics:us-west-2:....:run/1234567", "id": "123456789", "uuid":"96c57683-74bf-9d6d-ae7e-f09b097db14a", "outputUri":"s3://bucket/folder/8405154/96c57683-74bf-9d6d-ae7e-f09b097db14a" "status": "PENDING" }

Wenn die Parametervorlage für einen Workflow erforderliche Parameter deklariert, können Sie eine lokale JSON-Datei mit den Eingaben bereitstellen, wenn Sie eine Workflow-Ausführung starten. Die JSON-Datei enthält den genauen Namen der einzelnen Eingabeparameter und einen Wert für den Parameter.

Verweisen Sie auf die JSON-Eingabedatei in--parameters file://<input_file.json>, AWS CLI indem Sie sie zu Ihrer start-run Anfrage hinzufügen. Weitere Hinweise zu Ausführungsparametern finden Sie unterHealthOmics Eingaben ausführen.

Sie können eine Workflow-Version für den Lauf angeben.

aws omics start-run --workflow-id workflow id \ ... --workflow-version-name '1.2.1'

Sie können den Standardspeichertyp für die Ausführung überschreiben, der im Workflow angegeben ist.

aws omics start-run --workflow-id workflow id \ ... --storage-type STATIC --storage-capacity 2400

Sie können die Start-Run-API auch mit einer GPU-Workflow-ID verwenden, wie in der Abbildung gezeigt.

aws omics start-run --workflow-id workflow id \ --role-arn arn:aws:iam::1234567892012:role/service-role/OmicsWorkflow-20221004T164236 \ --name GPUTestRunModel \ --output-uri s3://amzn-s3-demo-bucket1

Informationen zu einer Workflow-Ausführung abrufen

Sie können die ID in der Antwort mit der Get-Run-API verwenden, um den Status einer Ausführung zu überprüfen, wie in der Abbildung gezeigt.

aws omics get-run --id run id

Die Antwort auf diesen API-Vorgang gibt Ihnen Auskunft über den Status der Workflow-Ausführung. Mögliche Status sindPENDING, STARTINGRUNNING, undCOMPLETED. Wenn ein Lauf ausgeführt wirdCOMPLETED, finden Sie eine Ausgabedatei, die outfile.txt in Ihrem Amazon S3 S3-Ausgabe-Bucket aufgerufen wird, in einem Ordner, der nach der Lauf-ID benannt ist.

Der API-Vorgang get-run gibt auch andere Details zurück, z. B. ob es sich bei dem Workflow um Ready2Run oder handeltPRIVATE, die Workflow-Engine und Accelerator-Details. Das folgende Beispiel zeigt die Antwort von get-run für die Ausführung eines privaten Workflows, beschrieben in WDL mit einem GPU-Beschleuniger und ohne der Ausführung zugewiesene Tags.

{ "arn": "arn:aws:omics:us-west-2:123456789012:run/7830534", "id": "7830534", "uuid":"96c57683-74bf-9d6d-ae7e-f09b097db14a", "outputUri":"s3://bucket/folder/8405154/96c57683-74bf-9d6d-ae7e-f09b097db14a" "status": "COMPLETED", "workflowId": "4074992", "workflowType": "PRIVATE", "workflowVersionName": "3.0.0", "roleArn": "arn:aws:iam::123456789012:role/service-role/OmicsWorkflow-20221004T164236", "name": "RunGroupMaxGpuTest", "runGroupId": "9938959", "digest": "sha256:a23a6fc54040d36784206234c02147302ab8658bed89860a86976048f6cad5ac", "accelerators": "GPU", "outputUri": "s3://amzn-s3-demo-bucket1", "startedBy": "arn:aws:sts::123456789012:assumed-role/Admin/<role_name>", "creationTime": "2023-04-07T16:44:22.262471+00:00", "startTime": "2023-04-07T16:56:12.504000+00:00", "stopTime": "2023-04-07T17:22:29.908813+00:00", "tags": {} }

Sie können den Status aller Ausführungen mit dem API-Vorgang „List-Runs“ anzeigen, wie in der Abbildung gezeigt.

aws omics list-runs

Verwenden Sie die API, um alle Aufgaben zu sehen, die für einen bestimmten Lauf abgeschlossen wurden. list-run-tasks

aws omics list-run-tasks --id task ID

Verwenden Sie die get-run-task API, um die Details einer bestimmten Aufgabe abzurufen.

aws omics get-run-task --id <run_id> --task-id task ID

Nach Abschluss der Ausführung werden die Metadaten CloudWatch unter dem Stream an gesendetmanifest/run/<run ID>/<run UUID>.

Das Folgende ist ein Beispiel für das Manifest.

{ "arn": "arn:aws:omics:us-east-1:123456789012:run/1695324", "creationTime": "2022-08-24T19:53:55.284Z", "resourceDigests": { "s3://omics-data/broad-references/hg38/v0/Homo_sapiens_assembly38.dict": "etag:3884c62eb0e53fa92459ed9bff133ae6", "s3://omics-data/broad-references/hg38/v0/Homo_sapiens_assembly38.fasta": "etag:e307d81c605fb91b7720a08f00276842-388", "s3://omics-data/broad-references/hg38/v0/Homo_sapiens_assembly38.fasta.fai": "etag:f76371b113734a56cde236bc0372de0a", "s3://omics-data/intervals/hg38-mjs-whole-chr.500M.intervals": "etag:27fdd1341246896721ec49a46a575334", "s3://omics-data/workflow-input-lists/dragen-gvcf-list.txt": "etag:e22f5aeed0b350a66696d8ffae453227" }, "digest": "sha256:a5baaff84dd54085eb03f78766b0a367e93439486bc3f67de42bb38b93304964", "engine": "WDL", "main": "gatk4-basic-joint-genotyping-v2.wdl", "name": "1044-gvcfs", "outputUri": "s3://omics-data/workflow-output", "parameters": { "callset_name": "cohort", "input_gvcf_uris": "s3://omics-data/workflow-input-lists/dragen-gvcf-list.txt", "interval_list": "s3://omics-data/intervals/hg38-mjs-whole-chr.500M.intervals", "ref_dict": "s3://omics-data/broad-references/hg38/v0/Homo_sapiens_assembly38.dict", "ref_fasta": "s3://omics-data/broad-references/hg38/v0/Homo_sapiens_assembly38.fasta", "ref_fasta_index": "s3://omics-data/broad-references/hg38/v0/Homo_sapiens_assembly38.fasta.fai" }, "roleArn": "arn:aws:iam::123456789012:role/OmicsServiceRole", "startedBy": "arn:aws:sts::123456789012:assumed-role/admin/ahenroid-Isengard", "startTime": "2022-08-24T20:08:22.582Z", "status": "COMPLETED", "stopTime": "2022-08-24T20:08:22.582Z", "storageCapacity": 9600, "uuid": "a3b0ca7e-9597-4ecc-94a4-6ed45481aeab", "workflow": "arn:aws:omics:us-east-1:123456789012:workflow/1558364", "workflowType": "PRIVATE" }, { "arn": "arn:aws:omics:us-east-1:123456789012:task/1245938", "cpus": 16, "creationTime": "2022-08-24T20:06:32.971290", "image": "123456789012.dkr.ecr.us-west-2.amazonaws.com/gatk", "imageDigest": "sha256:8051adab0ff725e7e9c2af5997680346f3c3799b2df3785dd51d4abdd3da747b", "memory": 32, "name": "geno-123", "run": "arn:aws:omics:us-east-1:123456789012:run/1695324", "startTime": "2022-08-24T20:08:22.278Z", "status": "SUCCESS", "stopTime": "2022-08-24T20:08:22.278Z", "uuid": "44c1a30a-4eee-426d-88ea-1af403858f76" }, ...

Run-Metadaten werden nicht gelöscht, wenn sie nicht in den CloudWatch Protokollen vorhanden sind. Sie können die Run-ID auch verwenden, um Workflow-Läufe mit dem CLI-Tool erneut auszuführen. Erfahren Sie mehr und laden Sie das Tool aus dem HealthOmics GitHub Tool-Repository herunter.

Einen Workflow-Lauf erneut ausführen

Das folgende Beispiel zeigt, wie Sie das rerun Tool verwenden, um einen Lauf erneut auszuführen. Sie benötigen die Lauf-ID, die Sie aus den CloudWatch Protokollen abrufen können.

omics-rerun 9876543 --name workflow name --retention-mode REMOVE

Wenn der Lauf in existiert CloudWatch, erhalten Sie eine Antwort ähnlich der folgenden.

Original request: { "workflowId": "9679729", "roleArn": "arn:aws:iam::123456789012:role/DemoRole", "name": "sample_rerun", "parameters": { "image": "123456789012.dkr.ecr.us-west-2.amazonaws.com/default:latest", "file1": "omics://123456789012.storage.us-west-2.amazonaws.com/8647780323/readSet/6389608538" }, "outputUri": "s3://workflow-output-bcf2fcb1" } StartRun request: { "workflowId": "9679729", "roleArn": "arn:aws:iam::123456789012:role/DemoRole", "name": "new test", "parameters": { "image": "123456789012.dkr.ecr.us-west-2.amazonaws.com/default:latest", "file1": "omics://123456789012.storage.us-west-2.amazonaws.com/8647780323/readSet/6389608538" }, "outputUri": "s3://workflow-output-bcf2fcb1" } StartRun response: { "arn": "arn:aws:omics:us-west-2:123456789012:run/9171779", "id": "9171779", "status": "PENDING", "tags": {} }

Wenn der Workflow nicht mehr existiert, erhalten Sie eine Fehlermeldung.