本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 HealthOmics 中開始執行
當您開始執行時,您可以指定 HealthOmics 配置的資源,以便在執行期間使用。
指定執行儲存類型和儲存量 (用於靜態儲存)。為了確保資料隔離和安全性,HealthOmics 會在每次執行開始時佈建儲存體,並在執行結束時取消佈建儲存體。如需其他資訊,請參閱 在 HealthOmics 工作流程中執行儲存類型。
指定輸出檔案的 Amazon S3 位置。如果您同時執行大量工作流程,請針對每個工作流程使用個別的 Amazon S3 輸出 URIs,以避免儲存貯體調節。如需詳細資訊,請參閱 Amazon S3 使用者指南中的使用字首組織物件,以及最佳化 Amazon S3 效能白皮書中的水平擴展儲存連線。
您也可以指定執行優先順序。優先順序如何影響執行取決於執行是否與執行群組相關聯。如需其他資訊,請參閱 執行優先順序。
如果工作流程有一或多個版本,您可以在開始執行時指定版本。如果您未指定版本,HealthOmics 會啟動預設工作流程版本。
使用 HealthOmics API 時,您可以為每個執行提供唯一的請求 ID。請求 ID 是 HealthOmics 用來識別重複請求的等冪字符。 和 只會啟動一次執行。
注意
您可以在開始執行時指定 IAM 服務角色。或者,主控台可以為您建立服務角色。如需詳細資訊,請參閱的服務角色 AWS HealthOmics。
HealthOmics 執行參數
當您開始執行時,您可以在執行參數 JSON 檔案中指定執行輸入,也可以內嵌輸入參數值。如需管理執行參數 JSON 檔案大小的資訊,請參閱 管理執行參數大小。
HealthOmics 支援下列參數值的 JSON 類型。
| JSON 類型 | 範例索引鍵和值 | 備註 |
|---|---|---|
| boolean | "b":true | 值不為引號,且全部為小寫。 |
| integer | 「i」:7 | 值不在引號中。 |
| number | "f":42.3 | 值不在引號中。 |
| string | "s":"字元" | 值以引號表示。針對文字值和 URIs使用字串類型。URI 目標必須是預期的輸入類型。 |
| 陣列 | "a":【1,2,3】 | 值不在引號中。陣列成員必須各自具有輸入參數定義的類型。 |
| object | "o":{"left":"a", "right":1} | 在 WDL 中,物件映射至 WDL 配對、映射或結構 |
使用主控台啟動執行
開始執行
-
開啟 HealthOmics 主控台
。 -
如有需要,請開啟左側導覽窗格 (≡)。選擇執行。
-
在執行頁面上,選擇開始執行。
-
在執行詳細資訊面板中,提供下列資訊
-
工作流程來源 - 選擇擁有的工作流程或共享工作流程。
-
工作流程 ID - 與此執行相關聯的工作流程 ID。
-
工作流程版本 (選用) - 選取要用於此執行的工作流程版本。如果您未選取版本,則執行會使用工作流程預設版本。
-
執行名稱 - 此執行的獨特名稱。
-
執行優先順序 (選用) - 此執行的優先順序。較高的數字會指定較高的優先順序,而最高優先順序的任務會先執行。
-
執行儲存類型 - 在此指定儲存類型,以覆寫為工作流程指定的預設執行儲存類型。靜態儲存會配置執行的固定儲存量。動態儲存會視需要擴展和縮減執行中每個任務的規模。
-
執行儲存容量 - 針對靜態執行儲存,指定執行所需的儲存量。此項目會覆寫為工作流程指定的預設執行儲存量。
-
選取 S3 輸出目的地 - 將儲存執行輸出的 S3 位置。
-
輸出儲存貯體擁有者的帳戶 ID (選用) - 如果您的帳戶未擁有輸出儲存貯體,請輸入儲存貯體擁有者的 AWS 帳戶 ID。此資訊是必要的,以便 HealthOmics 可以驗證儲存貯體擁有權。
-
執行中繼資料保留模式 - 選擇是否要保留所有執行的中繼資料,或在您的帳戶達到執行次數上限時,讓系統移除最舊的執行中繼資料。如需詳細資訊,請參閱HealthOmics 執行的執行保留模式。
-
-
在服務角色下,您可以使用現有的服務角色或建立新的服務角色。
-
(選用) 對於標籤,您最多可以將 50 個標籤指派給執行。
-
選擇下一步。
-
在新增參數值頁面上,提供執行參數。您可以上傳指定參數的 JSON 檔案,或手動輸入值。
-
選擇下一步。
-
在執行群組面板中,您可以選擇指定此執行的執行群組。如需詳細資訊,請參閱使用 HealthOmics 執行群組。
-
在執行快取面板中,您可以選擇為此執行指定執行快取。如需詳細資訊,請參閱使用主控台設定具有執行快取的執行。
-
選擇 Review and start run (檢閱並開始執行)。
-
檢閱執行組態後,選擇開始執行。
使用 API 開始執行
使用 Start-run API 操作來建立和啟動執行。
下列範例指定工作流程 ID 和服務角色。此範例會將保留模式設定為 REMOVE。如需保留模式的詳細資訊,請參閱 HealthOmics 執行的執行保留模式。
aws omics start-run --workflow-id\ --role-arn arn:aws:iam::1234567892012:role/service-role/OmicsWorkflow-20221004T164236 \ --nameworkflow id\ --retention-mode REMOVEworkflow name
為了回應,您會取得下列輸出。對執行uuid而言是唯一的,而且 與 outputUri可用於追蹤輸出資料的寫入位置。
{ "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
如果工作流程的參數範本宣告任何必要的參數,您可以在啟動工作流程執行時提供輸入的本機 JSON 檔案。JSON 檔案包含每個輸入參數的確切名稱,以及 參數的值。
將 --parameters file://<input_file.json>新增至您的start-run請求 AWS CLI ,以參考 中的輸入 JSON 檔案。如需執行參數的詳細資訊,請參閱 HealthOmics 執行輸入。
xx
您可以requestId為每個執行提供唯一的 。請求 ID 是 HealthOmics 用來識別重複請求的等冪字符。 和 只會啟動一次執行。
如果您使用基礎設施 (例如 Lambda 函數或步驟函數) 來協調執行開始,最佳實務是在每個 StartRun 請求中提供唯一的請求 ID。這可確保如果您的基礎設施執行重試 (例如從上游錯誤復原),HealthOmics 不會啟動重複的執行。
xx
您可以指定執行的工作流程版本。
aws omics start-run --workflow-id\ ... --workflow-version-name '1.2.1'workflow id
xx
您可以覆寫工作流程中指定的預設執行儲存體類型。
aws omics start-run --workflow-id\ ... --storage-type STATIC --storage-capacity 2400workflow id
xx
aws omics start-run --workflow-id\ --role-arn arn:aws:iam::1234567892012:role/service-role/OmicsWorkflow-20221004T164236 \ --name GPUTestRunModel \ --output-uri s3://amzn-s3-demo-bucket1workflow id
取得執行的相關資訊
您可以在回應中使用 ID 搭配 get-run API 來檢查執行的狀態,如下所示。
aws omics get-run --idrun id
此 API 操作的回應會告訴您工作流程執行的狀態。可能的狀態為 PENDING、RUNNING、 STARTING和 COMPLETED。當執行為 時COMPLETED,您可以在輸出 outfile.txt Amazon S3 儲存貯體、以執行 ID 命名的資料夾中找到名為 的輸出檔案。
get-run API 操作也會傳回其他詳細資訊,例如工作流程是 Ready2Run還是 PRIVATE、工作流程引擎和加速器詳細資訊。下列範例顯示私有工作流程執行的 get-run 回應,如使用 GPU 加速器的 WDL 中所述,且沒有指派給執行的標籤。
{ "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": {} }
您可以使用 list-runs API 操作查看所有執行的狀態,如下所示。
aws omics list-runs
若要查看特定執行完成的所有任務,請使用 list-run-tasks API。
aws omics list-run-tasks --idtask ID
若要取得任何特定任務的詳細資訊,請使用 get-run-task API。
aws omics get-run-task --id <run_id> --task-idtask ID
執行完成後,中繼資料會傳送至串流 下的 CloudWatchmanifest/run/<run ID>/<run UUID>。
以下是資訊清單的範例。
{ "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" }, ...
如果 CloudWatch 日誌中沒有執行中繼資料,則不會將其刪除。