运行流程
在一个数据处理流程当中,可以有一个或多个加载数据用的开始节点,同时也必须要有一个或多个输出数据的输出节点。
数据经过 BaskAdapt 的各种处理好,需要输出到具体的目标数据库表中处理好的数据才能被其它地方使用,所以在一个数据处理流程中必须要有一个或多个输出节点。
当一个完整的数据处理流程配置好之后,就可以点击工具栏上的图标来运行当前流程。
在运行流程时,有两种情况,一种是将流程运行到指定的输出节点;一种是运行到所有的输出节点。
运行到指定的输出节点
运行的指定的输出节点,就意味着处理其它输出节点。要实现这一功能,也比较简单,方法就是在流程画布中选中目标输出节点即可,这时鼠标移到图标上就会显示如下图所示的提示。
上图中,BaskAdapt 数据处理流程有两个输出节点,当前选中的是 输出 2 ,所以在鼠标移至工具栏上方的运行图标上显示提示为 运行流程至【输出 2】节点 。
运行到所有的输出节点
如果当前画布中未选中任何节点,或选中的不是输出类型节点,那么将鼠标移至工具栏上方的运行图标上显示提示就为 运行整个流程。 如下图所示:
上图中选中的是清理节点,当鼠标移至工具栏上方的运行图标上显示提示就为 运行整个流程。
运行测试
无论是运行到某个具体的输出节点,还是运行到所有的输出节点(运行整个流程)。点击后系统即开始运行,如下图所示:
如上图所示,在设计器中运行流程时,系统会显示当前处理进展,当前正在处理的节点,以及上一节点处理时长等信息,以帮助我们查看整个流程的处理进度,这对于复杂数据处理流程或流程中数据比较多的情况是很有价值的。
流程运行完成后,系统还会向我们展示整个流程的运行情况,包含每个节点处理的数据量、处理时长,如果是输出类型节点还会显示输出到目标数据库表的数据量等信息,如下图所示:
在设计器中设计时我们看到的数据是由加载数据节点的数据样本量决定的,无论什么类型的数据加载节点,默认的数据样本数量都是 5000 条,也就是默认的在浏览器的设计器中看到的数据量不超过 5000 条,但在点击工具栏上的运行按钮时就不会受限数据样本数量的限制,这一点我们需要注意。
API运行流程
对于有API调用流程需求的开发者可以通过如下的API调用流程:
BaskFile file = FileManager.ins.loadFile(id); //文件ID
//file.setVersion(xxx); 可以通过这个方法指定具体版本,否则就用最新版本运行
FlowDefinition definition = FlowManager.ins.loadFlowDefinition(file);
ExecuteResponse response = FlowExecutor.ins.execute(definition, parameters);//parameters可以为一个map,用于指定流程运行需要的相关参数
ExecuteResponse 是流程的执行结果
定时运行数据处理流程
除了可以在设计器中手工运行数据处理流程外,我们还可以通过 BaskServer 平台中提供的 任务 功能,定期运行我们的数据处理流程。如下图所示:
如果需要运行某个数据处理流程,首先需要发布该流程,流程一旦发布,就可以在 BaskServer 平台的 任务 处选择它,让其周期性运行,如下图所示:
上图中,通过点击 添加任务,就可以将运行计划与要运行的数据处理流程对应起来,从而实现定时运行数据处理流程的目的。
关于 BaskServer 平台的 任务 详细配置,大家可以参考 BaskServer 平台文档的 任务管理 部分的介绍,这里不再赘述。