[发明专利]一种大数据分布式实时查询方法及系统在审
申请号: | 201710402894.0 | 申请日: | 2017-06-01 |
公开(公告)号: | CN107301205A | 公开(公告)日: | 2017-10-27 |
发明(设计)人: | 王昊翔;吴世豪;张星明;陈霖;梁桂煌;古振威 | 申请(专利权)人: | 华南理工大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广州市华学知识产权代理有限公司44245 | 代理人: | 冯炳辉 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 分布式 实时 查询 方法 系统 | ||
1.一种大数据分布式实时查询方法,其特征在于:首先,将通过SQL APP和ODBC/JDBC得到的查询语句和查询脚本文件进行解析和分析,如果是查询脚本文件则将其分割为多个查询语句分别进行处理,对于单个查询语句则通过关键字进行划分,随后查询协调器将划分的各个部分用不同的节点表示不同的操作,然后根据节点的执行顺序生成基本的查询计划树,查询计划树的根节点是用于汇聚结果并返回,而查询计划树的叶子节点为Scan操作,用于获取相关表数据,对于复杂度低的查询计划树,主服务器将为查询计划树分配一个或多个线程进行处理,分配了多个线程的节点成为并行查询计划树,处理并行查询计划树即启动多个线程同时工作,仅包含单线程的查询计划树将是单方向进行处理,而对于复杂度高的查询计划树,选择以分布式集群的方式执行,集群由云平台上搭建的分布式实时查询服务器组成,包括一台主服务器和多台子服务器,系统会对基本的查询计划树进行分布式修改,group by&local agg之下包括自身的子节点都能够在各个子服务器上的查询组件上分布式执行,而之上的只能在查询协调器上处理,因此将查询计划树划分成多个查询阶段,并且每个查询阶段将会被分配到相应的子服务器的查询组件上进行处理,在每个查询组件都处理完得到相应查询结果集后,都会汇聚到查询协调器进行处理,包括对相关节点数据进行Aggregation以及进行order by和limit处理,得到最终的结果并返回。
2.根据权利要求1所述的一种大数据分布式实时查询方法,其特征在于,包括以下步骤:
1)云平台为云服务器分配所需资源,并初始化实时查询云服务器集群;
2)云平台获取主服务器并作为查询协调器进行工作,查询协调器负责获取查询语句和查询脚本文件并进行解析和分析并决定哪个查询组件进行哪个查询;
3)云服务器通过SQL APP和ODBC/JDBC获取查询语句和查询脚本文件并发送给查询协调器处理,查询协调器对查询语句和查询脚本文件进行解析和分析;
4)查询协调器根据对查询语句的解析分析结果生成基本的查询计划树,查询计划树包含多个节点,不同的操作对于不同的节点,根节点为返回最终结果,叶子节点为Scan操作,分别获取相关表数据;
5)云服务器对生成的查询计划树按以下步骤执行:
5.1)云服务器获取当前查询计划树,根据元数据获取查询节点名称以及查询计划树的复杂程度,判断是否并行执行查询计划树,若不是,执行步骤5.2),若是,执行步骤5.3);
5.2)主服务器处理查询计划树,执行整个查询计划并将最终的查询结果返回给查询协调器,执行步骤5.4);
5.3)查询协调器对基本的查询计划树进行分布式修改,划分成多个查询阶段,同时查询协调器根据分布式查询计划树决定哪些子服务器执行查询阶段,然后将各个查询阶段分配到对应的子服务器的查询组件并行的执行查询操作,最后各个查询组件将各自的结果集返回给查询协调器,查询协调器整合结果集并得到最终查询结果,执行步骤5.4);
5.4)判断有无后续查询操作,若有,则执行步骤5.1)。
3.一种大数据分布式实时查询系统,其特征在于,包括:
查询解析模块,用于对查询语句以及查询脚本文件进行解析和分析,所述查询语句的解析和分析是对单独的查询语句根据关键字进行划分,然后分析其组成部分,所述查询脚本文件用于多个查询语句组合成的脚本文件,先将其分割成多个独立的查询语句然后对单个查询语句进行解析和分析;
查询计划树模块,用于对查询解析模块分析出来的各个组成部分用不同的节点表示不同的操作,然后根据节点的执行顺序生成基本的查询计划树,其中计划树的根用于汇聚结果返回给用户,计划树的叶子节点为Scan操作;
查询阶段模块,用于对上述生成的查询计划树进行分布式修改,将整个查询计划树划分成多个查询阶段,并将各个查询阶段分配给不同的子服务器进行查询操作,子服务器通过对各自的查询阶段进行查询将得到各自的查询结果集;
结果整合模块,对各个子服务器得到的查询结果集进行汇总,并整合处理为最终的结果,同时,将结果返回给大数据可视化系统进行查询结果的可视化以及返回给联机分析处理系统进行后续的联机分析处理。
4.根据权利要求3所述的一种大数据分布式实时查询系统,其特征在于:所述结果整合模块包含有NoSQL缓存单元,该NoSQL缓存单元将查询得到的结果写入NoSQL缓存数据库中,使得在有效期内相同的查询能够直接从NoSQL缓存数据库中直接返回查询结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710402894.0/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置