【技术实现步骤摘要】
一种基于AST的分布式SQL查询方法、装置及存储介质
[0001]本专利技术涉及SQL查询
,特别是涉及一种基于AST的分布式SQL查询方法、装置及存储介质。
技术介绍
[0002]目前的数据共享领域中,绝大多数基于SQL查询的数据共享都是通过研发工程师在编码过程中直接对SQL进行语义分析实现数据共享安全管控,此类做法不仅实现复杂耗费大量人力成本,同时使得数据共享局限于指定的数据库类型,无法做到真正的多源异构数据共享,并且查询性能受限于数据库的读写能力,对于数据库运维要求较大,若没有实现分布式部署,那么对应的对于数据库的硬件资源要求也会相应的提高,整体人力成本、硬件成本、管理成本都相对较大。
[0003]目前常见的实现方案,大多基于一种固定的数据库类型实现动态SQL查询,但这种实现方式的前提是数据必须从源数据库抽取到指定的数据库才能够实现,这种实现方式,不仅增加了一个数据库的运维,且使得整个基于SQL查询的数据共享查询性能受限于数据库读能力以及硬件资源。
[0004]综上所述,现有SQL查询方法的不足: ...
【技术保护点】
【技术特征摘要】
1.一种基于AST的分布式SQL查询方法,其特征在于,所述方法包括以下步骤:步骤一,基于ANSI标准规范输入SQL传输到AST抽象语法树生成服务;步骤二,利用所述AST抽象语法树生成服务生成AST抽象语法树;步骤三,利用AST语义分析服务基于AST进行语义分析,生成执行策略;步骤四,根据所述执行策略通过分布式查询引擎执行查询;步骤五,返回查询结果。2.根据权利要求1所述的一种基于AST的分布式SQL查询方法,其特征在于,所述利用AST语义分析服务基于AST进行语义分析,生成执行策略,具体包括:根据AST抽象语法树进行词法分析,分析SQL语句中的每一个单词,且标记每个单词所在的位置;进行语法分析,分析词法分析中每个单词的含义,将每个单词归类为SQL语法中的一部分;深度优先遍历AST抽象语法树,一一校验解析每一次遍历的结果,分析出SQL语句中表与表之间的关系,字段与字段之间的关系;将词法分析及语法分析结果打包成执行策略。3.根据权利要求1所述的一种基于AST的分布式SQL查询方法,其特征在于,所述根据所述执行策略通过分布式查询引擎执行查询,具体包括:分布式查询引擎接收执行策略后,将SQL编译声明,在集群内部创建分布式查询引擎的执行计划,根据策略分发任务给集群内的工作节点。4.一种基于AST的分布式SQL查询装置,其特征在于,装置包括:输入SQL模块,用于基于ANSI标准规范输入SQL传输到AST抽象语法树生成服务;生成AST抽象语法树模块,用于利用所述AST抽象语法树生成服务生成AST抽象...
【专利技术属性】
技术研发人员:陈伟鹏,
申请(专利权)人:深圳航天智慧城市系统技术研究院有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。