跳过主要内容

数据流规范

数据流是通过 YAML 文件指定的。 本节介绍我们文件格式当前的草案。 现在它仅包含基本功能,稍后我们将在引入更多高级特性时进行扩展。

数据流

数据流通过以下格式指定:

nodes:
- id: foo
# ... (见下文)
- id: bar
# ... (见下文)

输入和输出

每个算子或自定义节点的输出都有一个单独的命名空间。 要引用输出,可以使用 <operator>/<output> 语法。 这样算子之间就不会发生名称冲突。

输入操作使用 <name>: <operator>/<output> 语法指定,其中 <data> 是使用于操作的内部名称。 此名称映射的主要优势,是相同的算子,可被在不同输入上多次重用执行。

节点

节点被如下格式定义:

nodes:
- id: some-unique-id
# 应用多算子的结点
operators:
- id: operator-1
# ... (见下文)
- id: operator-2
# ... (见下文)

- id: some-unique-id-2
custom:
source: path/to/timestamp
env:
- ENVIRONMENT_VARIABLE_1: true
working-directory: some/path

inputs:
input_1: operator_2/output_4
input_2: custom_node_2/output_4
outputs:
- output_1

# 标识算子
- id: some-unique-id-3
operator:
# ... (见下文)

节点通过 run 字段指定可执行文件名称和参数,就像执行正常的 shell 操作一样。 通过 env 可选字段,能够为进程设置环境变量。 可选字段 working-directory 允许程序启动后覆写目录。

与 dora 数据流的其余部分集成,自定义节点必须指定其输入和输出,类似于算子。 他们能在算子和其它自定义节点间引用输出。