数据构造方法、装置、计算机程序产品和存储介质与流程

文档序号:32340336发布日期:2022-11-26 09:33阅读:48来源:国知局
数据构造方法、装置、计算机程序产品和存储介质与流程

1.本发明涉及计算机技术领域,尤其涉及一种数据构造方法、装置、计算机程序产品和存储介质。


背景技术:

2.由于系统的业务数量多、业务流程复杂且较长,使得构造业务订单数据的成本极高,缺乏数据已经成为系统开发的相关人员的痛点问题;例如,联调痛点:开发人员不会制造单子,因为没有数据,导致无法联调;测试痛点:测试需求时间为6天,而制造数据需要2天时间,其占用了30%的时间;项目展示(showcase)痛点:showcase时间过长,其中,一半时间都在制造单子,甚至一条数据被重复修改和利用,降低了数据的可靠性;验收痛点:验收人员不会造单子,无数据可以验收。因此,订单数据已成为阻塞联调、showcase和测试的主要原因,解决制造数据的问题,刻不容缓。
3.相关技术中,数据构造通常通过配置,以支持结构化查询语言(structured query language,sql)、开源分布式服务框架(dubbo)、超文本传输协议(hyper text transfer protocol,http)和分布式发布订阅消息系统(kafka)等业务,能够支持简单的短流程及单一流程,即只能简单的支持创建客源等小分支流程;然而,对于极其复杂的长链路流程场景,无法按照分支条件及多路径配置,而且维护成本高,也不满足个性化功能功能场景的需求。


技术实现要素:

4.本发明提供一种数据构造方法、装置、计算机程序产品及存储介质,用以解决相关技术中无法满足复杂的长链路流程场景需求的缺陷,实现多分支、长链路流程的数据构造需求,提升数据构造效率。
5.本发明提供一种数据构造方法,所述方法包括:
6.根据接收到的数据构造请求,确定与所述数据构造请求对应的网络拓扑图;所述网络拓扑图为有向图;所述网络拓扑图包括至少两个节点;
7.接收与所述数据构造请求相关的目标参数;所述目标参数包括起始节点和目标节点;
8.根据所述网络拓扑图、所述起始节点和所述目标节点,生成目标数据。
9.根据本发明提供的一种数据构造方法,所述根据所述网络拓扑图、所述起始节点和所述目标节点,生成目标数据,包括:
10.根据所述网络拓扑图、所述起始节点和所述目标节点,确定目标网络流程图;
11.根据所述目标网络流程图,生成目标数据。
12.根据本发明提供的一种数据构造方法,所述网络拓扑图还包括以下至少一项:至少一个事件线和分支;其中,各所述事件线表示两个节点之间或者一个节点与分支之间的事件;各所述事件线对应至少一个配置接口。
13.根据本发明提供的一种数据构造方法,所述根据所述目标网络流程图,生成目标数据,包括:
14.根据所述目标网络流程图,获取所述目标网络流程图所包括的所述配置接口的接口信息;
15.根据所述接口信息,按照所述接口信息中的优先级依次调用所述接口信息对应的配置接口,生成目标数据。
16.根据本发明提供的一种数据构造方法,所述方法还包括:
17.响应于所述配置接口调用失败,记录并存储调用失败的所述配置接口的接口数据。
18.根据本发明提供的一种数据构造方法,所述记录并存储所述配置接口的接口数据之后,还包括:
19.根据所述接口数据,查找所述调用失败的所述接口数据对应的节点作为失败节点;
20.将所述失败节点作为更新的起始节点,根据所述目标网络流程图、所述更新的起始节点和所述目标节点,生成目标数据。
21.根据本发明提供的一种数据构造方法,所述接口信息包括以下至少一项:事件、请求路径、请求服务、入参、返回、请求方式和优先级。
22.本发明还提供一种数据构造装置,所述装置包括:
23.确定模块,用于根据接收到的数据构造请求,确定与所述数据构造请求对应的网络拓扑图;所述网络拓扑图为有向图;所述网络拓扑图包括至少两个节点;
24.接收模块,用于接收与所述数据构造请求相关的目标参数;所述目标参数包括起始节点和目标节点;
25.生成模块,用于根据所述网络拓扑图、所述起始节点和所述目标节点,生成目标数据。
26.本发明还提供一种计算机程序产品,包括计算机程序/指令,所述计算机程序被处理器执行时实现如上述任一种所述数据构造方法的步骤。
27.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述数据构造方法的步骤。
28.本发明提供的数据构造方法,根据接收到的数据构造请求,确定与数据构造请求对应的网络拓扑图;再接收与数据构造请求相关的目标参数;根据网络拓扑图和目标参数,生成目标数据。本发明提供的数据构造方法,通过网络拓扑图和目标参数,实现了构造目标数据,支持长链路且多组合的复杂业务流程需求,提升了数据构造的效率。
附图说明
29.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
30.图1是本发明提供的数据构造方法的流程示意图之一;
31.图2是本发明提供的网络拓扑图的结构示意图;
32.图3是本发明提供的数据构造方法的流程示意图之二;
33.图4是本发明提供的数据构造方法的新建示意图;
34.图5是本发明提供的数据构造方法的编辑示意图;
35.图6是本发明提供的数据构造装置的结构示意图;
36.图7是本发明提供的电子设备的结构示意图。
具体实施方式
37.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
38.下面结合附图,通过一些实施例及其应用场景对本发明提供的数据构造方法进行详细地说明。
39.本发明提供一种数据构造方法,该数据构造方法可适用于复杂业务系统的数据构造场景中,根据接收到的数据构造请求,确定与所述数据构造请求对应的网络拓扑图;所述网络拓扑图为有向图;所述网络拓扑图包括至少两个节点;接收与所述数据构造请求相关的目标参数;所述目标参数包括起始节点和目标节点;根据所述网络拓扑图、所述起始节点和所述目标节点,生成目标数据。本发明提供的数据构造方法,通过网络拓扑图和目标参数,实现了构造目标数据,支持长链路且多组合的复杂业务流程需求,提升了数据构造的效率。
40.图1是本发明提供的数据构造方法的流程示意图之一,如图1所示,该方法包括步骤110-步骤130,其中:
41.步骤110,根据接收到的数据构造请求,确定与所述数据构造请求对应的网络拓扑图;所述网络拓扑图为有向图;所述网络拓扑图包括至少两个节点。
42.需要说明的是,本发明提供的数据构造方法,可应用于复杂业务系统的数据构造场景中。本发明提供的数据构造方法的执行主体可以为数据构造装置,例如电子设备、或者该数据构造装置中的用于执行数据构造方法的控制模块。
43.可选地,所述网络拓扑图还包括以下至少一项:至少一个事件线和分支;其中,各所述事件线表示两个节点之间或者一个节点与分支之间的事件;各所述事件线对应至少一个配置接口。
44.具体地,网络拓扑图是根据实际复杂的业务系统设计,再根据预先设定的规则对网络拓扑图进行配置;其中,规则包括至少两个相邻节点的顺序、分支、节点与节点之间或者节点与分支之间的事先线和事件线对应的配置接口信息;分支表示网络拓扑图中的分支流程,例如,分支为预勘师业务,其对应分支条件,用于判断节点与节点之间的关系;节点表示网络拓扑图所涉及的环节,例如,节点为待分配、待量房等;事件线表示节点与节点之间或者节点与分支之间的事件,例如,使用e1000表示。
45.例如,网络拓扑图包括以下字段:状态机码(state_machine_code)、起始节点(source_val)、目标节点(target_val)、事件(event_type)、分支条件表达式(rule_exp)、
执行动作(common_action);其中,状态机码用于标识不同的网络拓扑图。
46.可选地,所述配置接口信息包括以下至少一项:事件、请求路径、请求服务、入参、返回、请求方式和优先级。
47.例如,根据事件线配置的配置接口信息包括以下字段:事件(event_type)、请求路径(url)、service_name(请求服务)、params(入参)、返回(return)、请求方式(http_method)、优先级(level)。
48.具体地,根据接收到的数据构造请求,选择与数据构造请求匹配的状态机码,从而确定与数据构造请求对应的网路拓扑图。
49.需要说明的是,网络拓扑图为有向图,网络拓扑图包括的节点、事件线和分支,以及事件线配置的配置接口信息均存储于数据库中。
50.步骤120,接收与所述数据构造请求相关的目标参数;所述目标参数包括起始节点和目标节点。
51.可选地,目标参数包括起始节点和目标节点,还包括其他的参数,例如,手机号、业务姓名、分支条件和品牌等参数,具体根据实际需求进行设定。
52.需要说明的是,根据实际的数据构造请求,输入目标参数,可以确定构造数据的业务场景。
53.步骤130,根据所述网络拓扑图、所述起始节点和所述目标节点,生成目标数据。
54.具体地,根据起始节点和目标节点确定的数据构造场景,再根据预先配置的网络拓扑图,确定该数据构造场景中起始节点与目标节点之间的事件线、分支、配置接口及配置接口信息,生成目标数据。
55.需要说明的是,根据网络拓扑图,只需要根据实际的数据构造请求,选择任意的起始节点和目标节点即可完成数据构造,能够实现业务复杂的数据构造请求的需求。
56.本发明提供的数据构造方法,根据接收到的数据构造请求,确定与数据构造请求对应的网络拓扑图;再接收与数据构造请求相关的目标参数;根据网络拓扑图和目标参数,生成目标数据。本发明提供的数据构造方法,通过网络拓扑图和目标参数,实现了复杂业务场景下构造目标数据,支持长链路且多组合的复杂业务流程需求,提升了数据构造的效率。
57.图2是本发明提供的网络拓扑图的结构示意图,如图2所示,该网络拓扑图包括5个节点、4个事件线和一个分支,其中,节点与节点之间配置事件线,事件线下配置接口。例如,节点1与节点2之间配置事件线e1000,事件线e1000下配置接口url1、url2和url3;节点2和节点3之间存在事件线e1002和分支,使用分支条件表达式对事件线e1000和事件线e1002下的url1、url2、url3、url4、url5和url6的返回值进行判断,满足分支条件(a==1)的情况下,节点2流转至节点3;满足分支条件(a==2)的情况下,节点2流转至节点4。
58.图3是本发明提供的数据构造方法的流程示意图之二,如图3所示,该方法包括步骤310-步骤340,其中:
59.步骤310,根据接收到的数据构造请求,确定与所述数据构造请求对应的网络拓扑图;所述网络拓扑图为有向图;所述网络拓扑图包括至少两个节点。
60.步骤320,接收与所述数据构造请求相关的目标参数;所述目标参数包括起始节点和目标节点。
61.可选地,关于步骤310-320的说明和解释,可以参照上述针对步骤110-120的说明
和解释,且能达到相同的技术效果,为避免重复,这里不再赘述。
62.步骤330,根据所述网络拓扑图、所述起始节点和所述目标节点,确定目标网络流程图。
63.具体地,根据网络拓扑图,接收到用户输入的起始节点和目标节点,确定起始节点至目标节点的目标网络流程图。
64.需要说明的是,根据起始节点和目标节点确定的目标网络流程图,既可确定该目标网络流程图是否包含分支,在目标网络流程图不包含分支时,该目标网络流程图是单条链路;在目标网络流程图包含分支时,该目标网络流程图是复杂的多分支网络流程图,可以满足用户对复杂的多分支构造数据的需求。
65.步骤340,根据所述目标网络流程图,生成目标数据。
66.本发明提供的数据构造方法,根据网络拓扑图、起始节点和目标节点,确定目标网络流程图,再根据目标网络流程图,生成目标数据,实现了通过目标网络流程图生成目标数据,满足了用户对复杂的多分支数据构造需求,提升了数据构造的效率。
67.可选地,上述步骤340的具体实现方式包括以下步骤:
68.步骤1,根据所述目标网络流程图,获取所述目标网络流程图所包括的配置接口的接口信息。
69.步骤2,根据所述接口信息,按照所述接口信息中的优先级依次调用所述接口信息对应的配置接口,生成目标数据。
70.具体地,在服务启动的时候,从数据库中获取目标网络流程图和目标网络流程图所包括的配置接口的接口信息,存储到内存中;在构造数据时,根据接口信息,按照所述接口信息中的优先级依次从内存中直接调用接口信息对应的配置接口,生成目标数据。
71.其中,提供一个commonaction方法,解析目标网络流程图中不同的事件下对应的不同配置接口的接口信息,调用接口信息对应的配置接口,配置接口的调用顺序是根据配置接口的优先级进行调用;如果多个配置接口的优先级相同,则并行调用多个配置接口;如果多个配置接口的优先级不相同,则串行调用多个配置接口。
72.实际中,还提供特殊场景的个性化定制,例如,同一个配置接口循环调用foraction,或者不同的配置接口循环调用,根据实际需求对配置接口的调用情况进行设置。
73.图4是本发明提供的数据构造方法的新建示意图,如图4所示,根据接收到数据构造请求,展示长链路流程的网络拓扑图,该网络拓扑图包括未开始、冻结初始化、待分配、待量房、待约预交底、待派管家、派单中和待预交底等节点,以及预勘师业务分支;其中,每个节点包括编号,例如,“冻结初始化”节点的编号为200,“待分配”节点的编号为201,分支包括分支条件;例如,“冻结初始化”的节点编号为200;预勘师对应的分支条件为a==1,即当预勘师之前的节点与节点之间的配置接口返回值满足分支条件的情况下,“待派管家”节点流转至“待预交底”节点,否则,“待派管家”节点流转至“派单中”节点。
74.具体地,点击“新建”,该网络拓扑图从“未开始”节点开始,选中“未开始”,右键录入目标参数,例如,手机号、姓名、目标节点、分支条件和品牌等,点击“造数据”,则从“未开始”节点生成到目标节点(待预约交底)的目标网络流程图,获取目标网络流程图所包括的配置接口的接口信息,即解析该目标网络流程图中不同事件下对应的不同配置接口的接口
信息,根据配置接口的请求路径、请求服务、返回、入参、优先级、请求方式等信息,串行或者并行调用配置接口,生成目标数据,达到一键构造数据的效果。
75.可选地,响应于所述配置接口调用失败,记录并存储调用失败的所述配置接口的接口数据。
76.具体地,在调用接口信息对应的配置接口时,由于系统设置、网络等原因导致配置接口调用失败,记录并存储配置接口的接口数据。接口数据包括以下字段:标识业务数据的id(businessid)、对应请求配置的id(url_cfg_id)、失败请求重跑的次数(run_num)、失败请求数据是否有效(state)、失败节点(node_val);其中,businessid表示由起始节点至目标节点生成的数据构造订单信息;url_cfg_id表示配置接口对应的编号;run_num表示由起始节点至目标节点生成的数据构造订单构造数据失败的次数,在之前失败的次数再加一次;state表示失败的接口数据再请求一次,若请求成功时,失败的接口数据就为有效数据;node_val表示在调用配置接口时调用失败的配置接口对应的失败节点。
77.可选地,记录并存储所述配置接口的接口数据之后,还包括:
78.根据所述接口数据,查找所述调用失败的所述接口数据对应的节点作为失败节点;将所述失败节点作为更新的起始节点,根据所述目标网络流程图、所述更新的起始节点和所述目标节点,生成目标数据。
79.具体地,根据存储的接口数据,查找调用失败的接口数据对应的节点作为失败节点;其中,调用失败的接口数据对应的节点可以是起始节点,也可以是目标节点;再将失败节点作为更新的起始节点,并根据更新的起始节点、目标网络流程图和目标节点,再次生成目标数据。
80.图5是本发明提供的数据构造方法的编辑示意图,如图5所示,在上述图4的描述基础上,目标节点为待约预交底,假设在“待量房”节点至“待约预交底”节点之间的事件线下的一个配置接口调用时调用失败,则记录并存储从“冻结初始化”至“待约预交底”的订单id、失败的配置接口的id、失败请求重跑的次数、失败请求数据是否有效、失败节点(待约预交底)。
81.具体地,在下一次接收数据构造请求时,点击“编辑”,选中“待约预交底”节点,右键录入目标参数,例如,目标节点(派单中)、预勘师(a==1);根据订单id查找接口数据对应的失败节点(待约预交底),将“待约预交底”作为更新的起始节点,失败的配置接口对应的请求作为起始调用请求,订单id对应的目标网络流程图从节点(待约预交底)开始流转到目标节点(派单中),获取该失败的配置接口对应的事件线下除失败的配置接口之外的其他配置接口,以及目标网络流程图中更新的起始节点与目标节点之间的所有事件线下的不同接口的接口信息,根据各个接口的请求路径、请求服务、返回、入参、优先级、请求方式等信息,串行或者并行调用不同的接口,生成目标数据,达到一键构造数据的效果。
82.下面对本发明提供的数据构造装置进行描述,下文描述的数据构造装置与上文描述的数据构造方法可相互对应参照。
83.本发明提供一种数据构造装置,图6是本发明提供的数据构造装置的结构示意图,如图6所示,数据构造装置600包括:确定模块601、接收模块602和第一生成模块603;其中,
84.确定模块601,用于根据接收到的数据构造请求,确定与所述数据构造请求对应的网络拓扑图;所述网络拓扑图为有向图;所述网络拓扑图包括至少两个节点;
85.接收模块602,用于接收与所述数据构造请求相关的目标参数;所述目标参数包括起始节点和目标节点;
86.第一生成模块603,用于根据所述网络拓扑图、所述起始节点和所述目标节点,生成目标数据。
87.本发明提供的数据构造装置,根据接收到的数据构造请求,确定与数据构造请求对应的网络拓扑图;再接收与数据构造请求相关的目标参数;根据网络拓扑图和目标参数,生成目标数据。本发明提供的数据构造方法,通过网络拓扑图和目标参数,实现了构造目标数据,支持长链路且多组合的复杂业务流程需求,提升了数据构造的效率。
88.可选地,第一生成模块603,具体用于:
89.根据所述网络拓扑图、所述起始节点和所述目标节点,确定目标网络流程图;
90.根据所述目标网络流程图,生成目标数据。
91.可选地,所述网络拓扑图还包括以下至少一项:至少一个事件线和分支;其中,各所述事件线表示两个节点之间或者一个节点与分支之间的事件;各所述事件线对应至少一个配置接口。
92.可选地,第一生成模块603,具体用于:
93.根据所述目标网络流程图,获取所述目标网络流程图所包括的所述配置接口的接口信息;
94.根据所述接口信息,按照所述接口信息中的优先级依次调用所述接口信息对应的所述配置接口,生成目标数据。
95.可选地,所述装置600还包括:
96.记录模块,用于响应于所述配置接口调用失败,记录并存储调用失败的所述配置接口的接口数据。
97.可选地,所述记录并存储所述配置接口的接口数据之后,还包括:
98.查找模块,用于根据所述接口数据,查找所述调用失败的所述接口数据对应的节点作为失败节点;
99.第二生成模块,用于将所述失败节点作为更新的起始节点,根据所述目标网络流程图、所述更新的起始节点和所述目标节点,生成目标数据。
100.可选地,所述接口信息包括以下至少一项:事件、请求路径、请求服务、入参、返回、请求方式和优先级。
101.图7是本发明提供的电子设备的实体结构示意图,如图7所示,该电子设备700可以包括:处理器(processor)710、通信接口(communications interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行数据构造方法,该方法包括:根据接收到的数据构造请求,确定与所述数据构造请求对应的网络拓扑图;所述网络拓扑图为有向图;所述网络拓扑图包括至少两个节点;接收与所述数据构造请求相关的目标参数;所述目标参数包括起始节点和目标节点;根据所述网络拓扑图、所述起始节点和所述目标节点,生成目标数据。
102.此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本
发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
103.另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序/指令,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的数据构造方法,该方法包括:根据接收到的数据构造请求,确定与所述数据构造请求对应的网络拓扑图;所述网络拓扑图为有向图;所述网络拓扑图包括至少两个节点;接收与所述数据构造请求相关的目标参数;所述目标参数包括起始节点和目标节点;根据所述网络拓扑图、所述起始节点和所述目标节点,生成目标数据。
104.又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的数据构造方法,该方法包括:根据接收到的数据构造请求,确定与所述数据构造请求对应的网络拓扑图;所述网络拓扑图为有向图;所述网络拓扑图包括至少两个节点;接收与所述数据构造请求相关的目标参数;所述目标参数包括起始节点和目标节点;根据所述网络拓扑图、所述起始节点和所述目标节点,生成目标数据。
105.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
106.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
107.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1