一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

变量加工方法、装置、计算机设备和存储介质与流程

2022-03-02 01:56:46 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,特别是涉及一种变量加工方法、装置、计算机设备和存储介质。


背景技术:

2.随着互联网金融的快速发展,金融服务模式也呈现多样化。在风控领域中,通常需要根据用户信息、用户行为、环境信息、设备信息以及外部资信等加工出一个标签或一个值,从而进行风险管控。其中,上述提及的各项数据即为变量数据,是作为风控的基础依据,而风控策略则为基于变量数据所生成的具体形态产品。随着系统的集群拆分及微服务改造,很多数据随着领域拆分被分散在各个业务系统中,这会阻碍变量数据的加工过程。
3.在相关技术中,通常是将各业务系统的数据同步到统一数据库,基于统一数据库进行变量加工。由于所有数据均需要从统一数据库读取,当变量数据较多时,会导致数据读取负担增大,从而会导致读取变慢而计算效率下降,进而影响整个风控效率。


技术实现要素:

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.响应于编译指令,将计算逻辑模板编译为自定义函数,基于预设数据源,将配置参数及过滤条件编译为数据获取表达式,预设数据源至少包括从除本地业务系统之外的其它业务系统实时调用的变量数据;
31.若检测到对目标变量数据的计算请求,则通过数据获取表达式,获取计算目标变量数据时所依赖的变量数据,并基于自定义函数对获取到的变量数据进行计算,得到目标变量数据。
32.一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
33.若在本地业务系统中检测到变量配置请求,则显示变量配置界面,并获取用户在变量配置界面中输入的配置信息,配置信息包括配置参数、计算逻辑模板及过滤条件,配置信息用于计算目标变量数据;
34.响应于编译指令,将计算逻辑模板编译为自定义函数,基于预设数据源,将配置参数及过滤条件编译为数据获取表达式,预设数据源至少包括从除本地业务系统之外的其它业务系统实时调用的变量数据;
35.若检测到对目标变量数据的计算请求,则通过数据获取表达式,获取计算目标变量数据时所依赖的变量数据,并基于自定义函数对获取到的变量数据进行计算,得到目标变量数据。
36.上述变量加工方法、装置、计算机设备和存储介质,由于预设数据源不再限于只是所有业务系统使用统一数据库,而是不同业务系统之间可以实时调用各自的变量数据,从而可以避免均从统一数据库中获取数据,而造成负担增大,进而可以提高获取变量数据的效率。由此,可以提升风控效率。另外,由于变量数据可以实时调用其它业务系统的变量数据,这些变量数据可以为其它业务系统之前已经计算好的,或者还可以由其它业务系统实时计算并提供,而不用本地业务系统自行计算,从而也可以提升本地业务系统获取变量数据的效率,进而可以提升风控效率。
附图说明
37.图1为一个实施例中变量加工过程的实施场景示意图;
38.图2为一个实施例中变量加工方法的流程示意图;
39.图3为一个实施例中配置界面的示意图;
40.图4为另一个实施例中变量加工方法的流程示意图;
41.图5为另一个实施例中变量计算过程的流程示意图;
42.图6为一个实施例中变量加工装置的结构框图;
43.图7为一个实施例中计算机设备的内部结构图。
具体实施方式
44.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
45.可以理解,本技术所使用的术语“第一”、“第二”等可在本文中用于描述各种专业名词,但除非特别说明,这些专业名词不受这些术语限制。这些术语仅用于将一个专业名词与另一个专业名词区分。举例来说,在不脱离本技术的范围的情况下,第三预设阈值与第四预设阈值可以相同可以不同。
46.随着互联网金融的快速发展,金融服务模式也呈现多样化。在风控领域中,通常需要根据用户信息、用户行为、环境信息、设备信息以及外部资信等加工出一个标签或一个值,从而进行风险管控。其中,上述提及的各项数据即为变量数据,是作为风控的基础依据,而风控策略则为基于变量数据所生成的具体形态产品。随着系统的集群拆分及微服务改造,很多数据随着领域拆分被分散在各个业务系统中,这会阻碍变量数据的加工过程。
47.在相关技术中,通常是将各业务系统的数据同步到统一数据库,基于统一数据库进行变量加工。由于所有数据均需要从统一数据库读取,当变量数据较多时,会导致数据读取负担增大,从而会导致读取变慢而计算效率下降,进而影响整个风控效率。
48.针对上述问题,本技术实施例提供了一种变量加工方法,该方法可以应用于如图1所示的应用环境中。其中,终端102在本地显示变量配置界面,提供输入设备,并连接本地业务系统,服务器104对应的是除本地业务系统之外的其它业务系统,终端102通过网络与服务器104进行通信。以终端102与服务器104协同用于执行本技术实施例中提供的变量加工方法为例进行说明,终端102若在本地检测到变量配置请求,则显示变量配置界面,供用户配置目标变量。在配置完目标变量后,若需要用到用户配置的目标变量,则可以基于配置信息,从其它业务系统实时调用变量数据用于计算用户配置的目标变量,得到目标变量数据。
49.其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器,服务器可以存在各自的数据存储系统以存储数据。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端、智能电视等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。
50.在一些实施例中,参见图2,提供了一种变量加工方法。以该方法应用于图1中的终端102为例进行说明,包括以下步骤:
51.202、若在本地业务系统中检测到变量配置请求,则显示变量配置界面,并获取用户在变量配置界面中输入的配置信息,配置信息包括配置参数、计算逻辑模板及过滤条件,配置信息用于计算目标变量数据。
52.在上述步骤中,本地业务系统可以代指的是与终端102连接的本地服务器,或者直接指的是终端102,本技术实施例对此不作具体限定。实际上在风控领域中,在计算变量数据时也有可能用到本地业务系统的基础业务数据,而本地业务系统通常设置在本地服务器上。变量配置请求可以是由用户(如业务人员)发起的,变量配置界面则为可视化界面,可包含供用户输入信息的文本框及选择框等,可以由终端102显示,具体示例可参考图3,本技术实施例不对变量配置界面的排布及包含的内容作具体限定。
53.其中,计算逻辑模板可以用于指定做何种计算,而配置参数则为做该种计算时的具体用到常量参数,而过滤条件则作为后续获取目标变量数据所依赖的变量数据的筛选依据。在图3中,用户可以通过下拉选项选择计算逻辑模板的类型,如求和计算。用户还可以配置参数,如图3中的时间片30天等。需要说明的是,过滤条件除了查表项之外(如在图3中,查询业务结果为订单支付成功的金额即为查表项),还可以包括查表项的数据类型,如图3中的字符串类型。用户在输入配置信息后,终端102即可获取上述配置信息。
54.204、响应于编译指令,基于预设数据源,将配置参数及过滤条件编译为数据获取表达式,将计算逻辑模板编译为自定义函数,预设数据源至少包括从除本地业务系统之外的其它业务系统实时调用的变量数据。
55.其中,编译指令可以是由用户触发的,如用户在变量配置界面完成配置后,即可通过变量配置界面中的编译指令触发元素,触发编译指令。终端102在检测到编译指令后,即可对其进行响应。预设数据源可以其它业务系统提供,可以理解的是,除本地业务系统之外的其它业务系统也是具有变量数据的。而本地业务系统在进行变量计算时,有可能需要依
赖其它业务系统已经计算好的变量数据,或者由其它业务系统根据已配置好的变量实时计算相应的变量数据,以供本地业务系统使用。
56.数据获取表达式可以为sql(structured query language,结构化查询语言)表达式。而自定义函数可以指的是对数据获取表达式获取到的数据作进一步计算的处理逻辑,如最近连续次数的统计逻辑或者基于经纬度获取距离的计算逻辑,本技术实施例对此不作具体限定。其中,自定义函数可以被数据获取表达式所包含,本技术实施例对此不作具体限定。
57.206、若检测到对目标变量数据的计算请求,则通过数据获取表达式,获取计算目标变量数据时所依赖的变量数据,并基于自定义函数对获取到的变量数据进行计算,得到目标变量数据。
58.其中,计算请求可以由用户通过终端102触发的。本地业务系统在业务处理过程中若需要用到目标变量,则也可以触发计算请求。另外,其它业务系统若需要用到该目标变量,则也可以触发该计算请求,本技术实施例对此不作具体限定。可以理解的是,无论上述哪种情形,计算请求均可以由相应接口触发传递。将计算目标变量数据时所依赖的变量数据可以作为计算过程的数据基础,而自定义函数作为处理逻辑,即可计算得到目标变量数据。
59.本技术实施例提供的方法,由于预设数据源不再限于只是所有业务系统使用统一数据库,而是不同业务系统之间可以实时调用各自的变量数据,从而可以避免均从统一数据库中获取数据,而造成负担增大,进而可以提高获取变量数据的效率。由此,可以提升风控效率。另外,由于变量数据可以实时调用其它业务系统的变量数据,这些变量数据可以为其它业务系统之前已经计算好的,或者还可以由其它业务系统实时计算并提供,而不用本地业务系统自行计算,从而也可以提升本地业务系统获取变量数据的效率,进而可以提升风控效率。
60.在一些实施例中,参见图4,提供了一种变量加工方法。以该方法应用于图1中的终端102为例进行说明,包括以下步骤:
61.402、若在本地业务系统中检测到变量配置请求,则显示变量配置界面,并获取用户在变量配置界面中输入的配置信息,配置信息包括配置参数、计算逻辑模板及过滤条件,配置信息用于计算目标变量数据。
62.该过程可参考上述实施例的说明,此处不再赘述。
63.404、响应于编译指令,将计算逻辑模板编译为自定义函数,基于预设数据源,将数据获取模板中的预留参数替换为配置参数,将预设数据源、过滤条件及替换后的数据获取模板进行组合,得到数据获取表达式,预设数据源至少包括从除本地业务系统之外的其它业务系统实时调用的变量数据。
64.可以理解的是,数据获取模板中通常会有些预留参数,例如,sql模板中“select xxx from service”其中的“xxx”即为预留参数,而实际实施中,可以将配置参数替换上述预留参数。而预设数据源即对应的上述sql模板中的“service”,“service”可以代指的是从其它业务系统实时调用的变量数据。
65.406、若检测到对目标变量数据的计算请求,则通过数据获取表达式,获取计算目标变量数据时所依赖的变量数据,并基于自定义函数对获取到的变量数据进行计算,得到
目标变量数据。
66.该过程可参考上述实施例的说明,此处不再赘述。
67.本技术实施例提供的方法,由于变量加工过程中,对业务逻辑进新抽象及模板化,使得用户只需要基于自身需求,分别配置参数、计算逻辑模板及过滤条件,后续可自行组合成变量,并实现变量加工,而不需要由研发人员基于需求,通过编码、验证及发布产品等一系列过程重新研发相应产品,从而可以提高变量加工效率。
68.在一些实施例中,预设数据源还包括本地业务系统的本地存储数据及从统一数据库中获取的报文数据。其中,本地业务系统的本地存储数据即为先前变量加工过程所保存的历史数据,而从统一数据库中获取的报文数据即为本地业务系统基于需求自查的变量数据。
69.本技术实施例提供的方法,由于数据源可以为多种,从而可以避免均从统一数据库中获取数据,而造成负担增大,进而可以提高获取变量数据的效率。由此,可以提升风控效率。另外,由于可从本地存储数据中获取变量数据,可以重复利用之前的加工结果,避免重复加工,从而也可以提升本地业务系统获取变量数据的效率,进而可以提升风控效率。
70.在一些实施例中,本技术实施例不对通过数据获取表达式,获取计算目标变量数据时所依赖的变量数据的方式作具体限定,包括但不限于:对数据获取表达式进行解析,得到目标变量数据所依赖的且待计算的变量列表;基于变量列表,计算目标变量数据所依赖的变量数据。
71.由于数据获取表达式可以表示需要请求的变量数据,如“select xxx from service”中的xxx即为所请求的变量数据,从而通过述数据获取表达式,可以确定计算目标变量数据时所请求的变量数据。由此,可以由这些所请求的变量数据组成变量列表。需要说明的是,这里变量列表可以由所请求的变量数据的变量名构成,变量列表中的“列表”可以为变量名集合。在确定变量列表后,可以先计算这些变量列表中的变量数据,再计算目标变量数据。
72.本技术实施例提供的方法,由于可以根据数据获取表达式,将配置参数时选择的参数自动解析出来,从而可以提升获取变量数据的效率。
73.在一些实施例中,本技术实施例不对基于变量列表,计算目标变量数据所依赖的变量数据的方式作具体限定,包括但不限于:确定变量列表中的变量依赖关系;基于变量依赖关系,依次计算变量列表中的变量,得到目标变量数据所依赖的变量数据。
74.可以理解的是,有些变量是需要等到前面某些变量加工结束后才能加工,也即依赖于前面这些变量加工得到的变量数据才能加工。由此,在计算目标变量数据所依赖的变量数据时,可以先确定这些变量数据的依赖关系,从而依次计算出目标变量数据每一所依赖的变量数据。
75.本技术实施例提供的方法,由于可以基于依赖关系依次计算变量数据,从而每一变量数据的数据来源比较清晰,后续出现计算错误也方便索引出计算错误的环节。另外,由于存在依赖关系,从而之前计算出的变量数据也可以进行复用,进而提升变量数据的加工效率。
76.在一些实施例中,本技术实施例不对基于变量依赖关系,依次计算变量列表中的变量的方式作具体限定,包括但不限于:将变量列表中的变量记为两类,分别为第一类变量
及第二类变量,第二类变量的计算过程依赖于第一类变量的计算结果;计算第一类变量,基于第一类变量的计算结果,计算第二类变量。
77.其中,第一类变量指的是可以直接获取的或者基于可直接获取的变量数据,可直接计算得到的变量,而第二类变量指的是需要等第一类变量中某些变量计算完毕后,才可以进行计算的变量。另外,对第一类变量及第二类变量的计算过程,可以根据需求对应不同的处理逻辑,如上述提及的最近连续次数的统计逻辑或者基于经纬度获取距离的计算逻辑等,本技术对此不作具体限定。
78.本技术实施例提供的方法,由于可以基于依赖关系依次计算变量数据,从而每一变量数据的数据来源比较清晰,后续出现计算错误也方便索引出计算错误的环节。另外,由于存在依赖关系,从而之前计算出的变量数据也可以进行复用,进而提升变量数据的加工效率。
79.在一些实施例中,本技术实施例不对计算第一类变量的方式作具体限定,包括但不限于:将第一类变量分为三个子类变量;三个子类变量分别为基于本地业务系统的本地存储数据所计算的变量、基于其它业务系统实时调用的变量数据所计算的变量以及基于计算请求的上下文数据所计算的变量;基于变量依赖关系,并行依次计算三个子类下的每一变量。
80.其中,基于本地业务系统的本地存储数据所计算的变量,即为需要基于本地业务系统先前变量加工过程所保存的历史数据,所计算的变量。可以理解的是,由于本地存储的历史数据可直接获取,自然这些变量可以不用依赖于其它变量数据计算得到。而基于其它业务系统实时调用的变量数据所计算的变量,即为需要基于其它业务系统先前变量加工过程所保存的历史数据或者基于其它业务系统实时变量加工所得到的变量数据,所计算得到的变量。可以理解的是,其它业务系统存储的历史数据可直接获取。而其它业务系统即使是需要实时变量加工,在接收到请求后,也可以同步执行,从而也不会影响这一类的子类变量的获取效率。
81.由于变量加工过程通常不是个独立的过程,一般某一业务处理过程中会涉及到多种变量的加工过程,从而对于某一变量,其可能仅对应业务处理过程中某一变量加工过程。由此,业务处理过程中可能会请求加工多个变量,为加工变量的计算请求可能会不止一个。而对于某一计算请求及该计算请求所请求加工的变量,该计算请求的上下文数据,即为业务处理过程中该变量的加工过程对应的上下文变量加工过程。可以理解的是,这些上下文变量加工过程通常也会存在一些变量数据可以用于计算该变量,而这些变量数据通常也是可以从上下文变量加工过程中直接获取。
82.本技术实施例提供的方法,由于可以基于依赖关系依次计算变量数据,从而每一变量数据的数据来源比较清晰,后续出现计算错误也方便索引出计算错误的环节。另外,由于存在依赖关系,从而之前计算出的变量数据也可以进行复用,进而提升变量数据的加工效率。再者,由于可以对变量数据进行细致分类,从而确定了可直接获取的变量数据,以避免重复加工,进而可提升变量数据的加工效率。
83.在一些实施例中,本技术实施例不对基于变量列表,计算得到目标变量数据所依赖的变量数据的方式作具体限定,包括但不限于:若变量列表中存在满足预设条件的变量,则在达到预设条件对应的预设时点时,计算满足预设条件的变量,得到目标变量数据所依
赖的变量数据,预设条件用于指示达到预设时点时所需计算的变量。
84.可以理解的是,在触发某些前提下,有些变量是可以被提前计算好的。例如,若确定某一用户都会查阅自身近一个月的所有支出,则在检测到用户登录完成时,即可提前把该用户自身近一个月的所有支出提前准备好。由此,在本技术实施例中,可以预先设置预设时点。通常在用户的业务操作流程中,在需要用到某一变量数据之前,可能会有些触发操作,这些触发操作即对应上述预设时点。例如,上述示例中检测到用户登陆完成,即可以为预设时点。而触发预设时点时,需要计算哪些变量也是可以提前确定的。例如,可以根据用户的操作习惯确定,或者基于业务操作流程的逻辑确定(如某些变量数据在某些业务操作流程的后续过程中必然会用到)。
85.基于上述说明,若变量列表中存在达到预设时点时所需计算的变量,则在达到预设时点时,即可提前计算得到这些变量,以为后续变量加工过程提前作准备。需要说明的是,由于同样是变量,由预设时点触发计算的这些变量也可以参考上述实施例提及的方法流程,此处不再赘述。
86.本技术实施例提供的方法,由于可以预先设置预设时点,并在变量加工过程中,在触发预设时点时,将该变量加工过程后续需要用到的变量数据提前准备好,从而可以提升变量数据的加工效率。
87.基于上述实施例的相关说明,为了便于理解,现以实际界面中定义的变量逻辑为例,对变量加工过程进行举例说明,具体地:
88.(1)先将常用的变量数据计算方法抽象成计算逻辑模板,其中,模板预留一部分可调整的参数,以供用户配置。例如,统计用户历史交易总金额可以抽象成为一个历史统计模板,并且可以预留包括统计天数、统计的金额字段以及过滤条件(如是否成功、渠道或商户等)。
89.(2)由用户在界面配置参数,如选择统计30天的成功交易金额等,并选择过滤条件,以定义变量。
90.(3)若用户的配置信息被人工审核通过,则可由用户选择进行编译,从而将配置信息编译成sql表达式(可以包含自定义函数),并发布运行。
91.(4)当接口调用需要该变量时,由业务系统解析sql表达式,根据sql表达式的定义,自动准备依赖的数据。
92.(5)根据准备好的所依赖的数据执行sql表达式,输出计算结果。
93.上述过程为变量加工的主要过程,实际实施过程中,配置信息编译为sql表达式的过程具体如下:
94.(1)先预定义好固定模板sql,也即数据获取表达式,在编译时将界面参数替换掉sql中的参数。
95.(2)针对不同的数据来源,编译后的sql表达式可以不一样。例如,基于请求报文计算的编译后的sql为select xxx from current,而基于历史数据计算的为select xxx from history,基于服务查询其它系统数据计算的为select xxx from service。
96.(3)sql表达既支持标准的sql语法,同时又对一些复杂的逻辑实现,可封装为自定义函数,从而让使得sql之前不能支持的逻辑,得以实现。例如,lastrepeat函数可实现最近连续次数的统计逻辑,distance函数可实现基于经纬度计算距离的逻辑等。
97.另外,变量的数据准备与执行计算实现如图5所示,具体过程如下:
98.(1)将请求转换为标准的方便计算的上下文对象;
99.(2)解析请求需要计算的变量列表,包括接口传递指定的变量和提前配置的当前时间点应该计算的变量。其中,获取变量时,可以按照变量分类获取,如获取某一分类下的所有变量;或者,可以按照变量集获取,如获取具体哪些变量集中的变量;再或者,可以按照变量类型获取,如获取具体某一变量类型的变量;需要说明的是,提前配置的当前时间点应该计算的变量也即对应上述实施例中的预设时点,该过程可以是异步处理;
100.(3)根据变量模板及变量定义时选择的参数,自动解析出上一步需要计算变量所依赖的变量。
101.(4)根据变量的数据源及依赖关系,将变量分为4大类。第一类是基于历史数据计算的变量,第二类是基于服务调用需要获取外部系统数据的变量,第三类是基于请求上下文数据且不依赖前面前两类变量的变量,第四类是依赖于前面3类变量的变量。其中,上述依赖关系体现在计算处理的先后顺序上,被依赖的变量会被先处理。基于依赖关系,数据来源比较清晰,并且可以实现数据的复用。
102.(5)并行启动多个线程对前面3类变量进行计算。计算时,第一步准备数据,如查询历史数据,或调用外部服务。第二步根据依赖关系对变量进行排序。第三步按照顺序使用准备好的数据执行变量计算。
103.(6)等前面3类变量都计算完成后,开始执行第4类变量的计算。
104.应该理解的是,虽然图1、图2及图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1、图2及图3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
105.需要说明的是,上述阐述的技术方案在实际实施过程中可以作为独立实施例来实施,也可以彼此之间进行组合并作为组合实施例实施。另外,在对上述本发明实施例内容进行阐述时,仅基于方便阐述的思路,按照相应顺序对不同实施例进行阐述,如按照数据流流向的顺序,而并非是对不同实施例之间的执行顺序进行限定。相应地,在实际实施过程中,若需要实施本发明提供的多个实施例,则不一定需要按照本发明阐述实施例时所提供的执行顺序,而是可以根据需求安排不同实施例之间的执行顺序。
106.结合上述实施例的内容,在一个实施例中,如图6所示,提供了一种变量加工装置装置,包括:第一获取模块602、编译模块604及第二获取模块606,其中:
107.第一获取模块602,用于在本地业务系统中检测到变量配置请求时,则显示变量配置界面,并获取用户在变量配置界面中输入的配置信息,配置信息包括配置参数、计算逻辑模板及过滤条件,配置信息用于计算目标变量数据;
108.编译模块604,用于响应于编译指令,将计算逻辑模板编译为自定义函数,基于预设数据源,将配置参数及过滤条件编译为数据获取表达式,预设数据源至少包括从除本地业务系统之外的其它业务系统实时调用的变量数据;
109.第二获取模块606,用于当检测到对目标变量数据的计算请求时,则通过数据获取表达式,获取计算目标变量数据时所依赖的变量数据,并基于自定义函数对获取到的变量数据进行计算,得到目标变量数据。
110.在一个实施例中,预设数据源还包括本地业务系统的本地存储数据及从统一数据库中获取的报文数据。
111.在一个实施例中,第二获取模块606,包括:
112.解析单元,用于对数据获取表达式进行解析,得到目标变量数据所依赖的且待计算的变量列表;
113.计算单元,用于基于变量列表,计算目标变量数据所依赖的变量数据在一个实施例中,计算单元,包括:
114.确定子单元,用于确定变量列表中的变量依赖关系;
115.计算子单元,用于基于变量依赖关系,依次计算变量列表中的变量,得到目标变量数据所依赖的变量数据
116.在一个实施例中,计算子单元,用于将变量列表中的变量记为两类,分别为第一类变量及第二类变量,第二类变量的计算过程依赖于第一类变量的计算结果;计算第一类变量,基于第一类变量的计算结果,计算第二类变量。
117.在一个实施例中,计算子单元,用于将第一类变量分为三个子类变量;三个子类变量分别为基于本地业务系统的本地存储数据所计算的变量、基于其它业务系统实时调用的变量数据所计算的变量以及基于计算请求的上下文数据所计算的变量;基于变量依赖关系,并行依次计算三个子类下的每一变量。
118.在一个实施例中,计算单元,用于当变量列表中存在满足预设条件的变量时,则在达到预设条件对应的预设时点时,计算满足预设条件的变量,得到目标变量数据所依赖的变量数据,预设条件用于指示达到预设时点时所需计算的变量。
119.本发明实施例提供的装置,由于预设数据源不再限于只是所有业务系统使用统一数据库,而是不同业务系统之间可以实时调用各自的变量数据,从而可以避免均从统一数据库中获取数据,而造成负担增大,进而可以提高获取变量数据的效率。由此,可以提升风控效率。另外,由于变量数据可以实时调用其它业务系统的变量数据,这些变量数据可以为其它业务系统之前已经计算好的,或者还可以由其它业务系统实时计算并提供,而不用本地业务系统自行计算,从而也可以提升本地业务系统获取变量数据的效率,进而可以提升风控效率。
120.关于变量加工装置的具体限定可以参见上文中对于变量加工方法的限定,在此不再赘述。上述变量加工装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
121.在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备
的数据库用于存储预设阈值。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种变量加工方法。
122.本领域技术人员可以理解,图7中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
123.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
124.若在本地业务系统中检测到变量配置请求,则显示变量配置界面,并获取用户在变量配置界面中输入的配置信息,配置信息包括配置参数、计算逻辑模板及过滤条件,配置信息用于计算目标变量数据;
125.响应于编译指令,将计算逻辑模板编译为自定义函数,基于预设数据源,将配置参数及过滤条件编译为数据获取表达式,预设数据源至少包括从除本地业务系统之外的其它业务系统实时调用的变量数据;
126.若检测到对目标变量数据的计算请求,则通过数据获取表达式,获取计算目标变量数据时所依赖的变量数据,并基于自定义函数对获取到的变量数据进行计算,得到目标变量数据。
127.在一个实施例中,处理器执行计算机程序时,预设数据源还包括本地业务系统的本地存储数据及从统一数据库中获取的报文数据。
128.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
129.对数据获取表达式进行解析,得到目标变量数据所依赖的且待计算的变量列表;
130.基于变量列表,计算目标变量数据所依赖的变量数据。
131.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
132.确定变量列表中的变量依赖关系;
133.基于变量依赖关系,依次计算变量列表中的变量,得到目标变量数据所依赖的变量数据。
134.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
135.将变量列表中的变量记为两类,分别为第一类变量及第二类变量,第二类变量的计算过程依赖于第一类变量的计算结果;
136.计算第一类变量,基于第一类变量的计算结果,计算第二类变量。
137.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
138.将第一类变量分为三个子类变量;三个子类变量分别为基于本地业务系统的本地存储数据所计算的变量、基于其它业务系统实时调用的变量数据所计算的变量以及基于计算请求的上下文数据所计算的变量;
139.基于变量依赖关系,并行依次计算三个子类下的每一变量。
140.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
141.若变量列表中存在满足预设条件的变量,则在达到预设条件对应的预设时点时,计算满足预设条件的变量,得到目标变量数据所依赖的变量数据,预设条件用于指示达到预设时点时所需计算的变量。
142.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算
机程序被处理器执行时实现以下步骤:
143.若在本地业务系统中检测到变量配置请求,则显示变量配置界面,并获取用户在变量配置界面中输入的配置信息,配置信息包括配置参数、计算逻辑模板及过滤条件,配置信息用于计算目标变量数据;
144.响应于编译指令,将计算逻辑模板编译为自定义函数,基于预设数据源,将配置参数及过滤条件编译为数据获取表达式,预设数据源至少包括从除本地业务系统之外的其它业务系统实时调用的变量数据;
145.若检测到对目标变量数据的计算请求,则通过数据获取表达式,获取计算目标变量数据时所依赖的变量数据,并基于自定义函数对获取到的变量数据进行计算,得到目标变量数据。
146.在一个实施例中,计算机程序被处理器执行时,预设数据源还包括本地业务系统的本地存储数据及从统一数据库中获取的报文数据。
147.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
148.对数据获取表达式进行解析,得到目标变量数据所依赖的且待计算的变量列表;
149.基于变量列表,计算目标变量数据所依赖的变量数据。
150.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
151.确定变量列表中的变量依赖关系;
152.基于变量依赖关系,依次计算变量列表中的变量,得到目标变量数据所依赖的变量数据。
153.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
154.将变量列表中的变量记为两类,分别为第一类变量及第二类变量,第二类变量的计算过程依赖于第一类变量的计算结果;
155.计算第一类变量,基于第一类变量的计算结果,计算第二类变量。
156.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
157.将第一类变量分为三个子类变量;三个子类变量分别为基于本地业务系统的本地存储数据所计算的变量、基于其它业务系统实时调用的变量数据所计算的变量以及基于计算请求的上下文数据所计算的变量;
158.基于变量依赖关系,并行依次计算三个子类下的每一变量。
159.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
160.若变量列表中存在满足预设条件的变量,则在达到预设条件对应的预设时点时,计算满足预设条件的变量,得到目标变量数据所依赖的变量数据,预设条件用于指示达到预设时点时所需计算的变量。
161.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
162.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可
包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。
163.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
164.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献