多源异构数据联邦查询系统、保障及访问方法技术方案

技术编号:45265873 阅读:11 留言:0更新日期:2025-05-13 19:01
本发明专利技术提供了一种多源异构数据联邦查询系统、保障及访问方法,其中系统包括:多个项目、计算组管理模块、数据源管理模块、项目管理模块和查询管理模块;每个项目包含计算组和数据源;各个项目之间的计算组和数据源相互隔离且互不影响;项目管理模块用于多用户隔离和访问控制;计算组管理模块用于构建、动态调整计算组以及保障不同计算组资源相互隔离;数据源管理模块用于提供数据源的增、删、改、查和分配管理,支持向导式创建数据源连接;查询管理模块提供跨数据源的查询编辑控制台。而本发明专利技术提出的多计算组模式,每个计算组包含主备两个协调节点,在资源管理方面更具灵活性,且查询任务被多个计算组分摊,有效避免了单个协调节点成为性能瓶颈。

【技术实现步骤摘要】

本专利技术涉及联邦查询领域,具体地,涉及一种多源异构数据联邦查询系统、保障及访问方法


技术介绍

1、在当今工业信息化与智能化迅猛发展的时代背景下,企业于生产活动以及管理流程之中持续产生海量数据。由于各类业务需求截然不同,应用场景也千差万别,这些数据分散于众多不同的数据库,并且依托于多样化的数据存储技术予以存储,其中涵盖了常见的关系型数据库、非关系型数据库,以及新兴的数据湖等形式。

2、在这样复杂的数据格局下,现有的数据处理手段暴露出诸多缺陷。当尝试对这些分布广泛且异构的数据进行访问时,效率极其低下,往往耗费大量的时间与计算资源,难以满足企业对于数据及时性与准确性的需求。而在进行数据整合的过程中,又面临着成本高昂的困境,无论是人力成本、技术成本还是时间成本,都给企业带来了沉重的负担。这种现状严重阻碍了企业数字化转型的步伐,使得企业难以充分挖掘数据背后的价值,无法及时响应市场变化,在激烈的市场竞争中处于劣势。

3、通过对专利文献的检索发现申请号为cn202211717003.8的中国专利,公开了一种多数据源数据查询方法、系统及系统,该专利技术专注于元数据的统一管理和编排,旨在辅助用户便捷地创建能够跨越多个数据源的标准化查询语句。该专利缺少对计算资源的精细化管理和分组管制机制;支持的数据源种类不够丰富,缺少国产信创数据库的支持;并且元数据编排生成查询sql的方法,在应对复杂多变的查询需求时,灵活性方面有一定的局限性。

4、综上所述,针对上述现有技术的问题,研究一种多源异构数据联邦查询系统成为当下亟待解决的关键任务。


技术实现思路

1、针对现有技术中的缺陷,本专利技术的目的是提供一种多源异构数据联邦查询系统、保障及访问方法。

2、根据本专利技术提供的一种多源异构数据联邦查询系统,包括:多个项目、计算组管理模块、数据源管理模块、项目管理模块和查询管理模块;

3、每个项目包含计算组和数据源;各个项目之间的计算组和数据源相互隔离且互不影响;

4、项目管理模块,以项目作为基本组织单元,用于多用户隔离和访问控制;

5、计算组管理模块用于构建、动态调整计算组以及保障不同计算组资源相互隔离;

6、数据源管理模块,用于提供数据源的增、删、改、查和分配管理,支持向导式创建数据源连接;

7、查询管理模块,提供跨数据源的查询编辑控制台,支持通过统一sql语法跨多数据源查询,还提供sql执行历史、执行信息和执行计划展示页面。

8、优选地,计算组管理模块中,计算组为查询的实际执行单位,每个计算组均为一套trino集群,包含两个协调实例和多个工作实例;计算组是独立于存储的计算引擎,计算所需的数据从外部存储加载;计算组的计算能力由工作节点的资源配置和工作实例的数量决定;且不同计算组之间的计算资源相互隔离且互不影响,以此保障使用不同计算组的项目作业互不干扰。

9、优选地,计算组管理模块中,协调实例用于接收客户端请求,解析sql语句,生成执行计划,并将计划拆解成一个或多个阶段,每个阶段包含一个或者多个任务,随后将任务分配至工作节点执行,最后汇总计算结果返回给客户端;工作实例通过不同连接器从相应的外部存储读取数据,对数据进行计算处理,最后将计算结果传输给协调节点。

10、优选地,计算组管理模块还具备可视化的计算组配置管理页面,用户根据页面的向导提示构建计算组;对于已构建完成的计算组,用户根据业务需求动态地增加或删除工作实例,以应对查询负载的变化。

11、优选地,数据源管理模块中,计算组通过连接器从不同存储引擎获取数据,连接器定义字段类型的映射,以屏蔽底层字段类型的差异,实现数据的联合查询;在连接器研发完成并部署后,提供相应的连接信息,使计算组的工作实例通过连接信息访问存储在不同地址和不同类型数据源中的数据;对数据源执行增、删、改、查和分配管理,且数据源由管理员统一配置并分配到项目中使用;支持向导式创建数据源连接,无需直接编辑复杂的配置文件,以此提升系统功能的易用性。

12、优选地,连接器定义字段类型的映射方法为:继承trino-base-jdbc包中的basejdbcclient类;重写tocolumnmapping和towritemapping方法来确定目标数据库和trino的字段映射,以此构建连接国产自主可控数据库和商业数据库的连接器。

13、优选地,查询管理模块提供跨数据源的查询编辑控制台,通过计算组连接多数据源的能力,通过show catalog语句查询catalog信息,并通过树形的结构进行展示;

14、用户在同一个页面查看不同存储引擎下的表和视图的元数据,且能以兼容ansi标准的统一的sql语法,同时访问和操作来自多个不同数据源的数据,无需在各个数据源之间切换,降低数据访问的复杂性,并提升数据分析的便捷性和效率;

15、提供sql执行历史的展示页面、sql的执行信息和执行计划展示页面。

16、优选地,查询管理模块的方式为:

17、通过查询数据库中的trino_queries表获取查询详情信息和状态,如果状态是running,则通过协调节点的地址和查询id,访问协调节点的http接口,请求路径为/v1/query/{query_id},获取对应查询id的实时执行信息并在页面进行展示;

18、若查询的状态是finished,则直接将查询详情信息返回到页面进行展示。

19、本专利技术还提供了一种应用于多源异构数据联邦查询系统的协调节点单点问题的保障方法,包括如下步骤:

20、步骤s1,采用keepalived和nginx构建协调节点的高可用,keepalived为用于实现高可用性和负载均衡的开源软件,nginx为高性能的http和反向代理服务器,nginx常用于处理高并发请求;在两台服务器上分别安装并配置keepalived和nginx,对keepalived配置不同的虚拟路由器标识符(vrid)和虚拟ip地址(vip),且启用健康检查功能,以定期检查nginx的状态,确保只为健康的节点提供服务;

21、步骤s2,部署计算组时,在两个不同的主机上部署协调节点,并在nginx配置文件夹中新增配置文件,设定两个协调节点的访问ip和端口,且将其中一个节点设为backup,配置完成后执行nginx-s reload命令使配置生效;

22、步骤s3,部署工作节点时,将config.properties中的discovery.uri参数配置为keepalived中配置的虚拟ip和nginx中配置的端口,以此实现协调节点和nginx的高可用。

23、本专利技术还提供了一种应用于多源异构数据联邦查询系统的保障主备切换时sql执行历史的访问方法,包括如下步骤:

24、通过实现自定义的监听插件,监听插件继承trino的eventlistener类,实现querycreated方法,本文档来自技高网...

【技术保护点】

1.一种多源异构数据联邦查询系统,其特征在于,包括:多个项目、计算组管理模块、数据源管理模块、项目管理模块和查询管理模块;

2.根据权利要求1所述的一种多源异构数据联邦查询系统,其特征在于,所述计算组管理模块中,所述计算组为查询的实际执行单位,每个计算组均为一套Trino集群,包含两个协调实例和多个工作实例;所述计算组是独立于存储的计算引擎,计算所需的数据从外部存储加载;所述计算组的计算能力由工作节点的资源配置和所述工作实例的数量决定;且不同计算组之间的计算资源相互隔离且互不影响,以此保障使用不同计算组的项目作业互不干扰。

3.根据权利要求2所述的一种多源异构数据联邦查询系统,其特征在于,所述计算组管理模块中,所述协调实例用于接收客户端请求,解析SQL语句,生成执行计划,并将计划拆解成一个或多个阶段,每个阶段包含一个或者多个任务,随后将任务分配至工作节点执行,最后汇总计算结果返回给客户端;所述工作实例通过不同连接器从相应的外部存储读取数据,对数据进行计算处理,最后将计算结果传输给协调节点。

4.根据权利要求1所述的一种多源异构数据联邦查询系统,其特征在于,所述计算组管理模块还具备可视化的计算组配置管理页面,用户根据页面的向导提示构建计算组;对于已构建完成的计算组,用户根据业务需求动态地增加或删除所述工作实例,以应对查询负载的变化。

5.根据权利要求1所述的一种多源异构数据联邦查询系统,其特征在于,所述数据源管理模块中,计算组通过连接器从不同存储引擎获取数据,所述连接器定义字段类型的映射,以屏蔽底层字段类型的差异,实现数据的联合查询;在连接器研发完成并部署后,提供相应的连接信息,使计算组的工作实例通过所述连接信息访问存储在不同地址和不同类型数据源中的数据;对数据源执行增、删、改、查和分配管理,且数据源由管理员统一配置并分配到项目中使用;支持向导式创建数据源连接,无需直接编辑复杂的配置文件,以此提升系统功能的易用性。

6.根据权利要求5所述的一种多源异构数据联邦查询系统,其特征在于,所述连接器定义字段类型的映射方法为:继承trino-base-jdbc包中的BaseJdbcClient类;重写toColumnMapping和toWriteMapping方法来确定目标数据库和Trino的字段映射,以此构建连接国产自主可控数据库和商业数据库的连接器。

7.根据权利要求1所述的一种多源异构数据联邦查询系统,其特征在于,所述查询管理模块提供跨数据源的查询编辑控制台,通过计算组连接多数据源的能力,通过showcatalog语句查询catalog信息,并通过树形的结构进行展示;

8.根据权利要求7所述的一种多源异构数据联邦查询系统,其特征在于,所述查询管理模块的方式为:

9.一种协调节点单点问题的保障方法,采用权利要求1至8任一项所述的一种多源异构数据联邦查询系统,其特征在于,包括如下步骤:

10.一种保障主备切换时SQL执行历史的访问方法,采用权利要求1至8任一项所述的一种多源异构数据联邦查询系统,其特征在于,包括如下步骤:

...

【技术特征摘要】

1.一种多源异构数据联邦查询系统,其特征在于,包括:多个项目、计算组管理模块、数据源管理模块、项目管理模块和查询管理模块;

2.根据权利要求1所述的一种多源异构数据联邦查询系统,其特征在于,所述计算组管理模块中,所述计算组为查询的实际执行单位,每个计算组均为一套trino集群,包含两个协调实例和多个工作实例;所述计算组是独立于存储的计算引擎,计算所需的数据从外部存储加载;所述计算组的计算能力由工作节点的资源配置和所述工作实例的数量决定;且不同计算组之间的计算资源相互隔离且互不影响,以此保障使用不同计算组的项目作业互不干扰。

3.根据权利要求2所述的一种多源异构数据联邦查询系统,其特征在于,所述计算组管理模块中,所述协调实例用于接收客户端请求,解析sql语句,生成执行计划,并将计划拆解成一个或多个阶段,每个阶段包含一个或者多个任务,随后将任务分配至工作节点执行,最后汇总计算结果返回给客户端;所述工作实例通过不同连接器从相应的外部存储读取数据,对数据进行计算处理,最后将计算结果传输给协调节点。

4.根据权利要求1所述的一种多源异构数据联邦查询系统,其特征在于,所述计算组管理模块还具备可视化的计算组配置管理页面,用户根据页面的向导提示构建计算组;对于已构建完成的计算组,用户根据业务需求动态地增加或删除所述工作实例,以应对查询负载的变化。

5.根据权利要求1所述的一种多源异构数据联邦查询系统,其特征在于,所述数据源管理模块中,计算组通过连接器从不同存储引擎获取数据,所述连...

【专利技术属性】
技术研发人员:朱森万英杰李亚贝朱东江欧阳天
申请(专利权)人:上海宝信软件股份有限公司
类型:发明
国别省市:

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

1