[发明专利]一种对异构数据源统一处理的方法及系统在审
申请号: | 201811379218.7 | 申请日: | 2018-11-19 |
公开(公告)号: | CN109766352A | 公开(公告)日: | 2019-05-17 |
发明(设计)人: | 李森林;王纯斌;易祖建;张永飞 | 申请(专利权)人: | 成都四方伟业软件股份有限公司 |
主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/2452;G06F21/62 |
代理公司: | 成都睿道专利代理事务所(普通合伙) 51217 | 代理人: | 万利 |
地址: | 610041 四川省*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 请求端 目标数据库 异构数据源 统一处理 方言 数据库 二进制 权限配置模块 数据获取模块 数据解析模块 通信协议通信 语法转换模块 标准语句 返回数据 获取请求 技术难度 解析模块 解析请求 数据获取 数据转换 用户信息 语句转换 标准Sql 鉴权 路由 返回 转换 创建 统一 | ||
本发明公开了一种对异构数据源统一处理的方法及系统,方法包括步骤:获取请求端数据;通过请求端数据获取用户信息并对用户进行鉴权;解析请求端数据,确定请求端数据的目标数据库;将请求端数据转换为目标数据库对应的方言;创建与目标数据库的连接并通过转换后的方言执行请求端数据并返回执行结果至请求端;系统包括数据获取模块、数据解析模块、权限配置模块、路由解析模块、语法转换模块及执行模块;本发明基于MySql二进制通信协议通信,通过将标准Sql语句转换成目标数据库方言,实现了以统一的Sql92标准语句为入口,操作不同种类数据库并返回数据,有效降低了跨数据库的异构数据源统一处理的实现成本和技术难度,提高了异构数据源统一处理的效率。
技术领域
本发明涉及数据库数据处理技术领域,尤其是涉及一种对异构数据源统一处理的方法及系统。
背景技术
目前市面上数据库种类繁多,如Oracle、MySql、SqlServer、Hbase、Hive等,而每种数据库都有自身的语法特性,在已经迈入大数据时代的今天,有很多系统数据需要合并进行操作,目前只能通过将数据抽取合并到同一种数据库后才能进行操作,过程复杂,技术难度大,实现成本高;因此需要一种能够通过统一标准的sql语法操作不同数据源的方法。
发明内容
为了解决上述问题,本发明提出了一种对异构数据源统一处理的方法及系统,基于设定的标准通信协议,以一种标准语法访问多种数据库,实现异构数据源的统一处理。
为了实现上述目的,本发明采用如下技术方案:
具体的,一种对异构数据源统一处理的方法,包括以下步骤:
S1.获取请求端数据;
S2.通过请求端数据获取用户信息并对用户进行鉴权;
S3.解析请求端数据,确定请求端数据的目标数据库;
S4.将请求端数据转换为目标数据库对应的方言;
S5.创建与目标数据库的连接并通过转换后的方言执行请求端数据并返回执行结果至请求端。
进一步的,所述步骤S1还包括:
S11.设定与请求端通信的标准通信协议;
S12.获取请求端发送的请求端数据;
S13.通过所述标准通信协议解析请求端数据并获取用户信息。
进一步的,所述请求端数据为Sql92标准的Sql语句。
进一步的,所述设定的标准通信协议为MySql二进制通信协议。
进一步的,所述步骤S2还包括:
S21.通过获取的用户信息获取用户的权限列表;
S22.通过获取的请求端数据判断操作类型,并根据权限列表判断用户是否有相关权限,若无权限,则返回无权限提示至请求端,若有权限,则执行S3。
进一步的,所述步骤S3还包括:解析所述请求端数据,获取请求端数据中的表信息,根据表信息获取配置文件,找到对应表所在的数据库信息,确定目标数据库。
进一步的,所述步骤S5还包括:
S51.创建与目标数据库的连接;
S52.通过转换后的方言执行请求端数据并返回执行结果;
S53.获取执行结果并将执行结果封装为标准通信协议的数据包;
S54.通过标准通信协议将步骤S53封装的标准通信协议数据包返回请求端。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都四方伟业软件股份有限公司,未经成都四方伟业软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811379218.7/2.html,转载请声明来源钻瓜专利网。