View a markdown version of this page

Imballa e fornisci un HealthOmics definizione del flusso di lavoro - AWS HealthOmics

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Imballa e fornisci un HealthOmics definizione del flusso di lavoro

Quando crei un flusso di lavoro o una versione del flusso di lavoro, fornisci la definizione da una sola fonte: un archivio ZIP che invii con la richiesta, un archivio ZIP in Amazon S3 o un Git-based repository. Una richiesta che include più di una fonte di definizione ha esito negativo. I parametri in questo argomento si applicano sia a CreateWorkflow e CreateWorkflowVersion operazioni. Per le procedure complete, vedere Crea un flusso di lavoro privato e Crea una versione del flusso di lavoro.

Nota

HealthOmics aggiunge alcune definizioni del flusso di lavoro quando si crea un flusso di lavoro. Per sapere quali motori sono collegati, se i risultati bloccano il flusso di lavoro e come leggerli, vedi Il flusso di lavoro si interrompe HealthOmics.

Scegli una fonte di definizione del flusso di lavoro

Usa questa fonte Parametro API Dimensione massima AWS CLI contrassegnare
Un archivio ZIP sul tuo computer locale. definitionZip 4,4 MB --definition-zip fileb://my-definition.zip
Un archivio ZIP in un bucket Amazon S3. Il bucket deve essere nello stesso AWS Regione come flusso di lavoro. definitionUri 100 MB --definition-uri s3://amzn-s3-demo-bucket1/my-definition.zip
A: supportata Git-based repository, tramite un AWS CodeConnections connessione. definitionRepository 1 archivio GiB, 100 MiB per file --definition-repository con un valore JSON

Ulteriori considerazioni:

Layout dell'archivio ZIP e file di definizione principale

Includi tutti i file importati dalla definizione principale, ad esempio i flussi di lavoro secondari, nextflow.confige qualsiasi bin script.

Un file di definizione è un file la cui estensione corrisponde a un motore supportato, ad esempio .wdl, .nf, o .cwl. Se ometti main, HealthOmics lo sceglie tra i file di definizione più vicini alla radice dell'archivio. Ignora i file e le cartelle nascosti e ignora i file di definizione presenti più in profondità nell'archivio. La selezione automatica richiede anche un unico motore, perché l'archivio contiene i file di definizione di un motore o perché impostati engine. Dei file al livello più vicino:

  • Se esiste esattamente un file di definizione, HealthOmics lo usa, qualunque sia il suo nome.

  • Se ce ne sono diversi, HealthOmics usa quello denominato main.wdl, main.nf, o main.cwl.

In due casi HealthOmics impossibile risolvere l'archivio. La richiesta stessa ha esito positivo e il flusso di lavoro o la versione del flusso di lavoro inizia nel CREATING, ma poi passa a FAILEDe il messaggio di stato ne indica il motivo:

  • Zip file contains multiple workflow definition types — l'archivio contiene i file di definizione per più di un motore e tu non li hai impostati engine. Questo vale indipendentemente dal fatto che tu abbia impostato o meno main. Impostare engineo rimuovi i file dell'altro motore. HealthOmics riporta questo motivo per primo quando si applicano entrambi i casi.

  • Zip file contains multiple top-level workflow definition files — hai omesso main, diversi file di definizione si trovano al livello più vicino e non esattamente uno di essi è denominato main.wdl, main.nf, o main.cwl. Impostare main sul percorso di quello che desideri.

Per scegliere tu stesso il file di definizione principale, imposta main (--main) al suo percorso, relativo alla radice dell'archivio. Il percorso può contenere fino a 128 caratteri.

Ad esempio, per un archivio il cui file di definizione principale è workflow-definition/main-file.wdl:

--main workflow-definition/main-file.wdl

Impostare engine (--engine) per assegnare un nome personalizzato al motore, per risolvere un archivio che contiene più di un file di definizione del motore o per utilizzare il motore WDL lenient.

Considerate una cartella del flusso di lavoro sul computer locale con il seguente layout:

my-workflow/ main.wdl tasks/align.wdl tasks/call-variants.wdl

Crea l'archivio dall'interno di quella cartella, in modo che main.wdl e il tasks la cartella si trova alla radice dell'archivio. Il comando seguente aggiunge anche file e cartelle nascosti, ad esempio .git cartella in un repository clonato. Questi vengono conteggiati ai fini della dimensione della definizione, quindi escludi quelli che non ti servono, ad esempio, con -x '.*' -x '*/.*':

cd my-workflow zip -r ../my-definition.zip . cd ..

main.wdl è ora l'unico file di definizione nella radice dell'archivio, quindi puoi ometterlo main:

main.wdl tasks/align.wdl tasks/call-variants.wdl

Invia l'archivio in linea o tramite Amazon S3

definitionZip è un parametro binario. Quando si utilizza il AWS CLI, passa l'archivio con il fileb:// prefisso e il AWS CLI legge il file e lo codifica per te. Il AWS Gli SDK eseguono la codifica per te. Se chiami l'API direttamente tramite HTTP, invia l'archivio come stringa con codifica base64.

Il modello di parametro negli esempi seguenti è facoltativo. Se lo ometti, HealthOmics ricava i parametri di esecuzione dalla definizione del flusso di lavoro. Per ulteriori informazioni, consulta File modello di parametri per i flussi HealthOmics di lavoro.

Quanto segue AWS CLI L'esempio crea un flusso di lavoro inviando l'archivio ZIP con la richiesta. Sostituisci ogni valore in corsivo:

aws omics create-workflow \ --name my-workflow-name \ --definition-zip fileb://my-definition.zip \ --parameter-template file://my-parameter-template.json

Per un archivio più grande di definitionZip limite in Scegli una fonte di definizione del flusso di lavoro, caricalo in un bucket Amazon S3 nella stessa regione del flusso di lavoro e utilizzalo definitionUri invece. Sostituisci ogni valore in corsivo e sostituisci il bucket con il tuo:

aws s3 cp my-definition.zip s3://amzn-s3-demo-bucket1/my-definition.zip aws omics create-workflow \ --name my-workflow-name \ --definition-uri s3://amzn-s3-demo-bucket1/my-definition.zip \ --parameter-template file://my-parameter-template.json

Imposta lo spazio di archiviazione predefinito per le esecuzioni

Consigliamo l'archiviazione a esecuzione dinamica per la maggior parte dei flussi di lavoro. Scegli l'archiviazione a esecuzione statica in uno di questi casi:

  • Il flusso di lavoro utilizza più di 9,6 TiB di dati e le sue attività beneficiano di un elevato livello di supporto I/O.

  • Più di 100 attività sparse lette contemporaneamente dallo storage condiviso.

Per ulteriori informazioni su ciascun tipo di storage in esecuzione, incluse le caratteristiche di throughput e su come dimensionare lo storage statico in esecuzione, consulta Esegui tipi di storage nei flussi HealthOmics di lavoro e Esegui l'ottimizzazione per un privato HealthOmics flusso di lavoro.

Il storageType (--storage-type) e storageCapacity (--storage-capacityi parametri impostano i valori predefiniti per le esecuzioni che utilizzano il flusso di lavoro. È possibile sovrascrivere entrambi in fase di esecuzione, come descritto in Inizia un run in HealthOmics. Abbinali come segue:

  • storageType di DYNAMIC — HealthOmics aumenta e riduce lo storage di esecuzione in base all'utilizzo del file system. Non impostare storageCapacity. In tal caso, la richiesta ha esito negativo: CreateWorkflow resoconti You cannot set the storage capacity for workflows that use DYNAMIC run storage typee CreateWorkflowVersion resoconti You cannot set the storage capacity for workflow version that use DYNAMIC run storage type.

  • storageType di STATIC — HealthOmics assegna una quantità fissa di spazio di archiviazione in esecuzione, quindi imposta anche storageCapacity, in GiB. Se né il flusso di lavoro né l'esecuzione specificano una capacità, l'esecuzione utilizza 1.200 GiB. Il limite massimo è un limite per account. HealthOmics esegue il provisioning dello storage statico solo come 1.200 GiB o come multiplo di 2.400 GiB e arrotonda qualsiasi altro valore alla dimensione successiva supportata. Ad esempio, HealthOmics fornisce 1.200 GiB per una capacità inferiore a 1.200 GiB.

L'esempio seguente imposta lo storage di esecuzione predefinito su 1.200 GiB di storage statico:

aws omics create-workflow \ --name my-workflow-name \ --definition-zip fileb://my-definition.zip \ --storage-type STATIC \ --storage-capacity 1200