[发明专利]支持通过简单SQL调用中间件数据库特有功能的方法有效
申请号: | 201610771017.6 | 申请日: | 2016-08-30 |
公开(公告)号: | CN106407302B | 公开(公告)日: | 2019-10-08 |
发明(设计)人: | 王杰;黄晓虎;王梅 | 申请(专利权)人: | 东华大学 |
主分类号: | G06F16/245 | 分类号: | G06F16/245 |
代理公司: | 上海申汇专利代理有限公司 31001 | 代理人: | 翁若莹;柏子雵 |
地址: | 201620 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种支持通过简单SQL调用中间件数据库特有功能的方法,其特征在于用户对数据库功能的高度可定制性和操作的简易性,包括以下步骤:步骤1、架构搭建;步骤2、索引文件创建;步骤3、数据分库存储;步骤4、查询扩展;步骤5、查询解析;步骤6、路由绑定与分发;步骤7、方法执行;步骤8、封装结果并返回。本发明能针对分布式数据库环境下,用户对于各节点数据库特有功能,仅使用简单的类SQL语句即可通过中间管理平台实现统一调用的方法。 | ||
搜索关键词: | 支持 通过 简单 sql 调用 中间件 数据库 特有 功能 方法 | ||
【主权项】:
1.一种支持通过简单SQL调用中间件数据库特有功能的方法,其特征在于,包括如下步骤:步骤1、架构搭建;在分布式数据库中间件中接入关系型数据库和NoSQL数据库;步骤2、索引文件创建,用户指定字段r与数据库db的对应关系,以“r:db”形式保存为索引文件;步骤3、数据分库存储,以列为单位按指定数据与节点的对应关系将数据存入对应不同类型节点数据库中,该步骤包括:步骤3.1、建表,检索索引文件中字段与数据库对应关系,基于字段构建作用于分库的建表子语句,进行路由分发;步骤3.2、插入数据,检索索引文件中字段与数据库对应关系,基于字段构建作用于分库的插入数据子语句,进行路由分发,完成数据插入;步骤4、查询扩展,根据精简和实用原则,设计调用指定方法的SQL语句,SQL语句设计为:SELECT expression[AS output_name][,...]FROM from_item[(USING MapReduce ON condition)]其中,expression表示字段名或一个表达式;from_item表示所要查询的表或NoSQL数据库中与表相对应的单位;括号内USING标识指示使用的执行方法MapReduce;ON标识指示用户所限定的条件condition,通过设定与执行函数相对应的参数获得执行结果集;步骤5、查询解析,根据用户指定SQL语句进行方法的调用,系统在路由分发前对指定SQL语句进行解析,具体步骤如下:步骤5.1、指定关键字解析,判断当前SQL语句是否包含USING关键字,若是,则进行步骤5.2;否则,根据路由配置直接进行SQL语句的分发,以默认方式执行,得到结果;步骤5.2、执行方法解析,解析若包含则通过USING关键字获得执行方法名MapReduce,确定方法执行所调用的函数;步骤5.3、执行参数解析,通过ON关键字获得参数字符串,并从中解析得到参数键值对列表,同时解析待查表名,传入步骤5.2所确定调用的函数中;步骤5.4、返回结果类型解析,确定SQL语句所请求内容的最终返回形式,即步骤4所设计的查询语句中的expression;步骤6、路由绑定与分发,在MYCAT默认路由分发前进行路由绑定,检索索引文件,判断作用字段所在节点及数据库,将SQL语句与待执行节点绑定进行路由分发;步骤7、方法执行,通过函数调用执行脚本,获得结果并返回,具体包括:步骤7.1、函数调用,在步骤5.2所调用的函数中执行脚本函数,其执行步骤如下:步骤7.1.1、结果集映射,根据步骤5.3解析得到的执行参数设定相应类目,并选定规则通过map函数将结果集映射到对应类目中;步骤7.1.2、结果集规约,将步骤7.1.1得到的映射结果集按照步骤5.4解析的内容返回形式通过reduce函数进行规约,并得到函数执行结果集;步骤7.2、结果集返回,将步骤7.1.2规约结果集返回至函数调用处;步骤8、封装结果并返回,根据步骤5.4中获取的内容返回形式,设置表头信息,并将表头信息与返回结果内容对应依次封装为字节流的形式返回。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东华大学,未经东华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610771017.6/,转载请声明来源钻瓜专利网。