首页 / 专利库 / 企业组织 / 商业智能 / 工作流系统中的BI节点执行方法、装置、设备及介质

工作流系统中的BI节点执行方法、装置、设备及介质

阅读:227发布:2020-05-12

专利汇可以提供工作流系统中的BI节点执行方法、装置、设备及介质专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种工作流系统中的BI 节点 执行方法、装置、设备及介质,涉及金融科技领域,该方法包括步骤:工作流系统对应的调度器执行BI系统对应的前置节点,得到对应表格格式的第一结果集;根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集;将所述第二结果集发送给所述BI节点,以供所述BI节点根据所述第二结果集生成第三结果集,并将所述第三结果集对应的作业标识存储在所述工作流系统对应的上下文信息中。本发明降低了工作流节点对应外部系统之间数据传输的难度和数据传输成本,以及降低了外部系统之间数据传输的出错率。,下面是工作流系统中的BI节点执行方法、装置、设备及介质专利的具体信息内容。

1.一种工作流系统中的商业智能BI节点执行方法,其特征在于,所述工作流系统中的BI节点执行方法包括以下步骤:
工作流系统对应的调度器执行BI系统对应的前置节点,得到对应表格格式的第一结果集;
根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集;
将所述第二结果集发送给所述BI节点,以供所述BI节点根据所述第二结果集生成第三结果集,并将所述第三结果集对应的作业标识存储在所述工作流系统对应的上下文信息中。
2.如权利要求1所述的工作流系统中的BI节点执行方法,其特征在于,所述根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集的步骤包括:
提取所述第一结果集中的元数据,将所述元数据作为调用参数调用所述BI系统的执行接口
通过所述执行接口将所述元数据中的字段名称和字段类型更新到所述BI系统对应的视图模型信息中,并将所述第一结果集的存储路径更新到所述BI系统对应视图的视图内容信息中;
调用所述BI系统对应的显示接口获取所述BI系统对应仪表盘信息;
根据所述视图模型信息、视图内容信息和所述仪表盘信息触发所述BI系统仪表盘的执行,以执行所述BI系统对应的BI节点,生成图片格式的第二结果集。
3.如权利要求2所述的工作流系统中的BI节点执行方法,其特征在于,所述提取所述第一结果集中的元数据,将所述元数据作为调用参数调用所述BI系统的执行接口的步骤之前,还包括:
生成携带所述BI系统登录态信息的接口调用请求发送给所述工作流系统对应的网关,以供所述网关确认所述接口调用请求中的登录态信息正确后,将所述接口调用请求发送给所述BI系统,以根据所述接口调用请求调用所述BI系统的接口。
4.如权利要求1所述的工作流系统中的BI节点执行方法,其特征在于,所述工作流系统对应的调度器执行BI系统对应的前置节点,得到对应表格格式的第一结果集的步骤包括:
工作流系统对应的调度器调用BI系统对应前置节点的执行方法,根据所述执行方法调用所述前置节点对应的外部系统执行预设脚本,得到预设格式的执行结果集;
将所述执行结果集转换为表格格式的第一结果集。
5.如权利要求4所述的工作流系统中的BI节点执行方法,其特征在于,所述根据所述执行方法调用所述前置节点对应的外部系统执行预设脚本,得到预设格式的执行结果集的步骤包括:
根据所述执行方法调用所述前置节点对应外部系统的执行接口,通过所述执行接口将所述前置节点对应预设脚本的脚本名称作为参数写入执行请求中;
将所述执行请求发送给所述前置节点对应的外部系统,以供所述外部系统根据所述执行请求执行所述脚本名称对应的预设脚本,得到预设格式的执行结果集。
6.如权利要求1所述的工作流系统中的BI节点执行方法,其特征在于,所述根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集的步骤之前,还包括:
将所述第一结果集存储到预设的存储系统中;
当检测到所述BI系统对应的所有前置节点处于成功状态后,确定所述前置节点对应的作业标识;
根据所述作业标识确定存储对应第一结果集的存储路径,根据所述存储路径在所述存储系统中获取对应的所述第一结果集。
7.如权利要求1至6任一项所述的工作流系统中的BI节点执行方法,其特征在于,所述工作流系统对应的调度器执行BI系统对应的前置节点,得到对应表格格式的第一结果集的步骤之前,还包括:
读取所述工作流系统中的各个节点,并根据各个节点之间的依赖关系确定各个节点的执行顺序;
根据所述执行顺序确定所述BI系统对应的前置节点。
8.一种工作流系统中的BI节点执行装置,其特征在于,所述工作流系统中的BI节点执行装置包括:
执行模,用于执行BI系统对应的前置节点,得到对应表格格式的第一结果集;
生成模块,用于根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集;
发送模块,用于将所述第二结果集发送给所述BI节点,以供所述BI节点根据所述第二结果集生成第三结果集,并将所述第三结果集对应的作业标识存储在所述工作流系统对应的上下文信息中。
9.一种工作流系统中的BI节点执行设备,其特征在于,所述工作流系统中的BI节点执行设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的工作流系统中的BI节点执行程序,所述工作流系统中的BI节点执行程序被所述处理器执行时实现如权利要求1至7中任一项所述的工作流系统中的BI节点执行方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有工作流系统中的BI节点执行程序,所述工作流系统中的BI节点执行程序被处理器执行时实现如权利要求1至7中任一项所述的工作流系统中的BI节点执行方法的步骤。

说明书全文

工作流系统中的BI节点执行方法、装置、设备及介质

技术领域

[0001] 本发明涉及金融科技(Fintech)的数据处理技术领域,尤其涉及一种工作流系统中的BI节点执行方法、装置、设备及介质。

背景技术

[0002] 随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,数据处理技术也不例外,但由于金融行业的安全性、实时性要求,也对技术提出的更高的要求。
[0003] 现有的BI(Business Intelligence,商业智能)系统的工作流实现,主要依靠以下方式:BI系统对应的BI节点的前置节点执行完毕后,改变某种状态,作为触发BI节点执行的信号(可能是写入某个文件、往队列中发送某个消息、调用某接口等方式)。其中,前置节点为工作流系统工作流中在BI节点之前的节点,后置节点为工作流中在BI节点之后的节点。BI节点与其前置节点和后置节点的对接成本过高,虽然BI节点与其前置节点和后置节点在同一工作流上,但各个节点之间都互为外部系统,数据和代码逻辑都是相互隔离的,只能通过一些接口的实现来进行有限的信号和数据的交换。对于需要给BI节点发送信号的前置节点,每个前置节点对应的外部系统要专实现一次信号传输的逻辑,而且每个前置节点对应的外部系统支持的信号发送方式不同,因此作为信号接收方,BI系统本身也不得不适配多种形式的信号,大大增强复杂度和出错的概率,这些复杂的逻辑对系统本身的业务逻辑毫无益处,且会造成大量开发成本的浪费。
[0004] 由此可知,在工作流系统中,不同系统对应节点之间数据传输难度大,成功率低,数据传输成本高。

发明内容

[0005] 本发明的主要目的在于提供一种工作流系统中的BI节点执行方法、装置、设备及介质,旨在解决现有的在工作流系统中,不同系统对应节点之间数据传输难度大,成功率低,数据传输成本高的技术问题。
[0006] 为实现上述目的,本发明提供一种工作流系统中的BI节点执行方法,所述工作流系统中的BI节点执行方法包括步骤:
[0007] 工作流系统对应的调度器执行BI系统对应的前置节点,得到对应表格格式的第一结果集;
[0008] 根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集;
[0009] 将所述第二结果集发送给所述BI节点,以供所述BI节点根据所述第二结果集生成第三结果集,并将所述第三结果集对应的作业标识存储在所述工作流系统对应的上下文信息中。
[0010] 优选地,所述根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集的步骤包括:
[0011] 提取所述第一结果集中的元数据,将所述元数据作为调用参数调用所述BI系统的执行接口;
[0012] 通过所述执行接口将所述元数据中的字段名称和字段类型更新到所述BI系统对应的视图模型信息中,并将所述第一结果集的存储路径更新到所述BI系统对应视图的视图内容信息中;
[0013] 调用所述BI系统对应的显示接口获取所述BI系统对应仪表盘信息;
[0014] 根据所述视图模型信息、视图内容信息和所述仪表盘信息触发所述BI系统仪表盘的执行,以执行所述BI系统对应的BI节点,生成图片格式的第二结果集。
[0015] 优选地,所述提取所述第一结果集中的元数据,将所述元数据作为调用参数调用所述BI系统的执行接口的步骤之前,还包括:
[0016] 生成携带所述BI系统登录态信息的接口调用请求发送给所述工作流系统对应的网关,以供所述网关确认所述接口调用请求中的登录态信息正确后,将所述接口调用请求发送给所述BI系统,以根据所述接口调用请求调用所述BI系统的接口。
[0017] 优选地,所述工作流系统对应的调度器执行BI系统对应的前置节点,得到对应表格格式的第一结果集的步骤包括:
[0018] 工作流系统对应的调度器调用BI系统对应前置节点的执行方法,根据所述执行方法调用所述前置节点对应的外部系统执行预设脚本,得到预设格式的执行结果集;
[0019] 将所述执行结果集转换为表格格式的第一结果集。
[0020] 优选地,所述根据所述执行方法调用所述前置节点对应的外部系统执行预设脚本,得到预设格式的执行结果集的步骤包括:
[0021] 根据所述执行方法调用所述前置节点对应外部系统的执行接口,通过所述执行接口将所述前置节点对应预设脚本的脚本名称作为参数写入执行请求中;
[0022] 将所述执行请求发送给所述前置节点对应的外部系统,以供所述外部系统根据所述执行请求执行所述脚本名称对应的预设脚本,得到预设格式的执行结果集。
[0023] 优选地,所述根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集的步骤之前,还包括:
[0024] 将所述第一结果集存储到预设的存储系统中;
[0025] 当检测到所述BI系统对应的所有前置节点处于成功状态后,确定所述前置节点对应的作业标识;
[0026] 根据所述作业标识确定存储对应第一结果集的存储路径,根据所述存储路径在所述存储系统中获取对应的所述第一结果集。
[0027] 优选地,所述工作流系统对应的调度器执行BI系统对应的前置节点,得到对应表格格式的第一结果集的步骤之前,还包括:
[0028] 读取所述工作流系统中的各个节点,并根据各个节点之间的依赖关系确定各个节点的执行顺序;
[0029] 根据所述执行顺序确定所述BI系统对应的前置节点。
[0030] 此外,为实现上述目的,本发明还提供一种工作流系统中的BI节点执行装置,所述工作流系统中的BI节点执行装置包括:
[0031] 执行模,用于执行BI系统对应的前置节点,得到对应表格格式的第一结果集;
[0032] 生成模块,用于根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集;
[0033] 发送模块,用于将所述第二结果集发送给所述BI节点,以供所述BI节点根据所述第二结果集生成第三结果集,并将所述第三结果集对应的作业标识存储在所述工作流系统对应的上下文信息中。
[0034] 此外,为实现上述目的,本发明还提供一种工作流系统中的BI节点执行设备,所述工作流系统中的BI节点执行设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的工作流系统中的BI节点执行程序,所述工作流系统中的BI节点执行程序被所述处理器执行时实现如上所述的工作流系统中的BI节点执行方法的步骤。
[0035] 此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有工作流系统中的BI节点执行程序,所述工作流系统中的BI节点执行程序被处理器执行时实现如上所述的工作流系统中的BI节点执行方法的步骤。
[0036] 本发明通过工作流系统对应的调度器执行BI系统对应的前置节点,得到对应表格格式的第一结果集,根据第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集,将第二结果集发送给BI节点,以供BI节点根据第二结果集生成第三结果集,并将第三结果集对应的作业标识存储在工作流系统对应的上下文信息中,改变了工作流系统的执行主体,现有技术中由工作流中各个节点对应的外部系统直接进行数据交互,工作流只起到串联和调度作用,需要工作流主动去适配各个外部系统,而本实施例是由工作流本身为主,由工作流系统的工作流负责串联,工作流系统的调度器负责调度,来实现各个节点对应外部系统之间的资源共享、数据传输等,各个节点对应外部系统不需要信号传输的专门逻辑,也不需要适配多种形式的信号,降低了工作流节点对应外部系统之间数据传输的难度和数据传输成本,且由于外部系统不需要适配多种形式的信号,降低了外部系统之间数据传输的出错率。附图说明
[0037] 图1是本发明工作流系统中的BI节点执行方法第一实施例的流程示意图;
[0038] 图2是本发明工作流系统中的BI节点执行方法第三实施例的流程示意图;
[0039] 图3是本发明工作流系统中的BI节点执行装置较佳实施例的功能示意图模块图;
[0040] 图4是本发明实施例方案涉及的硬件运行环境的结构示意图。
[0041] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0042] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0043] 本发明提供一种工作流系统中的BI节点执行方法,参照图1,图1为本发明工作流系统中的BI节点执行方法第一实施例的流程示意图。
[0044] 本发明实施例提供了工作流系统中的BI节点执行方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0045] 工作流系统中的BI节点执行方法包括:
[0046] 步骤S10,工作流系统对应的调度器执行BI系统对应的前置节点,得到对应表格格式的第一结果集。
[0047] 在本发明实施例中,工作流系统对应着一个调度器,外部系统和BI系统在工作流系统中都存在对应的节点,BI系统对应的节点记为BI节点。在工作流系统的工作流中,将BI节点之前的节点称为前置节点,BI节点之后的节点称为后置节点。可以理解的是,BI系统也为工作流系统对应的一个外部系统。当工作流系统接收到执行指令时,工作流系统会启动其调度器,该调度器会根据该执行指令按照预先设置好的执行顺序执行对应工作流中的各个节点。调度器执行BI系统对应的前置节点,即执行工作流中BI节点之前的节点,得到对应表格格式的第一结果集。需要说明的是,执行指令可由用户根据需要而触发,或者由工作流系统中的定时任务触发。调度器为工作流系统中调度各个外部系统对应节点,执行各个节点的组件。每个前置节点都会存在对应的第一结果集,但是输入BI节点中具体是那几个第一结果集是由BI节点对应的执行方法决定。如可能将BI节点前面那个前置节点的第一结果集发送给BI节点,或者将BI节点前面三个前置节点的第一结果集发送给BI节点。
[0048] 进一步地,步骤S10包括:
[0049] 步骤a,工作流系统对应的调度器调用BI系统对应前置节点的执行方法,根据所述执行方法调用所述前置节点对应的外部系统执行预设脚本,得到预设格式的执行结果集。
[0050] 步骤b,将所述执行结果集转换为表格格式的第一结果集。
[0051] 具体地,工作流系统的调度器在执行前置节点过程中,调度器调用BI系统对应前置节点的执行方法,根据该执行方法调度前置节点对应的外部系统执行预设脚本,得到预设格式的执行结果集。需要说明的是,在工作流系统的工作流中,每个节点都存在对应的执行器,每个执行器存在对应的执行方法,执行方法是预先设置好的,不同节点的执行方法可能不一样。执行方法中预先设置好了执行预设脚本过程中的参数生成方法、调用对应外部系统的执行接口的调用逻辑和第一结果集适配等逻辑等。
[0052] 执行器为调度器的一部分,一个执行器就是一个执行线程。预设脚本是预先设置在执行方法中的,执行结果集的预设格式可根据具体需要而设置,如可将预设格式设置为JSON(Java Script Object Notation,JS对象简谱)格式,即得到JSON格式的执行结果集,或者将预设格式设置为CSV(Comma-Separated Values,逗号分隔值)。当调度器得到执行结果集后,将执行结果集转换为表格格式的第一结果集,即将执行结果集以表格格式存储。在第一结果集中,元数据为执行结果集中对应的字段名称和字段类型,第一结果集中每一行中都存在各个字段对应的字段值,即在第一结果集中,一条记录为一行。如执行结果集中存在A和B字段,第一条记录为A1和B1,第一条记录为A2和B2,A1和A2是A字段对应的字段值,B1和B2是B字段对应的字段值,则在第一结果集中,A1和B1为表格中的一行,A2和B2为表格中的一行。
[0053] 进一步地,在调度器调用工作流各个节点的执行方法过程中,会为各个节点生成对应的作业标识,本实施例中作业标识是一个整数,用户可以根据具体需要将作业标识设置为何种整数。当调度器再次执行该前置节点时,调度器会将该作业标识增加1,即调度器每执行一次节点,该节点对应的作业标识就会增加1。工作流中节点的作业标识是全局唯一的,作业标识是存储在工作流系统的上下文信息中的。
[0054] 进一步地,当调度器获得执行结果集后,调度器会将执行结果集转换为工作流系统中预先设置好的表格格式,得到表格格式的第一结果集,并获取预先设置好的根目录、前置节点对应的用户名和作业标识,根据根目录、用户名和作业标识生成第一结果集的存储路径,即第一结果集的存储路径为:根目录+用户名+作业标识。当调度器确定第一结果集的存储路径后,根据该存储路径将第一结果集存储至存储系统中。可以理解的是,在工作流系统中,每一个前置节点都存在对应的用户名,在工作流系统中,各个节点对应的根目录是相同的,即所有第一结果集存储路径中的根目录都是相同,用户名和存储路径是不一样的。
[0055] 进一步地,所述根据所述执行方法调用所述前置节点对应的外部系统执行预设脚本,得到预设格式的执行结果集的步骤包括:
[0056] 步骤b1,根据所述执行方法调用所述前置节点对应外部系统的执行接口,通过所述执行接口将所述前置节点对应预设脚本的脚本名称作为参数写入执行请求中。
[0057] 步骤b2,将所述执行请求发送给所述前置节点对应的外部系统,以供所述外部系统根据所述执行请求执行所述脚本名称对应的预设脚本,得到预设格式的执行结果集。
[0058] 具体地,调度器在调用前置节点对应的执行方法后,调度器根据执行方法调用对应前置节点对应的外部系统的执行接口,并基于该执行接口,通过执行方法确定对应前置节点对应的预设脚本的脚本名称,将所获取的脚本名称作为参数写入执行请求中,将携带脚本名称的执行请求发送给前置节点对应的外部系统。当外部系统接收到执行请求后,调度器获取执行请求中的脚本名称,执行该脚本名称对应的预设脚本,得到预设格式的执行结果集。优选地,在本实施例中,执行接口是以HTTP(Hyper Text Transfer Protocol,超文本传输协议)协议传输数据的,在其它实施例中,执行接口也可以采用其它通信协议传输数据。
[0059] 可以理解的是,每一个预设脚本都存在对应的脚本名称,通过脚本名称,可以唯一确定一个预设脚本,预设脚本可以预先存储在对应的外部系统中,也可以存储在特定的存储系统中,如可以存储在HDFS(Hadoop Distributed File System,Hadoop分布式文件系统)中,外部系统可以通过该脚本名称在存储系统中获取对应的预设脚本,然后执行所获取的预设脚本,得到预设格式的执行结果集。
[0060] 为了便于理解,以下举例说明以Spark-SQL(Structured Query Language,结构化查询语言)系统对应的A节点作为前置节点举例说明。调度器调用A节点的执行器的执行方法,生成一个作业标识,该作业标识全局唯一。在本实施例中,工作流系统中的每个节点都存储了对应外部系统的实体信息,该实体信息可为预设脚本的存储路径,在将执行请求发送给外部系统时,可以将预设脚本的存储路径一起发送给外部系统,以供外部系统根据该存储路径快速查找到存储预设脚本的文件夹,然后根据脚本名称确定对应的预设脚本,以提高获取预设脚本的获取速度。
[0061] 如A节点存储了Spark-SQL系统中预设脚本的存储路径“/user/student.sql”,A节点对应的执行器的执行方法中预先设置好了执行预设脚本过程中的参数生成方法、调用对应外部系统的执行接口的调用逻辑和第一结果集适配等逻辑等。通过A节点执行器的执行方法,调用Spark-SQL系统的执行接口(HTTP协议),将脚本名称作为参数,放入HTTP的执行请求中,。Spark-SQL系统收到执行请求后,执行对应的预设脚本(如执行select*from students),得到执行结果集,如执行结果集的内容为students表的name和score两个字段,以及这两个字段对应的字段值,并将执行结果集转换成JSON格式,放在HTTP的响应中里返回给A节点的执行器,以将JSON格式的执行结果集返回给调度器,使调度器获得执行结果集,如该执行结果集为{columns:[“name”,”score”],rows:[[“wangming”,”90”],[“xiaozhang”,”92]]}。调度器将{columns:[“name”,”score”],rows:[[“wangming”,”90”],[“xiaozhang”,”92]]}JSON格式的执行结果集,转换成为类型为表格、元数据包含一个名称为name类型为string(字符串)和一个名称为score(整形)类型为number的字段、有两行分别为“wangming”,”90和“xiaozhang”,”92的字段值,即将执行结果集转换成表格格式的第一结果集。
[0062] 步骤S20,根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集。
[0063] 当调度器得到第一结果集后,调度器调度BI系统对应BI节点执行器的执行方法,根据第一结果集执行该执行方法,生成图片格式的第二结果集。
[0064] 进一步地,步骤S20包括:
[0065] 步骤c,提取所述第一结果集中的元数据,将所述元数据作为调用参数调用所述BI系统的执行接口。
[0066] 步骤d,通过所述执行接口将所述元数据中的字段名称和字段类型更新到所述BI系统对应的视图模型信息中,并将所述第一结果集的存储路径更新到所述BI系统对应视图的视图内容信息中。
[0067] 具体地,调度器提取第一结果集中的元数据,将该元数据作为调用参数调用BI系统的执行接口,并通过该执行接口将元数据中的字段名称和字段类型更新到BI系统对应的视图模型信息中,得到更新后的视图模型信息,并获取第一结果集的存储路径,将第一结果集的存储路径更新到BI系统对应视图的视图内容信息中,得到更新后的视图内容信息。其中,视图模型信息和视图内容信息是预先设置好的,在视图模型信息中,设置有字段名称和字段类型对应的填写位置,调度器只需将字段名称和字段类型填写到视图模型信息中对应的填写位置即可;在视图内容信息中,设置有存储路径的填写位置,调度器也只需将存储路径填写到视图内容信息中对应的填写路径即可。如上述例子,字段名称为“name”和“number”,“name”对应的字段类型为“string”;“number”对应的字段类型为“score”。执行接口可表示为/api/rest_s/v1/vangogh/views/{id}接口。
[0068] 步骤e,调用所述BI系统对应的显示接口获取所述BI系统对应仪表盘信息。
[0069] 当调度器得到第一结果集后,调度器调用BI系统对应的显示接口,通过该显示接口获取BI系统对应的仪表盘信息,其中,仪表盘信息包括但不限于仪表盘标识、视图标识和项目名称。具体地,调度器通过仪表盘标识找到仪表盘对应的JSON对象,在JSON对象中获取视图标识。在本实施例中,不限制仪表盘标识和视图标识的表现形式,每一BI系统都存在对应的仪表盘标识,视图标识用于表示生成第二结果集对应的视图,项目名称为第二结果集对应项目的名称,在图片格式的第二结果集中,包括项目名称。如显示接口可为/api/rest_s/v1/vangogh/displays接口。
[0070] 步骤f,根据所述视图模型信息、视图内容信息和所述仪表盘信息触发所述BI系统仪表盘的执行,以执行所述BI系统对应的BI节点,生成图片格式的第二结果集。
[0071] 当调度器获取到仪表盘信息,以及得到更新后的视图模型信息和更新后的视图内容信息后,调度器根据更新后的视图内容信息获取更新后视图模型信息中字段名称对应的字段值,该字段值的字段类型由更新后视图模型信息中对应字段名称的字段类型决定。需要说明的是,在更新后的视图内容信息中有存储第一结果集的存储路径,根据该存储路径和更新后的视图模型信息中的字段名称和字段类型可以在存储系统中获取生成第二结果集所需的数据,即获取到字段名称对应的字段值。
[0072] 当调度器获取到字段名称对应的字段值后,调度器根据仪表盘信息触发BI系统仪表盘的执行,即执行BI系统对应的BI节点,以生成图片格式的第二结果集。具体地,调度器根据仪表盘信息中的仪表盘标识所需调度的视图接口,然后通过该视图接口触发仪表盘标识对应的图表的执行,以根据所获取的字段名称对应的字段值,生成含有项目名称和视图标识的第二结果集。第二结果集可以柱状图或者扇形图等形状来表示,第二结果集的图片格式包括但不限于PNG(Portable Network Graphics,便携式网络图形)、BMP(BitMaP,位图)和TIF(Tag Image File Format,标签图像文件格式)。视图接口可表示为/api/rest_s/v1/vangogh/displays/{id}/preview接口。
[0073] 步骤S30,将所述第二结果集发送给所述BI节点,以供所述BI节点根据所述第二结果集生成第三结果集,并将所述第三结果集对应的作业标识存储在所述工作流系统对应的上下文信息中。
[0074] 当调度器得到第二结果集后,调度器将第二结果集通过HTTP接口发送给BI节点。当BI节点接收到第二结果集后,BI节点根据第二结果集生成第三结果集,即将图片格式的第二结果集读取为编码文本,得到第三结果集。优选地,第三结果集为Base64的编码文本,在其它实施例中,第三结果集也可为其它形式的编码文本。Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。在第三结果集中,元数据信息为结果集类型、字段相关信息和编码文本。具体地,若第二结果集是PNG图片格式,则第三结果集元数据信息的结果集类型为PNG;第三结果集中的字段相关信息为空;若第三结果集是Base64的编码文本,则第三结果集中的编码文本的值为一行Base64编码的文本。
[0075] 当BI节点得到第三结果集后,BI节点获取其对应的作业标识,将作业标识存储在工作流系统对应的上下文信息中。BI节点并获取其用户名,根据根目录、用户名和作业标识生成存储路径,即存储路径为:根目录+用户名+作业标识,根据该存储路径将第三结果集存储至存储系统中。需要说明的是,存储第三结果集中的用户名和作业标识是BI节点的用户名和作业标识。可以理解的是,在本实施例中,工作流中各个节点的作业标识都是存储在工作流系统的上下文信息中的,以便于通过上下文信息统一维护各个节点的作业标识。
[0076] 可以理解的是,当调度器执行完BI节点之后,调度器将调用BI节点对应后置节点的执行方法,根据第三结果集执行后置节点。
[0077] 本实施例通过工作流系统对应的调度器执行BI系统对应的前置节点,得到对应表格格式的第一结果集,根据第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集,将第二结果集发送给BI节点,以供BI节点根据第二结果集生成第三结果集,并将第三结果集对应的作业标识存储在工作流系统对应的上下文信息中,改变了工作流系统的执行主体,现有技术中由工作流中各个节点对应的外部系统直接进行数据交互,工作流只起到串联和调度作用,需要工作流主动去适配各个外部系统,而本实施例是由工作流本身为主,由工作流系统的工作流负责串联,工作流系统的调度器负责调度,来实现各个节点对应外部系统之间的资源共享、数据传输等,各个节点对应外部系统不需要信号传输的专门逻辑,也不需要适配多种形式的信号,降低了工作流节点对应外部系统之间数据传输的难度和数据传输成本,且由于外部系统不需要适配多种形式的信号,降低了外部系统之间数据传输的出错率。
[0078] 进一步地,在本实施例中,工作流系统提供统一的接口供外部系统接入,成功工作流的一个节点,外部系统只需存在工作流系统中预先设置好的工作流框架规定的接口逻辑,即可适配工作流系统,降低了外部系统与工作流系统的适配难度。在工作流系统中,提供交互页面层次的系统集成方法,使用户能够在工作流系统中编辑工作流节点时,在同一页面无缝跳转到BI系统的页面。在完成在BI系统中的一系列操作后,回到工作流系统的页面中。
[0079] 进一步地,提出本发明工作流系统中的BI节点执行方法第二实施例。
[0080] 所述工作流系统中的BI节点执行方法第二实施例与所述工作流系统中的BI节点执行方法第一实施例的区别在于,所述工作流系统中的BI节点执行方法还包括:
[0081] 步骤f,生成携带所述BI系统登录态信息的接口调用请求发送给所述工作流系统对应的网关,以供所述网关确认所述接口调用请求中的登录态信息正确后,将所述接口调用请求发送给所述BI系统,以根据所述接口调用请求调用所述BI系统的接口。
[0082] 在调度器执行BI节点之前,调度器生成携带BI系统登录态信息的接口调用请求,并将该接口调用请求发送给工作流系统对应的网关。其中,登录态信息可为特定的标识,不同外部系统的登录态信息不一致。在BI系统作为BI节点接入到工作流系统中时,工作流系统会存储该BI系统的登录态信息。当网关接收到接口调用请求后,网关获取接口调用请求中的登录态信息,若所获取的登录态信息与其存储的登录态信息一致,则确定接口调用请求中的登录态信息正确,将接口调用请求发送给BI系统,以根据该接口调用请求调用BI系统的接口;若所获取的登录态信息与其存储的登录态信息不一致,网关则确定接口调用请求中的登录态信息错误,不将接口调用请求发送给BI系统。需要说明的是,在网关中,存储有各个外部系统的登录态信息。接口调用请求可为HTTP请求。
[0083] 具体地,调度器可计算登录态信息的散列值,将登录态信息的散列值添加至接口调用请求中。优选地,调度器可通过MD5(Message Digest Algorithm,信息摘要算法)计算出登录态信息的散列值,在其它实施例中,调度器也可通过其它计算散列值的方法计算出登录态信息的散列值。当网关接收到接口调用请求后,网关获取接口调用请求中的散列值,并计算其存储登录态信息的散列值,若接口调用请求中的散列值和计算所得的散列值一致,网关则确定接口调用请求中的登录态信息正确;若接口调用请求中的散列值和计算所得的散列值不一致,网关则确定接口调用请求中的登录态信息错误。需要说明的是,网关计算登录态信息散列值的计算方法与调度器计算登录态信息散列值的计算方法一致。
[0084] 本实施例通过BI系统接入工作流系统所在的网关,从工作流系统到BI系统的接口调用,不再以直接点对点调用的形式,而是统一先请求网关服务后,由网关识别接口调用请求,从而决定是否将接口调用请求发送至BI系统中,需要说明的是,调度器在执行工作流对应其它节点之前,也可以采用对应外部系统的登录态信息进行登录验证,避免了由于不同外部系统采用登录验证方式不同,外部系统之间的通信需要处理很多登录态信息的管理逻辑的情况出现,降低了工作流系统对应节点的外部系统之间的通信难度。
[0085] 进一步地,所述工作流系统中的BI节点执行方法还包括:
[0086] 步骤g,将所述第一结果集存储到预设的存储系统中。
[0087] 步骤h,当检测到所述BI系统对应的所有前置节点处于成功状态后,确定所述前置节点对应的作业标识。
[0088] 步骤i,根据所述作业标识确定存储对应第一结果集的存储路径,根据所述存储路径在所述存储系统中获取对应的所述第一结果集。
[0089] 当调度器得到第一结果集后,调度器将第一结果集存储到预设的存储系统中,具体地,调度器获取前置节点对应的用户名和作业标识,按照根目录、用户名和作业标识确定存储第一结果集的存储路径,根据该存储路径将对应的第一结果集存储到预设的存储系统中。可以理解的是,由于各个前置节点对应的用户名和作业标识不一致,各个第一结果集对应的存储路径也不一致。
[0090] 调度器检测BI系统对应的所有前置节点是否处于成功状态。可以理解的是,当得到前置节点对应的第一结果集后,则表明前置节点处于成功状态。若调度器检测到所有前置节点处于成功状态,调度器则从工作流系统对应的上下文信息中获取前置节点对应的作业标识,根据作业标识确定存储对应第一结果集的存储路径,根据存储路径在存储系统中获取作业标识对应的第一结果集。
[0091] 本实施例通过将调度器执行前置节点所得第一结果集存储至存储系统中,并将前置节点对应的作业标识存储在工作流系统的上下文信息中,实现了在根据第一结果集执行BI节点时,不需要用户手动记录前置节点对应的外部系统的相关信息输入至BI节点对应的BI系统中,降低了在执行BI节点过程中,外部系统相关信息输入错误的情况出现,提高了BI节点执行的成功率,且降低了用户使用外部系统之间割裂感。
[0092] 进一步地,提出本发明工作流系统中的BI节点执行方法第三实施例。
[0093] 所述工作流系统中的BI节点执行方法第三实施例与所述工作流系统中的BI节点执行方法第一和/或第二实施例的区别在于,参照图2,所述工作流系统中的BI节点执行方法还包括:
[0094] 步骤S40,读取所述工作流系统对应工作流中的各个节点,并根据各个节点之间的依赖关系确定各个节点的执行顺序。
[0095] 步骤S50,根据所述执行顺序确定所述BI系统对应的前置节点。
[0096] 调度器在接收到执行指令后,调度器读取工作流系统对应工作流中的各个节点,并根据各个节点之间的依赖关系确定各个节点的执行顺序,根据该执行顺序确定BI系统对应的前置节点。其中,各个节点之间的依赖关系是预先设置好的。无任何前置依赖的节点在最先执行,无任何后置依赖的节点在最后执行,可以理解的是,无任何前置依赖的节点为工作流中的第一个节点,无任何后置依赖的节点为工作流中的最后一个节点。前置节点为工作流中在BI节点之前的节点。需要说明的是,在工作流中,只有工作流前面的节点处于成功状态后,才会执行工作流后面的节点。在工作流中,也可能会存在多个节点同时执行,只要满足对应节点的执行条件即可。在调度器执行工作流中的各个节点过程中,调度器会调用对应节点的执行方法。
[0097] 本实施例通过根据工作流中各个节点之间的依赖关系确定各个节点的执行顺序,根据该执行顺序确定BI系统对应的前置节点,以在前置节点都处于执行成功状态时,执行BI系统对应的BI节点,以及时执行BI节点。
[0098] 此外,参照图3,本发明还提供一种工作流系统中的BI节点执行装置,所述工作流系统中的BI节点执行装置包括:
[0099] 执行模块10,用于执行BI系统对应的前置节点,得到对应表格格式的第一结果集;
[0100] 生成模块20,用于根据所述第一结果集执行BI系统对应的BI节点,生成图片格式的第二结果集;
[0101] 发送模块30,用于将所述第二结果集发送给所述BI节点,以供所述BI节点根据所述第二结果集生成第三结果集,并将所述第三结果集对应的作业标识存储在所述工作流系统对应的上下文信息中。
[0102] 进一步地,所述生成模块20包括:
[0103] 提取单元,用于提取所述第一结果集中的元数据,将所述元数据作为调用参数调用所述BI系统的执行接口;
[0104] 更新单元,用于通过所述执行接口将所述元数据中的字段名称和字段类型更新到所述BI系统对应的视图模型信息中,并将所述第一结果集的存储路径更新到所述BI系统对应视图的视图内容信息中;
[0105] 第一调用单元,用于调用所述BI系统对应的显示接口获取所述BI系统对应仪表盘信息;
[0106] 生成单元,用于根据所述视图模型信息、视图内容信息和所述仪表盘信息触发所述BI系统仪表盘的执行,以执行所述BI系统对应的BI节点,生成图片格式的第二结果集。
[0107] 进一步地,所述生成模块20还用于生成携带所述BI系统登录态信息的接口调用请求发送给所述工作流系统对应的网关,以供所述网关确认所述接口调用请求中的登录态信息正确后,将所述接口调用请求发送给所述BI系统,以根据所述接口调用请求调用所述BI系统的接口。
[0108] 进一步地,所述执行模块10包括:
[0109] 第二调用单元,用于工作流系统对应的调度器调用BI系统对应前置节点的执行方法;
[0110] 执行单元,用于根据所述执行方法调用所述前置节点对应的外部系统执行预设脚本,得到预设格式的执行结果集;
[0111] 转换单元,用于将所述执行结果集转换为表格格式的第一结果集。
[0112] 进一步地,所述执行单元包括:
[0113] 调用子单元,用于根据所述执行方法调用所述前置节点对应外部系统的执行接口,通过所述执行接口将所述前置节点对应预设脚本的脚本名称作为参数写入执行请求中;
[0114] 发送子单元,用于将所述执行请求发送给所述前置节点对应的外部系统,以供所述外部系统根据所述执行请求执行所述脚本名称对应的预设脚本,得到预设格式的执行结果集。
[0115] 进一步地,所述工作流系统中的BI节点执行装置还包括:
[0116] 存储模块,用于将所述第一结果集存储到预设的存储系统中;
[0117] 第一确定模块,用于当检测到所述BI系统对应的所有前置节点处于成功状态后,确定所述前置节点对应的作业标识;根据所述作业标识确定存储对应第一结果集的存储路径;
[0118] 获取模块,用于根据所述存储路径在所述存储系统中获取对应的所述第一结果集。
[0119] 进一步地,所述工作流系统中的BI节点执行装置还包括:
[0120] 读取模块,用于读取所述工作流系统中的各个节点;
[0121] 第二确定模块,用于根据各个节点之间的依赖关系确定各个节点的执行顺序;根据所述执行顺序确定所述BI系统对应的前置节点。
[0122] 需要说明的是,工作流系统中的BI节点执行装置的各个实施例与上述工作流系统中的BI节点执行方法的各实施例基本相同,在此不再详细赘述。
[0123] 此外,本发明还提供一种工作流系统中的BI节点执行设备。如图4所示,图4是本发明实施例方案涉及的硬件运行环境的结构示意图。
[0124] 需要说明的是,图4即可为工作流系统中的BI节点执行设备的硬件运行环境的结构示意图。本发明实施例工作流系统中的BI节点执行设备可以是PC,便携计算机等终端设备。
[0125] 如图4所示,该工作流系统中的BI节点执行设备可以包括:处理器1001,例如CPU,存储器1005,用户接口1003,网络接口1004,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
[0126] 可选地,工作流系统中的BI节点执行设备还可以包括摄像头、RF(Radio Frequency,射频)电路传感器、音频电路、WiFi模块等等。
[0127] 本领域技术人员可以理解,图4中示出的工作流系统中的BI节点执行设备结构并不构成对工作流系统中的BI节点执行设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0128] 如图4所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及工作流系统中的BI节点执行程序。其中,操作系统是管理和控制工作流系统中的BI节点执行设备硬件和软件资源的程序,支持工作流系统中的BI节点执行程序以及其它软件或程序的运行。
[0129] 在图4所示的工作流系统中的BI节点执行设备中,用户接口1003主要用于连接客户端,与客户端进行数据通信;网络接口1004主要用于后台服务器,与后台服务器进行数据通信;处理器1001可以用于调用存储器1005中存储的工作流系统中的BI节点执行程序,并执行如上所述的工作流系统中的BI节点执行方法的步骤。
[0130] 本发明工作流系统中的BI节点执行设备具体实施方式与上述工作流系统中的BI节点执行方法各实施例基本相同,在此不再赘述。
[0131] 此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有工作流系统中的BI节点执行程序,所述工作流系统中的BI节点执行程序被处理器执行时实现如上所述的工作流系统中的BI节点执行方法的步骤。
[0132] 本发明计算机可读存储介质具体实施方式与上述工作流系统中的BI节点执行方法各实施例基本相同,在此不再赘述。
[0133] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0134] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0135] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0136] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈