数据库的跨数据源查询方法、系统、设备及存储介质技术方案

技术编号:37331103 阅读:36 留言:0更新日期:2023-04-21 23:08
本发明专利技术提出一种数据库的跨数据源查询方法、系统、设备及存储介质,该方法包括:对用户输入的目标查询语句进行分析,获取每一目标数据源对应的子查询任务;根据多个计算引擎的历史查询记录和每一子查询任务,获取每一子查询任务对应的最佳计算引擎;根据多个集群的当前实时资源状态和每一子查询任务,获取每一子查询任务对应的最佳集群;利用每一子查询任务对应的最佳集群上最佳计算引擎,在对应的目标数据源中进行查找,获取所述目标查询语句的最终查询结果。本发明专利技术可以合理分配数据资源,提高资源利用率,提升数据使用效率。提升数据使用效率。提升数据使用效率。

【技术实现步骤摘要】
数据库的跨数据源查询方法、系统、设备及存储介质


[0001]本专利技术涉及大数据
,尤其涉及一种数据库的跨数据源查询方法、系统、设备及存储介质。

技术介绍

[0002]在企业管理的过程中,业务对接、业绩统计、人员管理等方面都需要构建报表系统,在对报表系统构建指标查询时往往涉及到多个不同的数据源,由于不同数据源的构建来自不同的用户,指标数据的定义不统一,现有的结构化查询语句(StructuredQueryLanguage,SQL)技术难以跨越不同的数据源进行查询。
[0003]传统的技术方案由于可扩展性和处理性能的限制无法满足其要求,新兴的基于消息队列的技术方案具有良好的可扩展性,需要将不同数据源数据汇聚到一个数据库中,使得数据计算链路长而复杂,资源利用率底,存储异构,容易形成数据孤岛等,频繁同步数据造成资源浪费等诸多问题。

技术实现思路

[0004]本专利技术提供一种数据库的跨数据源查询方法、系统、设备及存储介质,其主要目的在于对用户输入的通用跨数据源查询语句进行自动解析,并根据解析得到的查询语句特点,为其分配相应本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据库的跨数据源查询方法,其特征在于,包括:对用户输入的目标查询语句进行分析,获取每一目标数据源对应的子查询任务,所述目标查询语句涉及多个不同数据源中的数据;根据多个计算引擎的历史查询记录和每一子查询任务,获取每一子查询任务对应的最佳计算引擎;根据多个集群的当前实时资源状态和每一子查询任务,获取每一子查询任务对应的最佳集群;利用每一子查询任务对应的最佳集群上最佳计算引擎,在对应的目标数据源中进行查找,获取每一子查询任务对应的查询结果,并进一步根据每一子查询任务对应的查询结果,获取所述目标查询语句的最终查询结果。2.根据权利要求1所述的数据库的跨数据源查询方法,其特征在于,所述对用户输入的目标查询语句进行分析,获取每一目标数据源对应的子查询任务,包括:根据所述目标查询语句中包含的目标数据源地理位置、所述目标数据源的数据库类型、所述目标数据源中存储数据内容,获取每一目标数据源对应的子查询路径;根据每一目标数据源对应的子查询路径,通过解析器得到抽象语法树,获取每一目标数据源对应的子查询任务,所述子查询任务为SQL查询语句。3.根据权利要求2所述的数据库的跨数据源查询方法,其特征在于,所述根据每一目标数据源对应的子查询路径,通过解析器得到抽象语法树,获取每一目标数据源对应的子查询任务,之后还包括:对每一目标数据源对应的子查询任务进行优化,得到每一目标数据源对应的优化后的子查询任务;将每一目标数据源对应的优化后的子查询任务重新作为每一目标数据源对应的子查询任务。4.根据权利要求3所述的数据库的跨数据源查询方法,其特征在于,所述对每一目标数据源对应的子查询任务进行优化,得到每一目标数据源对应的优化后的子查询任务,包括:判断每一目标数据源对应的子查询任务中定义的属性字段是否有命名冲突,若有命名冲突,则根据属性字段的实际需求,对冲突的属性字段重新命名;判断每一目标数据源对应的子查询任务中定义的数据单位是否为预设单位,若不是,则对不符合的子查询任务中定义的数据转换为所述预设单位;判断每一目标数据源对应的子查询任务格式是否满足预设要求,若不满足,则对不满足的子查询任务进行格式转换。5.根据权利要求1所述的数据库的跨数据源查询方法,其特征在于...

【专利技术属性】
技术研发人员:罗磊磊
申请(专利权)人:中国平安财产保险股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1