Starte einen Lauf 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.

Starte einen Lauf in HealthOmics

Wenn Sie einen Lauf starten, geben Sie die Ressourcen an, die für HealthOmics die Verwendung während des Laufs zugewiesen werden.

Geben Sie den Speichertyp und die Speichermenge für den Lauf an (für statischen Speicher). Um Datenisolierung und Sicherheit zu gewährleisten HealthOmics , wird der Speicher zu Beginn jedes Laufs bereitgestellt und am Ende des Laufs deprovisioniert. Weitere Informationen finden Sie unter Speichertypen in HealthOmics Workflows ausführen.

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.

Sie können auch die Ausführungspriorität angeben. 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 ein Workflow über eine oder mehrere Versionen verfügt, können Sie beim Starten des Laufs eine Version angeben. Wenn Sie keine Version angeben, HealthOmics wird die Standard-Workflow-Version gestartet.

Wenn Sie die HealthOmics API verwenden, können Sie für jeden Lauf eine eindeutige Anforderungs-ID angeben. Die Anforderungs-ID ist ein Idempotenz-Token, das zur Identifizierung doppelter Anfragen HealthOmics verwendet wird und die Ausführung nur einmal startet.

Anmerkung

Sie geben eine IAM-Dienstrolle 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 Lauf zu starten
  1. Öffnen Sie die HealthOmics -Konsole.

  2. Öffnen Sie bei Bedarf den linken Navigationsbereich (±1). Wählen Sie 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 Run-Gruppen verwenden.

  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 API-Vorgang start-run, um einen Lauf zu erstellen und zu starten.

Im folgenden Beispiel werden die Workflow-ID und die Servicerolle angegeben. In diesem Beispiel wird der Aufbewahrungsmodus auf festgelegtREMOVE. 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" }

xx

Wenn die Parametervorlage für einen Workflow erforderliche Parameter deklariert, können Sie beim Starten einer Workflow-Ausführung eine lokale JSON-Datei mit den Eingaben bereitstellen. Die JSON-Datei enthält den genauen Namen jedes Eingabeparameters 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.

xx

Sie können requestId für jeden Lauf ein Unikat angeben. Die Anforderungs-ID ist ein Idempotenz-Token, das zur Identifizierung doppelter Anfragen HealthOmics verwendet wird und die Ausführung nur einmal startet.

Wenn Sie Infrastruktur (wie Lambda-Funktionen oder Step-Funktionen) für die Orchestrierung von Runstarts verwenden, empfiehlt es sich, in jeder StartRun Anfrage eine eindeutige Anforderungs-ID anzugeben. Auf diese Weise wird sichergestellt, dass bei einem erneuten Versuch Ihrer Infrastruktur (z. B. bei der Wiederherstellung nach Upstream-Fehlern) HealthOmics kein doppelter Lauf gestartet wird.

xx

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'

xx

Sie können den Standard-Run-Speichertyp überschreiben, der im Workflow angegeben ist.

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

xx

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

Informiere dich über einen Lauf

Sie können die ID in der Antwort mit der Get-Run-API verwenden, um den Status eines Laufs 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 sehen, 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.