实时计算作业画布操作

FLINK_GRAPH类型实时作业可以通过画布进行编辑。

进入可视化编辑实时作业页面有以下两种方式:

可视化编辑区域中,上方为工具栏,左侧为FLINK_GRAPH实时作业组件列表,右侧为画布。

实时作业画布编辑

关于实时作业画布的基本操作步骤如下:

  1. 用户在编辑画布前,单击画布上方工具栏中的<锁定>按钮,锁定该画布的编辑权限。

  1. 根据实时作业设计,从左侧组件列表中拖拽相关组件到右侧作业设计画布中。实时作业需至少包含一个数据源表组件、一个数据处理组件、一个数据结果表组件。

  1. 选中某组件,组件的下边缘会出现用于连接不同组件的锚点,将鼠标悬于锚点上,鼠标会变为图标,此时按住鼠标左键,并拖至其他组件,即可进行组件间的连接。在不同组件之间建立连接,即可得到实时作业。

作业的连线限制如下:

  • 不允许数据源线/数据维表和数据结果表直接连线。

  • 同一节点不能和自己连线。

  • 节点的每个锚点只能连一条线。

  • 数据维表只能和数据处理的join节点连线,且join只能和一个数据维表连线。

  • topN后只能和数据结果表连线。

  • cep后不能和cepaggregateoverAggregatewindowJoin连线。

 

  1. 双击画布中各组件图标,弹出组件配置窗口,不同组件的参数说明请参见实时作业组件配置参数介绍

  • 在实时作业画布中,连接组件后,双击组件会触发基础语法校验(该设计是基于使用便利性及校验完善性综合考虑)。因此,在特定场景下,用户进行组件配置时,可能会触发Flink的特殊规则,此时需要根据界面提示的Flink异常信息自行处理。

  • 在实时作业画布中,数据结果表组件支持常见数据类型的数据输出(不同数据源类型支持的范围不同),但无法保证作业产生的所有数据类型都能保持原类型输出。因此,当存在特殊的数据类型时,需要用户根据具体业务场景,先将特殊数据类型的数据转换为数据结果表组件支持的数据类型,再进行输出。

 

  1. 编辑完成后,点击工具栏中的图标,保存作业。

  1. 单击工具栏右端的<调试>按钮,进入作业调试界面。仅锁定状态且已保存的作业才可进行调试。

  1. 单击界面右上角的<导入文件>按钮或<添加数据>按钮,向数据源表/数据维表中添加对应字段的数据。

  1. 添加完数据后,单击<调试>按钮进行作业运行,调试信息展示在下方黑色背景区域中。

  1. 调试信息将会自动刷新至作业调试完成,用户也可单击<刷新调试信息>按钮自行刷新调试信息。

  1. 调试完成后,单击<查看结果>按钮查看作业调试后的数据。

调试功能的注意事项如下:

·          进入调试界面前请对作业进行保存,调试仅对已保存的作业进行数据调试。

·          导入文件仅支持CSV格式的文件,格式要求:换行符为回车,分隔符为英文逗号,编码格式为UTF-8,且文件大小小于10M。文件中请填写字段及字段类型匹配的内容,若存在不匹配,则文件上传成功后,将会出现空值。

·          若存在多个表,则添加的数据/导入的数据只添加到当前tab页对应的表中。若需向其他表添加数据,请切换tab标签后重新添加/导入数据。

·          调试功能不支持对使用自定义函数、时空函数的作业或数据维表为HBase表的作业进行调试。

·          调试是对作业逻辑的模拟运行,不代表真实运行情况,读取的也仅为调试数据,不代表对真实数据源中数据的处理,具体数据处理以作业运行为准。

·          调试为方便对时间类型字段(DATETIMESTAMP)进行显示,约定DATE类型输出格式为yyyy-MM-dd格式,输入的调试数据也请以此格式为唯一标准格式。约定TIMESTAMP类型输出格式为yyyy-MM-dd HH:mm:ss,输入的调试数据也请以此格式为唯一标准格式。此约定仅适用于调试数据和调试结果数据,实际作业对于这两个字段的格式要求请以具体的数据源为准。

·          调试数据中,对于数值类型,如INTFLOATDOUBLEBIGINT等,请勿在数值类型中输入非数字字符,或者超过相应数值类型最大值等。避免调试解析调试数据出现问题,从而影响调试功能。

·          如果作业中的数据源表开启了时间属性,请将数据处理算子的窗口缩短在一分钟以内。

 

  1. 调试完成后,可通过单击<切换可视化>进入实时作业画布编辑界面。

  1. 单击<解锁>按钮,释放权限。

切换SQL

画布编辑完成后,单击工具栏右端的<切换SQL>按钮,进入SQL界面。SQL界面只展示当前实时作业的SQL语句,单击<格式化>按钮,可以对语句格式结构进行整理。

切换SQL不需要保存作业画布即可查看。但需要使作业画布中组件达到作业构成的基本结构,且各个组件参数均填写完成,才可查看当前作业的SQL