CN117082151A - 多数据源的调用方法、装置及存储介质 - Google Patents
多数据源的调用方法、装置及存储介质 Download PDFInfo
- Publication number
- CN117082151A CN117082151A CN202310953926.1A CN202310953926A CN117082151A CN 117082151 A CN117082151 A CN 117082151A CN 202310953926 A CN202310953926 A CN 202310953926A CN 117082151 A CN117082151 A CN 117082151A
- Authority
- CN
- China
- Prior art keywords
- data source
- product
- data sources
- data
- sources
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 239000000047 product Substances 0.000 claims description 247
- 239000013066 combination product Substances 0.000 claims description 30
- 229940127555 combination product Drugs 0.000 claims description 30
- 230000015654 memory Effects 0.000 claims description 20
- 230000007246 mechanism Effects 0.000 claims description 18
- 230000004044 response Effects 0.000 claims description 13
- 239000003016 pheromone Substances 0.000 claims description 11
- 238000012216 screening Methods 0.000 claims description 2
- 238000007405 data analysis Methods 0.000 claims 1
- 238000004458 analytical method Methods 0.000 abstract description 3
- 238000003066 decision tree Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 12
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000001052 transient effect Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000004886 process control Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 2
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000739 chaotic effect Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/61—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供了一种多数据源的调用方法、装置及存储介质。其中方法包括:获取产品服务请求中携带的请求参数信息,并确定满足产品服务请求的第一产品;获取第一产品在原始树样本中的路由信息,基于路由信息,确定第一产品的产品类型;在第一产品的产品类型为单一产品的情况下,获取该单一产品关联的多个数据源,并对多个数据源进行轮盘权重决策,确定各数据源的初始优先级;基于各数据源的初始优先级以及各数据源的相关调用信息,获取各数据源的选取概率;并基于多个数据源的选取概率调用目标数据源。能更好的综合数据源多个维度进行分析,从而选取出更优异的数据源进行服务调用,从一定程度上讲,节省了成本,提升了用户体验。
Description
技术领域
本申请涉及多数据源的调用技术领域,尤其涉及一种多数据源的调用方法、装置及存储介质。
背景技术
在一些多数据源的调用场景中,例如用户实名信息的鉴定场景,存在着诸多的方式,如人物信息三要素(姓名,身份证,电话号码),图片人物信息四要素(姓名,身份证,电话号码,人像图片信息),用户二要素(姓名,手机号)等等,对于服务提供方的服务端设备而言,同一种能力如人物信息三要素的鉴定数据来源有许多个,如市场上的电信公司,移动公司等。
现有的技术方案是通过生成一个服务调用端口的形式提供实名认证服务,即“多对多”的形式,这种形式下,无法智能的选择价格,性能等更加优异的数据源,只能单一进行特定数据源的调用。
发明内容
本申请提供了一种多数据源的调用方法、装置及系统,以实现多数据源的智能调用。本申请的技术方案如下:
第一方面,本申请实施例提供了一种多数据源的调用方法,包括:
响应于产品服务请求,获取所述产品服务请求中携带的请求参数信息;并基于所述请求参数信息确定满足所述产品服务请求的第一产品;
获取所述第一产品在原始树样本中的路由信息,并基于所述路由信息,确定所述第一产品的产品类型;其中,所述产品类型包括组合产品和单一产品;所述原始树样本是以服务、产品和数据源分别作为根节点、分支节点和叶节点构建的;所述组合产品的子节点为组合产品或单一产品,所述单一产品的子节点为数据源;
在所述第一产品的产品类型为组成产品的情况下,逐个寻址所述第一产品在所述原始树样本中关联的单一产品,针对该单一产品进行如下步骤操作,直到所述产品服务请求响应结束;
获取该单一产品关联的多个数据源,并对所述多个数据源进行轮盘权重决策,确定所述多个数据源中各数据源的初始优先级;
基于所述多个数据源中各数据源的初始优先级以及所述各数据源的相关调用信息,获取所述各数据源的选取概率;并基于所述多个数据源的选取概率,确定并调用所述多个数据源中的目标数据源。
在一些实现方式中,所述方法还包括:
在所述第一产品的产品类型为单一产品的情况下,获取该单一产品关联的多个数据源;并对所述多个数据源进行轮盘权重决策,确定所述多个数据源中各数据源的初始优先级;
基于所述多个数据源中各数据源的初始优先级以及所述各数据源的相关调用信息,获取所述各数据源的选取概率;并基于所述多个数据源的选取概率,确定并调用所述多个数据源中的目标数据源。
在一些实现方式中,所述对所述多个数据源进行轮盘权重决策,确定所述多个数据源中各数据源的初始优先级,包括:
针对所述多个数据源中的每个数据源,计算所述每个数据源的轮盘权重;
基于所述多个数据源的轮盘权重,获取所述每个数据源的轮盘权重占比;
基于所述轮盘权重占比和预设轮盘机制,确定所述每个数据源的轮盘区域;
基于所述预设轮盘机制随机生成一个自然数,并确定所述自然数在所述预设轮盘机制中所处的轮盘区域;
基于所述自然数所处的轮盘区域,确定所述多个数据源中各数据源的初始优先级。
在一些实现方式中,所述计算所述每个数据源的轮盘权重,包括:
基于所述每个数据源的价格和调用时延,计算所述每个数据源的轮盘权重。
在一些实现方式中,所述确定并调用所述多个数据源中的目标数据源之后,还包括:
判断所述目标数据源是否调用成功;
在所述目标数据源调用不成功的情况下,计算所述多个数据源中除目标数据源之外的各替代数据源的选取概率;
基于所述各替代数据源的选取概率,确定并调用新的目标数据源。
在一些实现方式中,所述计算所述多个数据源中除目标数据源之外的各数据源的选取概率,包括:
基于预设数据源选取规则,计算所述多个数据源中除目标数据源之外的各数据源的选取概率。
在一些实现方式中,所述基于所述多个数据源中各数据源的初始优先级以及所述各数据源的相关调用信息,获取所述各数据源的选取概率,包括:
基于所述多个数据源中各数据源的初始优先级、所述各数据源与所述第一产品之间的信息素以及所述各数据源的调用时延,获取所述各数据源的选取概率。
在一些实现方式中,所述获取该单一产品关联的多个数据源之后,还包括:
基于数据源黑名单,对所述多个数据源进行筛选,得到适用于所述第一产品的多个数据源。
第二方面,本申请实施例提供了一种多数据源的调用装置,包括:
数据解析模块,用于响应于产品服务请求,获取所述产品服务请求中携带的请求参数信息;并基于所述请求参数信息确定满足所述产品服务请求的第一产品;
产品类型确定模块,用于获取所述第一产品在原始树样本中的路由信息,并基于所述路由信息,确定所述第一产品的产品类型;其中,所述产品类型包括组合产品和单一产品;所述原始树样本是以服务、产品和数据源分别作为根节点、分支节点和叶节点构建的;所述组合产品的子节点为组合产品或单一产品,所述单一产品的子节点为数据源;
流程控制模块,用于在所述第一产品的产品类型为组成产品的情况下,逐个寻址所述第一产品在所述原始树样本中关联的单一产品,针对该单一产品进行如下步骤操作,直到所述产品服务请求响应结束;
轮盘决策模块,用于获取该单一产品关联的多个数据源,并对所述多个数据源进行轮盘权重决策,确定所述多个数据源中各数据源的初始优先级;
目标确定模块,用于基于所述多个数据源中各数据源的初始优先级以及所述各数据源的相关调用信息,获取所述各数据源的选取概率;并基于所述多个数据源的选取概率,确定并调用所述多个数据源中的目标数据源。
在一些实现方式中,轮盘决策模块,还用于:
在所述第一产品的产品类型为单一产品的情况下,获取该单一产品关联的多个数据源;并对所述多个数据源进行轮盘权重决策,确定所述多个数据源中各数据源的初始优先级;
目标确定模块,用于基于所述多个数据源中各数据源的初始优先级以及所述各数据源的相关调用信息,获取所述各数据源的选取概率;并基于所述多个数据源的选取概率,确定并调用所述多个数据源中的目标数据源。
在一些实现方式中,轮盘决策模块,具体用于:
针对所述多个数据源中的每个数据源,计算所述每个数据源的轮盘权重;
基于所述多个数据源的轮盘权重,获取所述每个数据源的轮盘权重占比;
基于所述轮盘权重占比和预设轮盘机制,确定所述每个数据源的轮盘区域;
基于所述预设轮盘机制随机生成一个自然数,并确定所述自然数在所述预设轮盘机制中所处的轮盘区域;
基于所述自然数所处的轮盘区域,确定所述多个数据源中各数据源的初始优先级。
在一些实现方式中,轮盘决策模块在计算所述每个数据源的轮盘权重时,用于:
基于所述每个数据源的价格和调用时延,计算所述每个数据源的轮盘权重。
在一些实现方式中,所述装置还包括:
结果判断模块,用于判断所述目标数据源是否调用成功;
替代计算模块,用于在所述目标数据源调用不成功的情况下,计算所述多个数据源中除目标数据源之外的各替代数据源的选取概率;并基于所述各替代数据源的选取概率,确定并调用新的目标数据源。
在一些实现方式中,替代计算模块在计算所述多个数据源中除目标数据源之外的各数据源的选取概率时,具体用于:
基于预设数据源选取规则,计算所述多个数据源中除目标数据源之外的各数据源的选取概率。
在一些实现方式中,目标确定模块在基于所述多个数据源中各数据源的初始优先级以及所述各数据源的相关调用信息,获取所述各数据源的选取概率时,用于:
基于所述多个数据源中各数据源的初始优先级、所述各数据源与所述第一产品之间的信息素以及所述各数据源的调用时延,获取所述各数据源的选取概率。
在一些实现方式中,轮盘决策模块在获取该单一产品关联的多个数据源之后,还用于:
基于数据源黑名单,对所述多个数据源进行筛选,得到适用于所述第一产品的多个数据源。
第三方面,本申请实施例提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请第一方面实施例所述的多数据源的调用方法。
第四方面,本申请实施例提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请第一方面实施例所述的多数据源的调用方法。
第五方面,本申请实施例提供了一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现本申请第一方面实施例所述的多数据源的调用方法的步骤。
本申请实施例提供的技术方案至少带来以下有益效果:
基于组合产品、单一产品以及数据源构建原始树样本,在数据源的路由信息基础上通过添加轮盘权重、优先级等属性形成决策树样本,基于决策树样本实现数据源的择优选择。在决策树形成的过程中,基于数据源的性能,价格等综合因素得到数据源的轮盘权重,在基于轮盘权重确定数据源的初始优先级,之后结合数据源的其他调用相关因素得到数据源的最终优先级,基于最终优先级实现多维度的数据源的择优调用。基于决策树能更好的综合数据源多个维度进行分析,从而选取出更优异的数据源进行服务调用,从一定程度上讲,节省了成本,提升了用户体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理,并不构成对本申请的不当限定。
图1是根据一示例性实施例示出的一种多数据源的调用方法的流程图。
图2是根据一示例性实施例示出的原始树样本的示意图。
图3是根据另一示例性实施例示出的一种多数据源的调用方法的流程图。
图4是根据又一示例性实施例示出的一种多数据源的调用方法的流程图。
图5是根据又一示例性实施例示出的一种多数据源的调用方法的流程图。
图6是根据一示例性实施例示出的一种多数据源的调用装置的框图。
图7是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本申请的技术方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本申请中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
实名认证服务为通过人物信息比对校验,为外部应用注册登录提供安全可靠的用户信息维护服务。实名认证服务存在着两个场景。
场景1,一种能力关联多种能力,如:图片人物信息四要素是由人物信息三要素(姓名,身份证,电话号码),图像信息三要素(姓名,身份证,图像)等组成的。先从人物信息三要素认证成功后,再取图像信息,姓名,身份证信息进行图像三要素校验,综合两个结果再进行返回。
场景2,一种能力关联多个数据源,如人物信息三要素(姓名,身份证,电话号码)可由例如电信号码数据库,移动号码数据库,联通号码数据库等多个认证数据库组成,根据价格性能等综合因素可以对他们进行决策,优先级高的进行优先调用,调用失败后再进行依次进行调用。
针对以上两个场景,可以细分出以下的相关维度。
产品维度:实名认证可以分为众多的产品,其中,如运营商三要素(手机+姓名+身份证),人像三要素(姓名+身份证+人像),运营商二要素(手机+姓名),身份二要素(身份证+姓名),运营商四要素(手机+姓名+身份证+人像)等等,产品的维度多代表能力多,消费的时候,能力值必须得到申请,才能进行计费和结算。
数据源维度:同样的道理,一个产品包括一个系列的数据源,比如,人物信息三要素就可以有多个数据源组成,每个数据源都属于一个单独的个体;如果说产品是一个连,那数据源就是连队里面的士兵。
数据源方公司维度(影响较小):每个公司都有提供不同能力的数据源,为了能对其进行结算,也需要把他们统一管理起来。
针对以上的现状,首先要面对的技术问题是,不同维度下的场景存在调用困难的情况,首先要面临的问题是:多对多,面对一种产品维度就开通一个调用的服务接口,当产品维度数量过多时,开通的服务调用端口也随之增多,这样大大提升了人工成本,同时也不方便整个服务系统的维护,浪费大部分的人工资源,增加了监控的成本,不利于问题的排查。
为了解决上述问题,本申请实施例提供了一种多数据源的调用方法,以从多个维度综合选取合适的数据源进行调用。
图1是根据本申请一个实施例的多数据源的调用方法的流程图。需要说明的是,本申请实施例的多数据源的调用方法可应用于本申请实施例的多数据源的调用装置。该多数据源的调用装置可被配置于电子设备上。如图1所示,该多数据源的调用方法可以包括如下步骤。
在步骤S101中,响应于产品服务请求,获取产品服务请求中携带的请求参数信息;并基于请求参数信息确定满足产品服务请求的第一产品。
作为一个示例,用户将携带请求参数信息的产品服务请求(如实名认证请求)传入到预设数据源调用系统,预设数据源调用系统进行请求参数信息解析,得到产品信息为第一产品,第一产品例如为运营商四要素,并将产品信息提交路由系统,路由系统的功能介绍详见下面步骤。
在步骤S102中,获取第一产品在原始树样本中的路由信息,并基于路由信息,确定第一产品的产品类型;其中,产品类型包括组合产品和单一产品;原始树样本是以服务、产品和数据源分别作为根节点、分支节点和叶节点构建的;组合产品的子节点为组合产品或单一产品,单一产品的子节点为数据源。
需要说明的是,本实施例根据业务需求将产品细分为组合产品和单一产品,以服务、产品和数据源分别作为根节点、分支节点和叶节点构建原始树样本,原始树样本需要预先构建。一种实现方式,为组合产品、单一产品、数据源样本均配置路由信息,形成原始树样本,如图2所示。根节点为服务,例如实名认证服务。其中,原始树样本的分支节点为产品,产品可以为组合产品或者单一产品,组合产品下面的子节点可为组合产品或单一产品,单一产品的子节点是叶节点,叶节点对应数据源。每个单一产品可能对应多个数据源。每个组合产品可能向下拆分出多个单一产品。
例如,运营商四要素为组合产品,包括两个子节点均为单一产品,分别为包括运营商三要素和人像三要素,其中,运营商三要素和人像三要素均包括多个数据源。
作为一种实现方式,为原始树样本中的每个数据源配置标签编号;其中,为数据源配置标签编号主要是为了方便管理数据源。例如,可以配置为:数据源1,数据源2,数据源3等。同时也能方便在后续工作中,能跟据相关的标签编号添加轮盘权重属性。
单一产品拆分:单一产品为分支节点,由数据源构成其叶子节点;组合产品可以由单一产品构成,也可以由组合产品构成,也可以由单一和组合产品构成。
在上面步骤确定满足产品服务请求的第一产品之后,可以查询第一产品在原始树样本中的路由信息,例如根据路由配置信息表查询第一产品的路由信息,获取第一产品的路由信息。
作为一种实现方式,由路由系统配置产品及数据源的树状路由信息,并在后续处理过程中,在路由信息的基础上添加轮盘权重、优先级、黑白名单等属性信息形成决策树。以及由路由系统实现各产品的路由挖掘即拆分。
在步骤S103中,在第一产品的产品类型为组成产品的情况下,逐个寻址第一产品在原始树样本中关联的单一产品,针对该单一产品进行如下步骤操作,直到产品服务请求响应结束。
第一产品可能为组合产品或者为单一产品。若为单一产品,则进行单一产品拆分,分解出适用于本次产品服务请求的多个数据源,进入后续多个数据源的择优选择调用。
若为组合产品,进行组合产品拆分,进行路由数据挖掘,挖掘组合产品的子节点以及下一级子节点,直至拆分到单一产品。即对组合产品使用递归算法进行轮询处理每个单一产品。也就是,通过层层拆分逐个得到组合产品下面的单一产品;在进行单一产品拆分,得到数据源。例如,组合产品包括3个子节点,3个子节点均为单一产品,则逐个对该3个单一产品进行拆分,得到数据源并进行后续处理。
以实名认证服务为例,产品服务请求响应结束的一种情况是,该用户的多个用户信息校验完毕,认证成功,即对应组合产品下关联的多个单一产品的每个单一产品的数据源逐个进行后续处理后调用成功,流程结束,或者路由系统判断流程结束。产品服务请求响应结束的另一种情况是,认证失败,例如在手机号校验时,校验失败,则不进行下面的图像校验流程,流程结束。
在步骤S104中,获取该单一产品关联的多个数据源,并对多个数据源进行轮盘权重决策,确定多个数据源中各数据源的初始优先级。
需要说明的是,在数据源的使用过程中,可能存在数据源使用到期、数据源提供方提高价格等诸多情况,这些情况发生后,对应的数据源将可能不能被调用,因此,在进行数据源选择之前,需要先将不能调用的数据源去掉。
作为一种实现方式,可以通过设置数据源黑名单和/或数据源白名单的形式,并实时对数据源黑名单和/或数据源白名单进行更新,以确保进行后续处理的数据源均为当前可以调用的数据源。例如,可以将数据源属于白名单和/或黑名单的情况作为数据源的一个属性值,添加到数据源的路由配置信息中。
可选的,基于数据源黑名单,对多个数据源进行筛选,得到适用于第一产品的多个数据源。
对于黑名单和/或白名单的选择,作为一个示例,可以根据数据源的使用是否到期,使用价格是否发生变动等信息确定数据源的黑名单和白名单。若数据源未到合同签约期,则可以列入白名单中,意为可使用状态。或者,若合同正常,在后续规划中也是计划使用的,则将其规划至白名单;再或者,若数据源已过合同签约期(也即继续调用会违约的情况),则可以将该数据源列入黑名单中,禁止调用。再或者,若数据源的使用价格短期上涨,不符合预期的成本等因素,可以归入到黑名单中。
在原始树样本的数据源的路由信息基础上可以通过添加轮盘权重、优先级等属性形成决策树样本,以便基于决策树样本实现数据源的择优选择。
在通过黑名单和/或白名单对多个数据源进行筛选之后,确定各数据源的初始优先级。
作为一种实现方式,确定多个数据源中各数据源的初始优先级的实现方式,包括:
S201,针对多个数据源中的每个数据源,计算每个数据源的轮盘权重。
作为一种实现方式,基于每个数据源的价格和调用时延,计算每个数据源的轮盘权重。
作为一种具体实现方式,获取该单一产品的子节点对应的多个数据源之后,通过如下公式计算各数据源的轮盘权重:
其中,f代表数据源的轮盘权重,ω为适应性因子参数,a为价格因子参数,round(a)为价格因子的就近取整因数,单位为角;t为时间因子参数,单位为毫秒。
其中,时间因子参数t的取值由以下的公式求出:
其中,T为每次测试的调用时长值,n为测试的次数。
在决策树形成的过程中,基于数据源的性能,价格等综合因素得到数据源的轮盘权重。
S202,基于多个数据源的轮盘权重,获取每个数据源的轮盘权重占比。
综合因素占优的数据源拥有更高的轮盘权重占比。
S203,基于轮盘权重占比和预设轮盘机制,确定每个数据源的轮盘区域。
S204,基于预设轮盘机制随机生成一个自然数,并确定自然数在预设轮盘机制中所处的轮盘区域。
S205,基于自然数所处的轮盘区域,确定多个数据源中各数据源的初始优先级。
示例1,该单一产品包括3个子节点,分别对应数据源1-数据源3,数据源1的价格中等,价格就近取整因子为1,性能好,调用延时低,得到的时间因子参数近似为100毫秒。数据源2的价格昂贵,价格就近取整因数为2,性能好,调用时延得到的调用时间因子参数近似为100毫秒。数据源3的价格中等,价格就近取整因数为1,性能稍差,调用时延长,时间因子参数近似为200毫秒。例如,将适应性因子参数ω设置为1,计算数据源1~3的轮盘权重f,并得到3个数据源的轮盘权重占比为2:1:1。若设置1~100的轮盘机制,若在预算成本合理的情况下,为了提高用户的使用体验,以及让剩下数据源也存在合理调用,则可以根据轮盘权重占比2:1:1,将数据源1设置为1~50轮盘区域,将数据源2和数据源3分别设置为51~75轮盘区域,76~100轮盘区域。
在1~100的轮盘机制中随机生成一个自然数,若判断该自然数落在1~50区域中,则与该区域对应的数据源1就为初始优先级最高的数据源,若在51~75区域中,则与该区域对应的数据源2为初始优先级最高的数据源,若在76~100区域中,则与该区域对应的数据源3为初始优先级最高的数据源。
在步骤S105中,基于多个数据源中各数据源的初始优先级以及各数据源的相关调用信息,获取各数据源的选取概率;并基于多个数据源的选取概率,确定并调用多个数据源中的目标数据源。
作为一种实现方式,基于多个数据源中各数据源的初始优先级、各数据源与第一产品之间的信息素以及各数据源的调用时延,获取各数据源的选取概率。
获取各数据源的选取概率,可以基于选取概率确定各数据源的最终优先级,例如按照选取概率从大到小,设置最终优先级由高到低。
还需要说明的是,在确定各数据源的轮盘权重、初始优先级以及选取概率或者最终优先级之后,可以在各数据源的树状路由信息的基础上设置轮盘权重、初始优先级以及选取概率或者最终优先级中的一个或者多个。例如,可以将轮盘权重、初始优先级以及选取概率或者最终优先级作为各对应数据源的属性添加到数据源的标签编号上。可以理解为,这样,原始树样本则成为决策树,在进行数据源调用时,基于决策树选择合适的数据源。
可选的,确定选取概率最大的数据源,作为待调用的目标数据源。即调用最终优先级最高的数据源。
现有技术中,多数据源管理的方式较为混乱,而且无法综合数据源的优劣程度进行综合分析其利弊。本申请实施例的原始树样本在添加轮盘权重、优先级等属性后构成决策树,解决了多数据源无法统一管理的痛点,规范了多数据源的管理选取模式,实现创新性地对数据源进行渠道分发。
作为一种具体实现方式,根据各数据源的初始优先级、各数据源与用户请求产品m之间的信息素,以及各数据源的调用时延,通过如下计算公式计算各数据源的选取概率,并根据选取概率从若干数据源中选取适合用户请求产品m的数据源:
其中,P(i)表示数据源i的选取概率;τ(i,m)表示数据源i和用户请求产品m(第一产品)之间的信息素,δ、θ分别表示预设启发函数和信息素的影响;τ(ti,m)表示数据源i的调用时延和用户请求产品m之间的信息素;η(i)表示数据i的源调度启发函数;η(ti)表示数据源i的调用时延的调度启发函数。ψ表示数据源初始优先级对应的优先级权重值;
其中,
其中,U(i)表示数据源i的初始优先级的向上排名,数据源的初始优先级越高,则数据源的初始优先级的向上排名对应的数值越小。表示所有数据源对应的轮盘区域的平均轮盘区域值;表示除数据源i之外,位于数据源i的下一优先级的数据源j对应的轮盘区域的平均轮盘区域值;U(j)表示数据源j的初始优先级的向上排名,数据源j是指位于数据源i的下一优先级的数据源(位于数据源i的下一优先级的数据源可能有多个)。
作为一种实现方式,在调用目标数据源时可以采用抽象工厂模式:根据被选中的目标数据源的标签编号,将该数据源的数据源信息发送到抽象工厂中,抽象工厂跟据接收的数据源信息,自上而下生成数据源实例,通过数据源实例进行目标数据源的调用,并得到数据调用结果,即调用是否成功的结果。
还需要说明的是,若调用结果为成功,则进行下一个关联单一产品上述处理流程,若调用失败则从剩下的数据源中选择新的目标数据源进行调用。
本申请实施例的多数据源的调用方法,基于组合产品、单一产品以及数据源构建原始树样本,在数据源的路由信息基础上通过添加轮盘权重、优先级等属性形成决策树样本,基于决策树样本实现数据源的择优选择。在决策树形成的过程中,基于数据源的性能,价格等综合因素得到数据源的轮盘权重,在基于轮盘权重确定数据源的初始优先级,之后结合数据源的其他调用相关因素得到数据源的最终优先级,基于最终优先级实现多维度的数据源的择优调用。基于决策树能更好的综合数据源多个维度进行分析,从而选取出更优异的数据源进行服务调用,从一定程度上讲,节省了成本,提升了用户体验。
上述实施例对应的是第一产品为组合产品的情况,在第一产品为单一产品的情况下,图4是根据本申请另一个实施例的多数据源的调用方法的流程图。如图4所示,该多数据源的调用方法可以包括如下步骤。
在步骤S301中,响应于产品服务请求,获取产品服务请求中携带的请求参数信息;并基于请求参数信息确定满足产品服务请求的第一产品。
在步骤S302中,获取第一产品在原始树样本中的路由信息,并基于路由信息,确定第一产品的产品类型;其中,产品类型包括组合产品和单一产品;原始树样本是以服务、产品和数据源分别作为根节点、分支节点和叶节点构建的;组合产品的子节点为组合产品或单一产品,单一产品的子节点为数据源。
在步骤S303中,在第一产品的产品类型为单一产品的情况下,获取该单一产品关联的多数据源;并对多个数据源进行轮盘权重决策,确定多个数据源中各数据源的初始优先级。
在步骤S304中,基于多个数据源中各数据源的初始优先级以及各数据源的相关调用信息,获取各数据源的选取概率;并基于多个数据源的选取概率,确定并调用多个数据源中的目标数据源。
需要说明的是,在本申请的实施例中,上述步骤S301-步骤S304的实现过程可参见上述步骤S101、S102、S104、S105的实现过程的描述,在此不再赘述。
还需要说明的是,在数据源的调用过程中,可能遇到数据源调用失败的情况,在这种情况下,可以重新选择数据源进行调用。也就是说,在步骤S105之后,还可以进行如下操作。
图5是根据本申请又一个实施例的多数据源的调用方法的流程图。如图5所示,该多数据源的调用方法可以包括如下步骤。
在步骤S401中,判断目标数据源是否调用成功。
在步骤S402中,在目标数据源调用不成功的情况下,计算多个数据源中除目标数据源之外的各替代数据源的选取概率。
作为一种实现方式,以上述实施例中的示例1为例,若优先级最高的数据源调用失败,则需重新进入轮盘机制,失败的数据源对应的轮盘区域部分废弃,剩余数据源进行优先级选举决策。比如,若数据源1在第一次被选中后调用失败,则与该数据源1对应的轮盘1~50区域的部分废弃,重新在51~100的轮盘区域进行选举,进而重新确定数据源2、3的初始优先级,并计算数据源2、3的选取概率。
为了提高数据源的调用成功率,作为另一种实现方式,计算多个数据源中除目标数据源之外的各数据源的选取概率,包括:基于预设数据源选取规则,计算多个数据源中除目标数据源之外的各数据源的选取概率。
在判断上述步骤选取的目标数据源调用不成功的情况下,则根据预设数据源选取规则计算各替代数据源的选取概率,然后根据选取概率选取替代数据源,即新的目标数据源。其中,预设数据源选取规则是指根据数据源的调用成功率,调用等待时间以及调用成本等因素综合选取替代数据源,以保证在数据源调用成功的情况下,尽量减少数据源的调用等待时间和调用成本。
作为一种具体实现方式,可以按照如下预设数据源选取规则计算多个数据源中除目标数据源之外的各数据源的选取概率:
其中,p(h)表示除第一次调用失败的数据源之外的替代数据源被选取的概率,τ(hcost,m)表示替代数据源h和用户请求产品m之间的信息素;λ(hcost)表示替代数据源h的性价比竞争因子;τ(αh,m)表示替代数据源h的调用成功率和用户请求产品m之间的信息素;EST(h,T)表示调用替代数据源h时需要等待的调用等待时间。
在步骤S403中,基于各替代数据源的选取概率,确定并调用新的目标数据源。
例如,可以选择各替代数据源中的选取概率最大的数据源,作为新的目标数据源。
本申请实施例的多数据源的调用方法,在上述任一实施例的基础上,当数据源调用失败时,提供了一种替代数据源的选取方式,在保证在数据源调用成功的情况下,可以尽量减少数据源的调用等待时间和调用成本。
对应于上述方法实施例,图6是根据一示例性实施例示出的一种多数据源的调用装置的框图。参照图6,该多数据源的调用装置可以包括:数据解析模块601、产品类型确定模块602、流程控制模块603、轮盘决策模块604和目标确定模块605。
具体地,数据解析模块601,用于响应于产品服务请求,获取产品服务请求中携带的请求参数信息;并基于请求参数信息确定满足产品服务请求的第一产品;
产品类型确定模块602,用于获取第一产品在原始树样本中的路由信息,并基于路由信息,确定第一产品的产品类型;其中,产品类型包括组合产品和单一产品;原始树样本是以服务、产品和数据源分别作为根节点、分支节点和叶节点构建的;组合产品的子节点为组合产品或单一产品,单一产品的子节点为数据源;
流程控制模块603,用于在第一产品的产品类型为组成产品的情况下,逐个寻址第一产品在原始树样本中关联的单一产品,针对该单一产品进行如下步骤操作,直到产品服务请求响应结束;
轮盘决策模块604,用于获取该单一产品关联的多个数据源,并对多个数据源进行轮盘权重决策,确定多个数据源中各数据源的初始优先级;
目标确定模块605,用于基于多个数据源中各数据源的初始优先级以及各数据源的相关调用信息,获取各数据源的选取概率;并基于多个数据源的选取概率,确定并调用多个数据源中的目标数据源。
在一些实现方式中,轮盘决策模块604,还用于:
在第一产品的产品类型为单一产品的情况下,获取该单一产品关联的多个数据源;并对多个数据源进行轮盘权重决策,确定多个数据源中各数据源的初始优先级;
目标确定模块605,用于基于多个数据源中各数据源的初始优先级以及各数据源的相关调用信息,获取各数据源的选取概率;并基于多个数据源的选取概率,确定并调用多个数据源中的目标数据源。
在一些实现方式中,轮盘决策模块604,具体用于:
针对多个数据源中的每个数据源,计算每个数据源的轮盘权重;
基于多个数据源的轮盘权重,获取每个数据源的轮盘权重占比;
基于轮盘权重占比和预设轮盘机制,确定每个数据源的轮盘区域;
基于预设轮盘机制随机生成一个自然数,并确定自然数在预设轮盘机制中所处的轮盘区域;
基于自然数所处的轮盘区域,确定多个数据源中各数据源的初始优先级。
在一些实现方式中,轮盘决策模块604在计算每个数据源的轮盘权重时,用于:
基于每个数据源的价格和调用时延,计算每个数据源的轮盘权重。
在一些实现方式中,装置还包括:
结果判断模块606,用于判断目标数据源是否调用成功;
替代计算模块607,用于在目标数据源调用不成功的情况下,计算多个数据源中除目标数据源之外的各替代数据源的选取概率;并基于各替代数据源的选取概率,确定并调用新的目标数据源。
在一些实现方式中,替代计算模块607在计算多个数据源中除目标数据源之外的各数据源的选取概率时,具体用于:
基于预设数据源选取规则,计算多个数据源中除目标数据源之外的各数据源的选取概率。
在一些实现方式中,目标确定模块605在基于多个数据源中各数据源的初始优先级以及各数据源的相关调用信息,获取各数据源的选取概率时,用于:
基于多个数据源中各数据源的初始优先级、各数据源与第一产品之间的信息素以及各数据源的调用时延,获取各数据源的选取概率。
在一些实现方式中,轮盘决策模块604在获取该单一产品关联的多个数据源之后,还用于:
基于数据源黑名单,对多个数据源进行筛选,得到适用于第一产品的多个数据源。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请实施例的多数据源的调用装置,基于组合产品、单一产品以及数据源构建原始树样本,在数据源的路由信息基础上通过添加轮盘权重、优先级等属性形成决策树样本,基于决策树样本实现数据源的择优选择。在决策树形成的过程中,基于数据源的性能,价格等综合因素得到数据源的轮盘权重,在基于轮盘权重确定数据源的初始优先级,之后结合数据源的其他调用相关因素得到数据源的最终优先级,基于最终优先级实现多维度的数据源的择优调用。基于决策树能更好的综合数据源多个维度进行分析,从而选取出更优异的数据源进行服务调用,从一定程度上讲,节省了成本,提升了用户体验。当数据源调用失败时,提供了一种替代数据源的选取方式,在保证在数据源调用成功的情况下,可以尽量减少数据源的调用等待时间和调用成本。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图7所示,是根据本申请实施例的用于实现多数据源的调用的方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图7所示,该电子设备包括:一个或多个处理器701、存储器702,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图7中以一个处理器701为例。
存储器702即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的多数据源的调用的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的多数据源的调用的方法。
存储器702作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的多数据源的调用的方法对应的程序指令/模块(例如,附图6所示的数据解析模块601、产品类型确定模块602、流程控制模块603、轮盘决策模块604和目标确定模块605)。处理器701通过运行存储在存储器702中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的多数据源的调用的方法。
存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据多数据源的调用的电子设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至多数据源的调用的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
多数据源的调用的方法的电子设备还可以包括:输入装置703和输出装置704。处理器701、存储器702、输入装置703和输出装置704可以通过总线或者其他方式连接,图7中以通过总线连接为例。
输入装置703可接收输入的数字或字符信息,以及产生与多数据源的调用的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置704可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
在示例性实施例中,还提供了一种计算机程序产品,当计算机程序产品中的指令由电子设备的处理器执行时,使得电子设备能够执行上述方法。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (11)
1.一种多数据源的调用方法,其特征在于,包括:
响应于产品服务请求,获取所述产品服务请求中携带的请求参数信息;并基于所述请求参数信息确定满足所述产品服务请求的第一产品;
获取所述第一产品在原始树样本中的路由信息,并基于所述路由信息,确定所述第一产品的产品类型;其中,所述产品类型包括组合产品和单一产品;所述原始树样本是以服务、产品和数据源分别作为根节点、分支节点和叶节点构建的;所述组合产品的子节点为组合产品或单一产品,所述单一产品的子节点为数据源;
在所述第一产品的产品类型为组成产品的情况下,逐个寻址所述第一产品在所述原始树样本中关联的单一产品,针对该单一产品进行如下步骤操作,直到所述产品服务请求响应结束;
获取该单一产品关联的多个数据源,并对所述多个数据源进行轮盘权重决策,确定所述多个数据源中各数据源的初始优先级;
基于所述多个数据源中各数据源的初始优先级以及所述各数据源的相关调用信息,获取所述各数据源的选取概率;并基于所述多个数据源的选取概率,确定并调用所述多个数据源中的目标数据源。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述第一产品的产品类型为单一产品的情况下,获取该单一产品关联的多个数据源;并对所述多个数据源进行轮盘权重决策,确定所述多个数据源中各数据源的初始优先级;
基于所述多个数据源中各数据源的初始优先级以及所述各数据源的相关调用信息,获取所述各数据源的选取概率;并基于所述多个数据源的选取概率,确定并调用所述多个数据源中的目标数据源。
3.根据权利要求1或2所述的方法,其特征在于,所述对所述多个数据源进行轮盘权重决策,确定所述多个数据源中各数据源的初始优先级,包括:
针对所述多个数据源中的每个数据源,计算所述每个数据源的轮盘权重;
基于所述多个数据源的轮盘权重,获取所述每个数据源的轮盘权重占比;
基于所述轮盘权重占比和预设轮盘机制,确定所述每个数据源的轮盘区域;
基于所述预设轮盘机制随机生成一个自然数,并确定所述自然数在所述预设轮盘机制中所处的轮盘区域;
基于所述自然数所处的轮盘区域,确定所述多个数据源中各数据源的初始优先级。
4.根据权利要求3所述的方法,其特征在于,所述计算所述每个数据源的轮盘权重,包括:
基于所述每个数据源的价格和调用时延,计算所述每个数据源的轮盘权重。
5.根据权利要求1或2所述的方法,其特征在于,所述确定并调用所述多个数据源中的目标数据源之后,还包括:
判断所述目标数据源是否调用成功;
在所述目标数据源调用不成功的情况下,计算所述多个数据源中除目标数据源之外的各替代数据源的选取概率;
基于所述各替代数据源的选取概率,确定并调用新的目标数据源。
6.根据权利要求5所述的方法,其特征在于,所述计算所述多个数据源中除目标数据源之外的各数据源的选取概率,包括:
基于预设数据源选取规则,计算所述多个数据源中除目标数据源之外的各数据源的选取概率。
7.根据权利要求1或2所述的方法,其特征在于,所述基于所述多个数据源中各数据源的初始优先级以及所述各数据源的相关调用信息,获取所述各数据源的选取概率,包括:
基于所述多个数据源中各数据源的初始优先级、所述各数据源与所述第一产品之间的信息素以及所述各数据源的调用时延,获取所述各数据源的选取概率。
8.根据权利要求1或2所述的方法,其特征在于,所述获取该单一产品关联的多个数据源之后,还包括:
基于数据源黑名单,对所述多个数据源进行筛选,得到适用于所述第一产品的多个数据源。
9.一种多数据源的调用装置,其特征在于,包括:
数据解析模块,用于响应于产品服务请求,获取所述产品服务请求中携带的请求参数信息;并基于所述请求参数信息确定满足所述产品服务请求的第一产品;
产品类型确定模块,用于获取所述第一产品在原始树样本中的路由信息,并基于所述路由信息,确定所述第一产品的产品类型;其中,所述产品类型包括组合产品和单一产品;所述原始树样本是以服务、产品和数据源分别作为根节点、分支节点和叶节点构建的;所述组合产品的子节点为组合产品或单一产品,所述单一产品的子节点为数据源;
流程控制模块,用于在所述第一产品的产品类型为组成产品的情况下,逐个寻址所述第一产品在所述原始树样本中关联的单一产品,针对该单一产品进行如下步骤操作,直到所述产品服务请求响应结束;
轮盘决策模块,用于获取该单一产品关联的多个数据源,并对所述多个数据源进行轮盘权重决策,确定所述多个数据源中各数据源的初始优先级;
目标确定模块,用于基于所述多个数据源中各数据源的初始优先级以及所述各数据源的相关调用信息,获取所述各数据源的选取概率;并基于所述多个数据源的选取概率,确定并调用所述多个数据源中的目标数据源。
10.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至8中任一项所述的多数据源的调用方法。
11.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1至8中任一项所述的多数据源的调用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310953926.1A CN117082151B (zh) | 2023-07-31 | 2023-07-31 | 多数据源的调用方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310953926.1A CN117082151B (zh) | 2023-07-31 | 2023-07-31 | 多数据源的调用方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117082151A true CN117082151A (zh) | 2023-11-17 |
CN117082151B CN117082151B (zh) | 2024-09-24 |
Family
ID=88707095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310953926.1A Active CN117082151B (zh) | 2023-07-31 | 2023-07-31 | 多数据源的调用方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117082151B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118631904A (zh) * | 2024-06-25 | 2024-09-10 | 天创信用服务有限公司 | 一种智能业务导向的流量调度方法及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020042579A1 (zh) * | 2018-08-27 | 2020-03-05 | 平安科技(深圳)有限公司 | 分组归纳方法、装置、电子装置及存储介质 |
US20200228460A1 (en) * | 2019-01-10 | 2020-07-16 | International Business Machines Corporation | Scheduler utilizing normalized leaves of a weighted tree |
CN111753061A (zh) * | 2019-03-27 | 2020-10-09 | 北京猎户星空科技有限公司 | 多轮对话处理方法、装置、电子设备及存储介质 |
CN113590603A (zh) * | 2021-07-30 | 2021-11-02 | 未鲲(上海)科技服务有限公司 | 基于数据源智能选择的数据处理方法、装置、设备及介质 |
-
2023
- 2023-07-31 CN CN202310953926.1A patent/CN117082151B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020042579A1 (zh) * | 2018-08-27 | 2020-03-05 | 平安科技(深圳)有限公司 | 分组归纳方法、装置、电子装置及存储介质 |
US20200228460A1 (en) * | 2019-01-10 | 2020-07-16 | International Business Machines Corporation | Scheduler utilizing normalized leaves of a weighted tree |
CN111753061A (zh) * | 2019-03-27 | 2020-10-09 | 北京猎户星空科技有限公司 | 多轮对话处理方法、装置、电子设备及存储介质 |
CN113590603A (zh) * | 2021-07-30 | 2021-11-02 | 未鲲(上海)科技服务有限公司 | 基于数据源智能选择的数据处理方法、装置、设备及介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118631904A (zh) * | 2024-06-25 | 2024-09-10 | 天创信用服务有限公司 | 一种智能业务导向的流量调度方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN117082151B (zh) | 2024-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11182746B2 (en) | Systems and methods for integrating third-party services with a client instance | |
US11036696B2 (en) | Resource allocation for database provisioning | |
US9065772B2 (en) | Dynamically modifying quality of service levels for resources running in a networked computing environment | |
CN104246741A (zh) | 编制混合云服务 | |
KR102623476B1 (ko) | 클라우드 컴퓨팅 환경에서 가상 에이전트를 위한 시스템들 및 방법들 | |
US20230145461A1 (en) | Receiving and integrating external data into a graphical user interface of an issue tracking system | |
US11843674B2 (en) | Virtual workspace experience visualization and optimization | |
US11928605B2 (en) | Techniques for cyber-attack event log fabrication | |
US11645507B2 (en) | Providing models to client devices | |
CN110011875A (zh) | 拨测方法、装置、设备及计算机可读存储介质 | |
US11765112B2 (en) | Context driven dynamic actions embedded in messages | |
CN117082151B (zh) | 多数据源的调用方法、装置及存储介质 | |
CN117271147A (zh) | 一种数据同步处理方法和装置 | |
KR102785126B1 (ko) | 케이스 관리를 위한 액션 결정 | |
CN109213782A (zh) | 搜索界面的配置、显示方法、装置及通信设备 | |
WO2023169193A1 (zh) | 用于生成智能合约的方法和装置 | |
CN114448703A (zh) | 请求处理方法、装置、电子设备及存储介质 | |
CN114971503A (zh) | 一种数据处理方法、装置及存储介质 | |
US20220230181A1 (en) | Next best action framework with nested decision trees | |
US20220230123A1 (en) | Quick case type selector | |
CN111401825B (zh) | 一种实例化方法和装置 | |
CN120277646A (zh) | 一种基于用户认证的资源管理方法、系统、设备及介质 | |
CN114416034A (zh) | 一种接口请求处理方法和装置 | |
WO2025022431A1 (en) | Method and system for network parameter change on multivendor network elements | |
CN115617851A (zh) | 处理请求的方法、装置、电子设备和计算机可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |