数据加工

最近更新时间: 2019-11-26 15:30:28

数据加工支持的算子简介

  • Source算子 作用: 数据加工的数据来源,可以选择多种数据源进行数据 操作方式: 拖拽Source算子到画板中,显示库表选择框,选择需要进行加工的库表点击确定后,Source变为缩略态。双击Source,显示编辑态,在编辑态中可以在过滤语句中添加过滤条件,将希望后续输出的字段‘输出’进行勾选。

  • Target算子 作用: 整个数据数据加工的数据目标。 操作方式: 拖拽Target算子到画板中,显示库表选择框,选择需要进行加工的库表点击确定后,target变为缩略态。将上游算子连接到target算子。双击显示编辑态,在编辑态中进行上游算子字段和目标表字段的映射关系设置,并根据不同的目标源进行写入方式设置。

  • Map算子 作用: 基于行级的数据项复制、修改、计算。在同行记录中可新增、减少数据项 操作方式: 拖拽Map算子到画板中,将上游算子连线到Map算子,上游算子勾选输出的数据会同步到Map算子中,双击Map算子进入Map编辑状态。可以在每行表达式中可以进行行级数据处理,如:数据类型转换,例如to_date(Port1,’yyyyMMdd’),数据项计算,例如(Port1+port2)/Port3,新增变量,例如Port2=Port1+1等。将希望后续输出的字段‘输出’进行勾选。

  • Filter算子 作用: 按照条件过滤掉不符合条件的行。 操作方式: 拖拽Filter算子到画板中,将上游算子连接到Filter算子,上游算子勾选输出的数据会同步到Filter算子中,双击Filter算子进入编辑状态。在Filter条件中添加过滤条件。将希望后续输出的字段‘输出’进行勾选。

  • Sample算子 作用: 按照一定的规律抽取数据,目前只支持按照百分比进行数据抽取 操作方式: 拖拽Sample算子到画板中,将上游算子连接到Sample算子,上游算子勾选输出的数据会同步到Sample算子中,双击算子进入编辑状态。在Sample条件中添加采样条件,按照百分比进行数据抽样。将希望后续输出的字段‘输出’进行勾选。

  • Sorter算子 作用: 对数据按照某些字段进行升序/降序的排序。 操作方式: 拖拽Sorter算子到画板中,将上游算子连接到Sorter算子,上游算子勾选输出的数据会同步到Sorter算子中,双击算子进入编辑态。在排序字段中添加需要进行排序的字段,并选择排序类型是升序还是降序。将希望后续输出的字段‘输出’进行勾选。

  • Join算子 作用: 对两个数据源进行连接操作。只支持等值连接。Join只支持连接两个数据源,如果有多个数据源进行连接,使用多个Join。 操作方式: 拖拽Join算子到画板中,Join算子可以接收两个输入源,将一个上游算子拖拽到Join作为Join的master,将第二个上游算子拖拽到Join作为Join的detail。

  • Union算子 作用: 合并两个数据源到一个结果集。与执行“UNION ALL”SQL语句结果相似,不会删除重复行。Union只支持合并两个数据源,如果有多个数据源进行合并,使用多个Union。 操作方式: 拖拽Union算子到画板中,Union算子可以接收两个输入源,将一个上游算子拖拽到Union作为Union的第一个输入组,在选另一个上游算子拖拽到Union中作为Union的第二个输入组。第一个输入组的字段信息会显示在Union输出列表中,调整第一输入组,第二输入组和Union输出列表。需要字段类型一致。在Union输出列表中,将希望后续输出的字段‘输出’进行勾选。

  • Aggregator算子 作用: 对多组记录进行聚合计算 操作方式: 拖拽Aggregator算子到画板中,将上游算子连线到Aggregator算子,上游算子勾选输出的数据会同步到Aggretator算子中,双击Aggregator算子进入Aggregator算子编辑状态。对于Aggregator算子需要至少有一个分组字段,增加分组字段后,再添加需要进行聚合计算的字段,下拉勾选出对字段进行sum、avg、max、min等聚合运算。 在分组字段和聚合字段上将希望后续输出的字段‘输出’进行勾选。

目前数据加工支持的算子数量。以及每个算子的输入、输出及数据来源。

算子 输入 输出 数据来源
Source算子 库多表选择
Target算子 1 库表选择和上游算子
Map算子 1 上游算子
Filter算子 1 上游算子
Sample算子 1 上游算子
Sorter算子 1 上游算子
Join算子 2 上游算子
Union算子 2 上游算子
Aggregator算子 1 上游算子