CWL (common workflow language) 简介


CWL is a way to describe command line tools and connect them together to create workflows. Because CWL is a specification and not a specific piece of software, tools and workflows described using CWL are portable across a variety of platforms that support the CWL standard.

CWL has roots in “make” and many similar tools that determine order of execution based on dependencies between tasks. However unlike “make”, CWL tasks are isolated and you must be explicit about your inputs and outputs. The benefit of explicitness and isolation are flexibility, portability, and scalability: tools and workflows described with CWL can transparently leverage technologies such as Docker and be used with CWL implementations from different vendors. CWL is well suited for describing large-scale workflows in cluster, cloud and high performance computing environments where tasks are scheduled in parallel across many nodes.

CWL是一种描述命令行的工具并能够使用命令行创建工作流,由于CWL是一种要求(类似规范)已经并不是一种特定的软件,工具。由CWL描述的工作流能够在支持CWL标准的多种平台上使用。

CWL任务是独立的,使用者必须明确输入和输出。这种明确和独立是复杂,可移植和可扩展的:工具和CWL描述的工作流能够轻易胜任一些工作例如在不同的平台上CWL Docker的实现。CWL非常适合描述大规模集群数据流,云数据流以及多点平行运行的高性能计算环境。

// CWL是一种规则,采用的是命令行与输入输出分开的方式。如果有人同样在做CWL相关工作或者在学习CWL的话,欢迎交流,感激涕零。如果对文章有任何问题和意见,感谢提出指正。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,关于使用 Common Workflow 在 JAVA 项目中的问题,我可以为您提供一些帮助和解答。 Common Workflow LanguageCWL)是一种用于描述和执行计算工作流的开放标准语言,其目标是实现跨计算环境的互操作性。在 JAVA 项目中使用 CWL 需要先安装 CWL 工具箱,并进行配置。具体操作步骤如下: 1. 首先,在您的 JAVA 项目中添加 CWL 工具箱。您可以使用 CWL 工具箱官方网站提供的 Maven 依赖项来添加工具箱,例如: ``` <dependency> <groupId>org.commonwl</groupId> <artifactId>cwl-java</artifactId> <version>1.0.20190831223836</version> </dependency> ``` 2. 然后,您可以创建一个 CWL 工作流定义文件(通常以“.cwl”为后缀),并在其中描述您的工作流。例如,下面是一个简单的 CWL 工作流定义文件: ``` cwlVersion: v1.0 class: CommandLineTool baseCommand: echo inputs: message: type: string inputBinding: position: 1 outputs: - id: output_message type: stdout ``` 这个 CWL 工作流定义文件描述了一个简单的工作流,其任务是从输入参数中获取一条消息,并在控制台上输出这条消息。其中,“cwlVersion”指定了 CWL 的版本,而“inputs”和“outputs”部分分别定义了工作流的输入和输出参数。 3. 最后,您可以使用“java-cwl-runner”命令来运行 CWL 工作流定义文件。例如,如果您将上面的 CWL 工作流定义文件保存为“example.cwl”,并将其输入参数设置为“Hello World”,则可以使用以下命令来运行该工作流: ``` java -jar cwl-runner.jar example.cwl message=Hello World ``` 以上就是在 JAVA 项目中使用 CWL 的基本操作流程,希望对您有所帮助。如果您有任何其他相关问题,也欢迎随时向我提出。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值