CN111767311A - 变量请求方法、系统、计算机设备和计算机可读存储介质 - Google Patents
变量请求方法、系统、计算机设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN111767311A CN111767311A CN202010503643.3A CN202010503643A CN111767311A CN 111767311 A CN111767311 A CN 111767311A CN 202010503643 A CN202010503643 A CN 202010503643A CN 111767311 A CN111767311 A CN 111767311A
- Authority
- CN
- China
- Prior art keywords
- variable
- data
- data source
- request
- intermediate node
- 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.)
- Pending
Links
Images
Classifications
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种变量请求方法、系统、计算机设备和计算机可读存储介质。其中,该变量请求方法包括:中间节点获取来自请求方的变量请求消息;中间节点根据预先存储的变量‑数据源映射关系,确定与变量请求消息所请求的变量对应的数据源;中间节点根据预先存储的数据源‑查询协议映射关系,构造用于从数据源查询变量的变量查询请求;中间节点将变量查询请求发送给数据源,获得数据源响应于变量查询请求的数据,并将数据作为变量发送给请求方。通过本申请,解决了相关技术中系统之间的耦合度高的问题,降低了系统之间的耦合。
Description
技术领域
本申请涉及计算机领域,特别是涉及变量请求方法、系统、计算机设备和计算机可读存储介质。
背景技术
变量请求方中的大部分的规则和决策逻辑就是以预先定义的变量为基础,配置或者开发完成的。通常变量请求方中用到的“指标”、“特征”等统一叫做“变量”。其中,变量的产生按照时效性可以分为:离线变量数据和实时变量数据,离线变量数据通常是T+1产生,这类的变量数据对时效要求不高,每天定时产生基于业务的变量值即可;实时变量数据是在规则使用变量时实时计算产生,这类的变量数据对时效要求较高,一般引入实时计算引擎实现。
在相关技术中变量请求方通过在策略的脚本中访问接口或数据源,然后通过相应的接口在相应的数据源中读取数据,再根据读取的数据生成变量,最后由该变量组装成规则表达式并计算相应的结果。然而在上述方案中,变量请求方直接访问数据源,会导致系统之间的耦合度高的问题。
目前针对相关技术中系统之间的耦合度高的问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种变量请求方法、系统、计算机设备和计算机可读存储介质,以至少解决相关技术中系统之间的耦合度高的问题。
第一方面,本申请实施例提供了一种变量请求方法,包括:
中间节点获取来自请求方的变量请求消息;
所述中间节点根据预先存储的变量-数据源映射关系,确定与所述变量请求消息所请求的变量对应的数据源;
所述中间节点根据预先存储的数据源-查询协议映射关系,构造用于从所述数据源查询所述变量的变量查询请求;
所述中间节点将所述变量查询请求发送给所述数据源,获得所述数据源响应于所述变量查询请求的数据,并将所述数据作为所述变量发送给所述请求方。
在其中一些实施例中,所述中间节点根据预先存储的数据源-查询协议映射关系,构造用于从所述数据源查询所述变量的变量查询请求包括:
所述中间节点从本地缓存中查询所述变量对应的数据;
在从所述本地缓存中未查询到所述变量对应的数据的情况下,所述中间节点根据预先存储的数据源-查询协议映射关系,构造用于从所述数据源查询所述变量的变量查询请求。
在其中一些实施例中,所述方法还包括:
在从所述本地缓存中查询到所述变量对应的数据的情况下,所述中间节点将所述变量对应的数据作为所述变量发送给所述请求方。
在其中一些实施例中,所述中间节点将所述变量查询请求发送给所述数据源,获得所述数据源响应于所述变量查询请求的数据,并将所述数据作为所述变量发送给所述请求方包括:
所述中间节点判断所述数据源是否为外部数据源;
在所述数据源为外部数据源的情况下,所述中间节点根据所述变量查询请求生成外部数据源的接口调用请求,将所述接口调用请求发送给所述外部数据源对应的接口,并接收所述外部数据源对应的接口响应于所述接口调用请求的数据,并将所述数据作为所述变量发送给所述请求方;
在所述数据源不为外部数据源的情况下,所述中间节点将所述变量查询请求发送给所述数据源,获得所述数据源响应于所述变量查询请求的数据,并将所述数据作为所述变量发送给所述请求方。
在其中一些实施例中,所述方法还包括:
所述变量对应的数据包括离线数据,大数据平台定时计算所述变量对应的离线数据,并将所述离线数据存储到所述数据源。
在其中一些实施例中,所述变量对应的数据包括实时数据;所述中间节点将所述变量查询请求发送给所述数据源,获得所述数据源响应于所述变量查询请求的数据包括:
所述中间节点将所述变量查询请求发送给所述数据源;
流计算引擎获取所述变量查询请求,根据所述变量查询请求实时计算所述变量对应的实时数据,并将所述实时数据存储到所述数据源;
所述中间节点从所述数据源获取所述实时数据。
在其中一些实施例中,所述中间节点包括变量适配模块和访问代理模块,其中,所述变量适配模块配置有所述变量-数据源映射关系和所述数据源-查询协议映射关系;
所述变量适配模块,用于根据预先存储的变量-数据源映射关系,确定与所述变量请求消息所请求的变量对应的数据源,以及根据预先存储的数据源-查询协议映射关系,构造用于从所述数据源查询所述变量的变量查询请求;
所述访问代理模块,用于将所述变量查询请求发送给所述数据源,并获得所述数据源响应于所述变量查询请求的数据。
第二方面,本申请实施例提供了一种变量请求系统,包括:用户终端、中间节点和多个数据源,其中,所述用户终端用于通过所述中间节点从所述多个数据源中请求变量;所述多个数据源用于存储变量对应的数据;所述中间节点用于执行第一方面所述的变量请求方法。
第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,在其中一些实施例中,所述处理器执行所述计算机程序时实现如第一方面所述的变量请求方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的变量请求方法。
相比于相关技术,本申请实施例提供的变量请求方法、系统、计算机设备和计算机可读存储介质,通过中间节点获取来自请求方的变量请求消息;中间节点根据预先存储的变量-数据源映射关系,确定与变量请求消息所请求的变量对应的数据源;中间节点根据预先存储的数据源-查询协议映射关系,构造用于从数据源查询变量的变量查询请求;中间节点将变量查询请求发送给数据源,获得数据源响应于变量查询请求的数据,并将数据作为变量发送给请求方的方式,解决了相关技术中系统之间的耦合度高的问题,降低了系统之间的耦合。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的变量请求方法的流程图;
图2是根据本申请实施例的另一种变量请求方法的流程图;
图3是根据本申请优选实施例的决策系统请求变量的交互图;
图4是根据本申请优选实施例中变量请求的交互流程图;
图5是根据本申请实施例的变量请求系统的结构框图;
图6是根据本申请实施例的计算机设备的硬件结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
本实施例所提供的变量请求方法可以在计算机设备中执行,也可以在计算机的控制器中执行。
本实施例提供的变量请求方法用于请求方在执行相应的规则表达式且需要请求变量时,生成相应的变量请求消息给对应的中间节点,中间节点根据该变量请求消息从数据源中请求变量对应的数据,并根据从数据源中获取到的数据生成变量发送给请求方,从而完成请求方的变量请求。其中,本实施例中的请求方可以是决策系统,也可以是一些其他需要请求变量的系统。
下面将以请求方为决策系统为例进行描述和说明。
本实施例还提供了一种变量请求方法。图1是根据本申请实施例的变量请求方法的流程图,如图1所示,该流程包括如下步骤:
步骤S101,中间节点获取来自决策系统的变量请求消息。
在本实施例中,可以是决策系统在执行规则表达式时,向中间节点发送变量请求消息,并且传递当前所需的变量信息。
步骤S102,中间节点根据预先存储的变量-数据源映射关系,确定与变量请求消息所请求的变量对应的数据源。
在本实施例中,预先存储的变量-数据源映射关系包括但不限于:变量与数据源类型之间的关系、变量与数据源的关系、变量与数据表的关系,其中,数据源类型可以是MySQL数据源、Redis数据源、Hbase数据源、外部数据接口数据源,通过上述关系,来确定与变量请求消息所请求的变量对应的数据源,便于从数据源中获取的数据。
步骤S103,中间节点根据预先存储的数据源-查询协议映射关系,构造用于从数据源查询变量的变量查询请求。
在本实施例中,在步骤S102中确定与变量请求消息所请求的变量对应的数据源之后,可以再根据预先存储的数据源-查询协议映射关系来确定变量与数据源的哪些字段连接,并生成相应的变量查询请求。
在步骤S103中,还可以对变量进行衍生,即对变量进行二次加工,如从身份证号码衍生出户籍所在地、出生年月、性别等,以提供更多的变量所对应的数据。
步骤S104,中间节点将变量查询请求发送给数据源,获得数据源响应于变量查询请求的数据,并将数据作为变量发送给决策系统。
在本实施例中,决策系统只需发送相应的变量请求消息给中间节点,无需决策系统自身来确定变量的来源以及对应的数据,解决了相关技术中变量请求方直接访问数据源,而导致系统之间的耦合度高的问题,降低了系统之间的耦合。
在步骤S103中,为了提高处理效率,中间节点可以先从本地缓存中查询变量所对应的数据。
例如,在其中一些实施例中,中间节点在本地缓存中查询变量所对应的数据,并在本地缓存中查询到变量对应的数据的情况下,中间节点将变量对应的数据作为变量发送给决策系统。
又例如,在其中一些实施例中,中间节点在本地缓存中查询变量所对应的数据,并在从本地缓存中未查询到变量对应的数据的情况下,中间节点根据预先存储的数据源-查询协议映射关系,构造用于从数据源查询变量的变量查询请求。
在本实施例中,在本地缓存中查询到变量对应的数据的情况下,中间节点可以直接从本地缓存中将变量对应的数据作为变量发送给决策系统,无需再执行后续的操作步骤,减少了操作流程,提高了处理效率。
上述实施例的变量对应的数据可以是计算机内部的数据源所存储的数据,也可以是外部数据源存储的数据。因此,为了避免变量对应的数据为外部数据源的数据时,无法直接从计算机内部的数据源获取到相应的数据的问题。
在步骤S104中,中间节点可以先判断数据源是否为外部数据源;在数据源为外部数据源的情况下,中间节点根据变量查询请求生成外部数据源的接口调用请求,将接口调用请求发送给外部数据源对应的接口,并接收外部数据源对应的接口响应于接口调用请求的数据,并将数据作为变量发送给请求方;在数据源不为外部数据源的情况下,中间节点将变量查询请求发送给数据源,获得数据源响应于变量查询请求的数据,并将数据作为变量发送给请求方。
在本实施例中,通过上述方式,解决了无法直接从计算机内部的数据源获取到相应的数据的问题,同时通过中间节点实现了决策系统与外部数据源之间的交互,便于决策系统获取外部数据源的数据。
在本实施例中,可以通过将变量与接口返回参数字段进行绑定,从而来实现实时调用外部接口。
需要说明的是,本实施例中的外部数据源可以是外部征信服务模块,也可以是其他的外部服务模块。
在相关技术中,变量的产生按照时效性可以分为:离线变量数据和实时变量数据,离线变量数据通常是由T+1产生,这类的变量数据对时效要求不高,每天定时产生基于业务的变量值即可;实时变量数据是在规则使用变量时实时计算产生,这类的变量数据对时效要求较高,一般引入实时计算引擎实现。
然而在相关技术中,在决策系统执行规则表达式时,若存在新增的变量,需要程序员重新变更策略脚本,然后在根据该策略脚本将新增的数据增加到数据源中,才能实现对新的变量执行相应的规则,但是在上述方案中,新增变量时需要变更策略脚本,导致了策略脚本上线效率低的问题。
针对上述技术问题,在其中一些实施例中,变量对应的数据包括离线数据,大数据平台定时计算变量对应的离线数据,并将离线数据存储到数据源。
在本实施例中,大数据平台(例如Hadoop)存储了各业务线的T+1数据,其中包括我们要计算的指标变量的各种原始数据。我们为每个或多个离线变量编写HIVE SQL脚本程序,并定时执行,在大量杂乱的数据中提取加工成指标变量,按照配置推送至各种数据源(例如Mysql数据源、Redis数据源、Hbase数据源)等。本实施例中,通过大数据平台根据预先配置的脚本来实现对数据源的定时更新,无需新增变量时变更策略脚本,解决了相关技术中策略脚本上线效率低的问题,提高了策略脚本的上线效率。
需要说明的是,上述实施例中的Hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。Hive SQL是Hive提供的类似于SQL的数据查询语言。
针对上述技术问题,在其中一些实施例中,变量对应的数据包括实时数据;中间节点将变量查询请求发送给数据源,获得数据源响应于变量查询请求的数据包括:中间节点将变量查询请求发送给数据源;流计算引擎获取变量查询请求,根据变量查询请求实时计算变量对应的实时数据,并将实时数据存储到数据源;中间节点从数据源获取实时数据。
在本实施例中,实时变量数据的计算可以引入了开源实时流计算引擎Flink,但不仅限于流计算引擎Flink,也可以是Spark或者其他流计算引擎。在本实施例中流计算引擎通过数据源的binlog实现与线上业务数据库实时同步。这此基础上,通过编写实时计算的脚本程序,即可实时计算指标变量,并且推送至配置数据源(例如Mysql数据源、Redis数据源、Hbase数据源)中,无需每次存在新增变量时,均需去更新脚本策略,解决了相关技术中策略脚本上线效率低的问题,提高了策略脚本的上线效率。
同时,在上述实施例中,大数据平台根据预先配置的脚本实现对离线变量数据的定时更新,以及流计算引擎根据预先配置的脚本实现对实时变量数据的实时更新,以使得决策系统无需去关注实时变量数据和离线变量数据的计算,只需要根据策略规则执行相应的操作即可,实现了决策系统的规则执行与业务的隔离。
需要说明的是,binlog指mysql-binlog,是MySQL数据源的二进制日志,用于记录用户对数据源操作的SQL语句(除了数据查询语句)信息。
在其中一些实施例中,中间节点包括变量适配模块和访问代理模块,其中,变量适配模块配置有变量-数据源映射关系和数据源-查询协议映射关系;
变量适配模块,用于根据预先存储的变量-数据源映射关系,确定与变量请求消息所请求的变量对应的数据源,以及根据预先存储的数据源-查询协议映射关系,构造用于从数据源查询变量的变量查询请求;
访问代理模块,用于将变量查询请求发送给数据源,并获得数据源响应于变量查询请求的数据。
在本实施例中,变量适配模块存储有预先存储的变量-数据源映射关系、预先存储的数据源-查询协议映射关系,其管理着变量与表、字段的映射关系,且每个变量的请求,通过映射关系都可以转化成对特定数据源的数据查询。通过该方式,来实现变量对应的数据与数据源之间的联系,便于在数据源中查询变量对应的数据。访问代理模块,用于调用数据源的接口协议,以便于查询数据源中的数据,提供了统一接口给变量适配模块,实现了差异化协议的统一化。
在一些实施例中,还可以在变量适配模块中预先存储数据-数据源接口协议映射关系,其中,数据-数据源接口协议映射关系依赖于接口服务的返回参数中的字段集合,通过变量与接口返回参数字段绑定,实现实时调用外部接口。
下面通过优选实施例对本申请实施例进行描述和说明。
本实施例还提供了一种变量请求方法,本实施例中,以中间节点包括变量适配模块和访问代理模块为例,且变量适配模块配置有变量-数据源映射关系和数据源-查询协议映射关系。图2是根据本申请实施例的另一种变量请求方法的流程图,如图2所示,该流程包括如下步骤:
步骤S201,变量适配模块获取来自决策系统的变量请求消息。
步骤S202,变量适配模块根据预先存储的变量-数据源映射关系,确定与变量请求消息所请求的变量对应的数据源。
步骤S203,变量适配模块根据预先存储的数据源-查询协议映射关系,构造用于从数据源查询变量的变量查询请求。
步骤S204,访问代理模块将变量查询请求发送给数据源,获得数据源响应于变量查询请求的数据,并将数据发送给变量适配模块;
步骤S205,变量适配模块将数据作为变量发送给决策系统。
在本实施例中,决策系统只需发送相应的变量请求消息给变量适配模块,通过变量适配模块来确定变量的所对应的数据源,以及变量对应的数据,然后由访问代理模块将变量查询请求发送给数据源,来实现在数据源查询变量对应的数据,并发送方给变量适配模块,最后由变量适配模块将数据作为变量发送给决策系统的方式,无需决策系统自身来确定变量的来源以及对应的数据,同时解决了相关技术中变量请求方直接访问数据源,而导致系统之间的耦合度高的问题,降低了系统之间的耦合。
图3是根据本申请优选实施例的决策系统请求变量的交互图,其中以中间节点包括变量适配模块、访问代理模块为例,以请求方为决策系统为例,以外部数据源为外部征信服务模块为例,以数据源为数据存储模块为例,且变量适配模块配置有变量-数据源映射关系和数据源-查询协议映射关系,其中,数据存储模块中包括但不限于Redis数据源、MYSQL数据源、Hbase数据源。
在本实施例中,决策系统只需发送相应的变量请求消息给变量适配模块,通过变量适配模块来确定变量的所对应的数据源,以及变量对应的数据,然后由访问代理模块将变量查询请求发送给数据源,来实现在数据源查询变量对应的数据,并发送方给变量适配模块,最后由变量适配模块将数据作为变量发送给决策系统的方式,无需决策系统自身来确定变量的来源以及对应的数据,同时解决了相关技术中决策系统直接访问数据源,而导致系统之间的耦合度高的问题,降低了系统之间的耦合。
且在本实施例中,大数据平台服务模块基于大数据平台(hadoop)的大数据离线指标计算离线变量数据并推送至数据存储模块;以及基于业务数据库对应的流计算引擎的实时指标计算实时变量数据并推送至数据存储模块。通过该大数据平台服务模块的结构实现了规则执行与业务的隔离,且不影响业务,实现了只需关注策略规定,而不需要关注变量如何计算,简化了变量开发流程,减少了策略上线时间。且指标变量新增和计算都可以通过配置生效,使得技术门槛降低了,实现了非技术人员也可以配置的有益效果。
图4是根据本申请优选实施例中变量请求的交互流程图。本实施例中,以中间节点包括变量适配模块、访问代理模块为例,以请求方为决策系统为例,以外部数据源为外部征信服务模块为例,以数据源为数据存储模块为例,且变量适配模块配置有变量-数据源映射关系和数据源-查询协议映射关系,其中,数据存储模块中包括但不限于Redis数据源、MYSQL数据源、Hbase数据源,如图4所示,该交互流程包括:
步骤S401,决策系统在执行规则表达式时,向变量适配模块请求变量,并且传递当前请求所需要的信息。
步骤S402,变量适配模块首先根据变量-数据源映射关系查询该变量是否命中本地缓存,如果命中缓存,则直接从缓存中读取,并将读取到的数据作为变量发送给决策系统。且直接从本地缓存中读取,可以提高处理效率。同时,在确定变量的类型之后,可以根据变量的类型,设置不同的缓存时间。例如,对外部征信服务模块变量根据外部变量数据更新频率,缓存不同时间,如是否取得驾照,缓存时间为1个月。对所有变量进行统一缓存,如缓存30秒。
步骤S403,如果未命中本地缓存,则按照该数据源-查询协议映射关系,生成变量查询请求,推送至访问代理模块。
步骤S404,访问代理模块根据该变量查询请求,会判断该变量对应的数据是否外部征信服务模块中的数据,如果是外部征信服务模块的数据,则请求外部征信服务模块调用外部接口,并获取该数据发送给变量适配模块。
步骤S405,如果不是外部征信服务模块中的数据,则依据数据存储模块内的不同的数据源,提交查询语句给不同的数据源。
步骤S406,数据存储模块返回查询数据至访问代理模块,访问代理模块再将该数据发送给变量适配模块,以完成数据与变量匹配。其中,查询返回的数据可能包含其他变量对应的数据,通过该方式可以完成多个数据与变量的匹配。
步骤S407,变量适配模块完成数据与变量的匹配后,缓存该变量对应数据,并把变量返回给决策系统。
本实施例还提供了一种变量请求系统,该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图5是根据本申请实施例的变量请求系统的结构框图,如图5所示,该系统包括:用户终端51、中间节点52和多个数据源53,其中,用户终端51用于通过中间节点52从多个数据源53中请求变量;多个数据源53用于存储变量对应的数据;中间节点52用于执行上述实施例中的变量请求方法。
需要说明的是,本实施例中的用户终端可以是上述实施例中的请求方。
另外,结合图1描述的本申请实施例变量请求方法可以由计算机设备来实现。图6为根据本申请实施例的计算机设备的硬件结构示意图。
计算机设备可以包括处理器61以及存储有计算机程序指令的存储器62。
具体地,上述处理器61可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
其中,存储器62可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器62可包括硬盘驱动器(Hard Disk Drive,简称为HDD)、软盘驱动器、固态驱动器(SolidState Drive,简称为SSD)、闪存、光盘、磁光盘、磁带或通用串行总线(Universal SerialBus,简称为USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器62可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器62可在数据处理装置的内部或外部。在特定实施例中,存储器62是非易失性(Non-Volatile)存储器。在特定实施例中,存储器62包括只读存储器(Read-Only Memory,简称为ROM)和随机存取存储器(RandomAccess Memory,简称为RAM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(Programmable Read-Only Memory,简称为PROM)、可擦除PROM(Erasable ProgrammableRead-Only Memory,简称为EPROM)、电可擦除PROM(Electrically Erasable ProgrammableRead-Only Memory,简称为EEPROM)、电可改写ROM(Electrically Alterable Read-OnlyMemory,简称为EAROM)或闪存(FLASH)或者两个或更多个以上这些的组合。在合适的情况下,该RAM可以是静态随机存取存储器(Static Random-Access Memory,简称为SRAM)或动态随机存取存储器(Dynamic Random Access Memory,简称为DRAM),其中,DRAM可以是快速页模式动态随机存取存储器(Fast Page Mode Dynamic Random Access Memory,简称为FPMDRAM)、扩展数据输出动态随机存取存储器(Extended Date Out Dynamic RandomAccess Memory,简称为EDODRAM)、同步动态随机存取内存(Synchronous Dynamic Random-Access Memory,简称SDRAM)等。
存储器62可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器62所执行的可能的计算机程序指令。
处理器61通过读取并执行存储器62中存储的计算机程序指令,以实现上述实施例中的任意一种变量请求方法。
在其中一些实施例中,计算机设备还可包括通信接口63和总线60。其中,如图6所示,处理器61、存储器62、通信接口63通过总线60连接并完成相互间的通信。
通信接口63用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。通信接口63还可以实现与其他部件例如:外接设备、图像/数据采集设备、数据库、外部存储以及图像/数据处理工作站等之间进行数据通信。
总线60包括硬件、软件或两者,将计算机设备的部件彼此耦接在一起。总线60包括但不限于以下至少之一:数据总线(Data Bus)、地址总线(Address Bus)、控制总线(Control Bus)、扩展总线(Expansion Bus)、局部总线(Local Bus)。举例来说而非限制,总线60可包括图形加速接口(Accelerated Graphics Port,简称为AGP)或其他图形总线、增强工业标准架构(Extended Industry Standard Architecture,简称为EISA)总线、前端总线(Front Side Bus,简称为FSB)、超传输(Hyper Transport,简称为HT)互连、工业标准架构(Industry Standard Architecture,简称为ISA)总线、无线带宽(InfiniBand)互连、低引脚数(Low Pin Count,简称为LPC)总线、存储器总线、微信道架构(Micro ChannelArchitecture,简称为MCA)总线、外围组件互连(Peripheral Component Interconnect,简称为PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(Serial AdvancedTechnology Attachment,简称为SATA)总线、视频电子标准协会局部(Video ElectronicsStandards Association Local Bus,简称为VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线60可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。
该计算机设备可以基于获取到的变量请求消息,执行本申请实施例中的变量请求方法,从而实现结合图1描述的变量请求方法。
另外,结合上述实施例中的变量请求方法,本申请实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种变量请求方法。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种变量请求方法,其特征在于,包括:
中间节点获取来自请求方的变量请求消息;
所述中间节点根据预先存储的变量-数据源映射关系,确定与所述变量请求消息所请求的变量对应的数据源;
所述中间节点根据预先存储的数据源-查询协议映射关系,构造用于从所述数据源查询所述变量的变量查询请求;
所述中间节点将所述变量查询请求发送给所述数据源,获得所述数据源响应于所述变量查询请求的数据,并将所述数据作为所述变量发送给所述请求方。
2.根据权利要求1所述的变量请求方法,其特征在于,所述中间节点根据预先存储的数据源-查询协议映射关系,构造用于从所述数据源查询所述变量的变量查询请求包括:
所述中间节点从本地缓存中查询所述变量对应的数据;
在从所述本地缓存中未查询到所述变量对应的数据的情况下,所述中间节点根据预先存储的数据源-查询协议映射关系,构造用于从所述数据源查询所述变量的变量查询请求。
3.根据权利要求2所述的变量请求方法,其特征在于,所述方法还包括:
在从所述本地缓存中查询到所述变量对应的数据的情况下,所述中间节点将所述变量对应的数据作为所述变量发送给所述请求方。
4.根据权利要求1所述的变量请求方法,其特征在于,所述中间节点将所述变量查询请求发送给所述数据源,获得所述数据源响应于所述变量查询请求的数据,并将所述数据作为所述变量发送给所述请求方包括:
所述中间节点判断所述数据源是否为外部数据源;
在所述数据源为外部数据源的情况下,所述中间节点根据所述变量查询请求生成外部数据源的接口调用请求,将所述接口调用请求发送给所述外部数据源对应的接口,并接收所述外部数据源对应的接口响应于所述接口调用请求的数据,并将所述数据作为所述变量发送给所述请求方;
在所述数据源不为外部数据源的情况下,所述中间节点将所述变量查询请求发送给所述数据源,获得所述数据源响应于所述变量查询请求的数据,并将所述数据作为所述变量发送给所述请求方。
5.根据权利要求1所述的变量请求方法,其特征在于,所述方法还包括:
所述变量对应的数据包括离线数据,大数据平台定时计算所述变量对应的离线数据,并将所述离线数据存储到所述数据源。
6.根据权利要求1所述的变量请求方法,其特征在于,所述变量对应的数据包括实时数据;所述中间节点将所述变量查询请求发送给所述数据源,获得所述数据源响应于所述变量查询请求的数据包括:
所述中间节点将所述变量查询请求发送给所述数据源;
流计算引擎获取所述变量查询请求,根据所述变量查询请求实时计算所述变量对应的实时数据,并将所述实时数据存储到所述数据源;
所述中间节点从所述数据源获取所述实时数据。
7.根据权利要求1所述的变量请求方法,其特征在于,所述中间节点包括变量适配模块和访问代理模块,其中,所述变量适配模块配置有所述变量-数据源映射关系和所述数据源-查询协议映射关系;
所述变量适配模块,用于根据预先存储的变量-数据源映射关系,确定与所述变量请求消息所请求的变量对应的数据源,以及根据预先存储的数据源-查询协议映射关系,构造用于从所述数据源查询所述变量的变量查询请求;
所述访问代理模块,用于将所述变量查询请求发送给所述数据源,并获得所述数据源响应于所述变量查询请求的数据。
8.一种变量请求系统,其特征在于,包括:用户终端、中间节点和多个数据源,其中,所述用户终端用于通过所述中间节点从所述多个数据源中请求变量;所述多个数据源用于存储变量对应的数据;所述中间节点用于执行权利要求1至7中任一项所述的变量请求方法。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的变量请求方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至7中任一项所述的变量请求方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010503643.3A CN111767311A (zh) | 2020-06-05 | 2020-06-05 | 变量请求方法、系统、计算机设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010503643.3A CN111767311A (zh) | 2020-06-05 | 2020-06-05 | 变量请求方法、系统、计算机设备和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111767311A true CN111767311A (zh) | 2020-10-13 |
Family
ID=72720255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010503643.3A Pending CN111767311A (zh) | 2020-06-05 | 2020-06-05 | 变量请求方法、系统、计算机设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111767311A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051332A (zh) * | 2021-04-20 | 2021-06-29 | 东莞市盟大塑化科技有限公司 | 一种基于大数据技术的多源数据集成方法及其系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110032575A (zh) * | 2019-04-15 | 2019-07-19 | 网易(杭州)网络有限公司 | 数据查询方法、装置、设备和存储介质 |
CN110046287A (zh) * | 2019-03-19 | 2019-07-23 | 厦门市美亚柏科信息股份有限公司 | 一种与数据库类型无关的数据查询方法、装置及存储介质 |
CN111210338A (zh) * | 2019-12-31 | 2020-05-29 | 广东华兴银行股份有限公司 | 信贷业务授信审批方法、系统、后台服务器及存储介质 |
-
2020
- 2020-06-05 CN CN202010503643.3A patent/CN111767311A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110046287A (zh) * | 2019-03-19 | 2019-07-23 | 厦门市美亚柏科信息股份有限公司 | 一种与数据库类型无关的数据查询方法、装置及存储介质 |
CN110032575A (zh) * | 2019-04-15 | 2019-07-19 | 网易(杭州)网络有限公司 | 数据查询方法、装置、设备和存储介质 |
CN111210338A (zh) * | 2019-12-31 | 2020-05-29 | 广东华兴银行股份有限公司 | 信贷业务授信审批方法、系统、后台服务器及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051332A (zh) * | 2021-04-20 | 2021-06-29 | 东莞市盟大塑化科技有限公司 | 一种基于大数据技术的多源数据集成方法及其系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200220840A1 (en) | Method, server and system for resolving domain name | |
CN110909025A (zh) | 数据库的查询方法、查询装置及终端 | |
CN108153757A (zh) | 一种哈希表管理的方法和装置 | |
AU2016382909A1 (en) | Method and device for processing short link, and short link server | |
RU2013155624A (ru) | Расширение ответов на обращения к базе данных, используя данные из внешних источников данных | |
CN108509501A (zh) | 一种查询处理方法、服务器及计算机可读存储介质 | |
CN110427386B (zh) | 数据处理方法、装置及计算机存储介质 | |
CN103324713B (zh) | 多级服务器中的数据处理方法、装置和数据处理系统 | |
WO2017128701A1 (zh) | 存储数据的方法和装置 | |
CN108280227A (zh) | 基于缓存的数据信息处理方法及装置 | |
CN113032156A (zh) | 内存分配方法和装置、电子设备和存储介质 | |
CN111444278A (zh) | 数据同步方法、装置及中转服务器 | |
CN111767311A (zh) | 变量请求方法、系统、计算机设备和计算机可读存储介质 | |
CN109254930B (zh) | 数据访问方法及装置 | |
CN113157734A (zh) | 基于搜索框架的数据处理方法、装置、设备及存储介质 | |
CN109976896B (zh) | 业务排重处理方法和装置 | |
CN108540569B (zh) | 一种软件安装包替换方法、装置及计算机存储介质 | |
CN116633616A (zh) | 数据访问方法、系统、设备及存储介质 | |
CN111414383A (zh) | 数据请求方法、数据处理系统及计算设备 | |
CN116450607A (zh) | 数据处理方法、设备及存储介质 | |
CN113608685B (zh) | 一种分布式存储块设备的热点识别方法及系统 | |
JP6233846B2 (ja) | 可変長ノンスの生成 | |
CN110858201A (zh) | 数据处理方法及系统、处理器、存储介质 | |
CN106446080B (zh) | 数据查询的方法、查询服务设备、客户端设备和数据系统 | |
CN114637969A (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 |