业务导向的自定义大数据查询系统及其SQL解析器的设计与实现
发布时间:2022-01-04 19:48
随着互联网的快速发展,用户数据以极快的速度积累,用户行为分析成为热门的研究内容。本论文实现的数据查询系统是互联网用户行为分析系统的一个数据查询子系统。本文定义了一种简单的领域专用语言,并将其命名为SSQL(Simple Structured Query Language,简单结构化数据查询语言),论文根据具体需求抽象出一般查询场景,进而将其抽象成为一般的语法规则。本文使用扩展的巴克斯范式来定义SSQL,并使用ANTLR(ANother Tool for Language Recognition,一一种语言识别器)作为语法解析器生成工具,然后使用解析器和遍历器构建查询任务。SSQL语法支持了数据定义语句、数据查询语句以及系统管理语句。查询语法支持的查询数据源包括HDFS结构化数据、MySQL、Hive、以及Redis,ElasticSearch等常见NoSQL数据源。此外,SSQL语法还对数据源的管理提供支持,支持了对数据源的定义及其增删查改。本论文基于SSQL查询语法设计和实现了一个数据查询系统,为数据开发者提供了快速、定制化的大数据查询平台。论文介绍了该查询系统的组成结构和其实现过程...
【文章来源】:北京邮电大学北京市 211工程院校 教育部直属院校
【文章页数】:101 页
【学位级别】:硕士
【部分图文】:
图2-1?HDFS架构??本文面向互联网用户行为分析系统中的数据查询子系统,HDFS作为部分离??
迭代的算法[14]。Spark提供比Hadoop更多的更方便的编程模型,内存环境下,??Spark比Hadoop快大约两个数量级[5]。??Spark项目的结构如图2-2所示。Spark提供了一个弹性分布式数据集??(Resilient?Distributed?Datasets,?RDD)的抽象编程接口,是?Spark?的核心编程接??口。除此之外,Spark生态系统中还包括其他附加库,比如Spark?Streaming用于??处理实时流数据,以及机器学习库Spark?MLlib和图计算Spark?GraphX。Spark??SQL是Spark的另外一个重要组成,主要负责HDFS中结构化文件的处理。??□日日曰??f?N??Spark?Core??V?/??图2-2?Spark项目架构??2.?2?Spark中的SQL解析技术??2.2.1?Spark?SQL?概述??Spark?SQL是Spark中把函数式编程接口和关系型查询结合起来的新的模??块,从组成上来讲,主要由Spark?SQL内核、Catalyst优化器、Hive支持3部??分组成[4],由最初的Shark演化而来[6]。Spark?SQL的编程接口如图2-3所示。??Spark?SQL同时兼容HiveQL语法,可以访问己经存在的Hive数据仓库,还支??持和标准JDBC的集成
迭代的算法[14]。Spark提供比Hadoop更多的更方便的编程模型,内存环境下,??Spark比Hadoop快大约两个数量级[5]。??Spark项目的结构如图2-2所示。Spark提供了一个弹性分布式数据集??(Resilient?Distributed?Datasets,?RDD)的抽象编程接口,是?Spark?的核心编程接??口。除此之外,Spark生态系统中还包括其他附加库,比如Spark?Streaming用于??处理实时流数据,以及机器学习库Spark?MLlib和图计算Spark?GraphX。Spark??SQL是Spark的另外一个重要组成,主要负责HDFS中结构化文件的处理。??□日日曰??f?N??Spark?Core??V?/??图2-2?Spark项目架构??2.?2?Spark中的SQL解析技术??2.2.1?Spark?SQL?概述??Spark?SQL是Spark中把函数式编程接口和关系型查询结合起来的新的模??块,从组成上来讲,主要由Spark?SQL内核、Catalyst优化器、Hive支持3部??分组成[4],由最初的Shark演化而来[6]。Spark?SQL的编程接口如图2-3所示。??Spark?SQL同时兼容HiveQL语法,可以访问己经存在的Hive数据仓库,还支??持和标准JDBC的集成
【参考文献】:
期刊论文
[1]Spark SQL优化器系统Catalyst的深入解析和应用[J]. 邹学利. 决策咨询. 2018(03)
[2]基于ANTLR的Web应用测试脚本自动重构方法[J]. 周辉,钱巨. 计算技术与自动化. 2017(03)
[3]一种基于ANTLR的MongoDB数据库SQL转化模型[J]. 李常青,谷建华. 西北工业大学学报. 2017(01)
[4]基于ANTLR的SQL语法分析策略与实现[J]. 王海燕,杨鹤标. 计算机应用与软件. 2013(11)
[5]一种领域特定语言的研究与实现[J]. 赵卫东,刘永红. 成都大学学报(自然科学版). 2013(02)
[6]基于ANTLR的TTCN-3编译器的面向对象设计[J]. 徐玲,韦巍. 控制工程. 2012(S1)
[7]基于领域专用语言的应用软件自动生成[J]. 周艳明. 计算机工程与应用. 2003(10)
硕士论文
[1]基于抽象语法树的SQL注入防御研究[D]. 王杰.武汉邮电科学研究院 2018
[2]基于Spark系统的查询分析及优化研究[D]. 张雷.北京交通大学 2016
[3]基于代价模型的Spark SQL查询优化研究[D]. 刘春雷.电子科技大学 2016
[4]SQL语言到自然语言自动翻译的研究[D]. 吕海熊.北京理工大学 2016
[5]面向数据库安全的SQL语句解析与翻译[D]. 宋健龙.北京理工大学 2015
[6]基于ANTLR的Gaussian词法分析器和语法分析器的分析与设计[D]. 刘三献.兰州大学 2009
本文编号:3568958
【文章来源】:北京邮电大学北京市 211工程院校 教育部直属院校
【文章页数】:101 页
【学位级别】:硕士
【部分图文】:
图2-1?HDFS架构??本文面向互联网用户行为分析系统中的数据查询子系统,HDFS作为部分离??
迭代的算法[14]。Spark提供比Hadoop更多的更方便的编程模型,内存环境下,??Spark比Hadoop快大约两个数量级[5]。??Spark项目的结构如图2-2所示。Spark提供了一个弹性分布式数据集??(Resilient?Distributed?Datasets,?RDD)的抽象编程接口,是?Spark?的核心编程接??口。除此之外,Spark生态系统中还包括其他附加库,比如Spark?Streaming用于??处理实时流数据,以及机器学习库Spark?MLlib和图计算Spark?GraphX。Spark??SQL是Spark的另外一个重要组成,主要负责HDFS中结构化文件的处理。??□日日曰??f?N??Spark?Core??V?/??图2-2?Spark项目架构??2.?2?Spark中的SQL解析技术??2.2.1?Spark?SQL?概述??Spark?SQL是Spark中把函数式编程接口和关系型查询结合起来的新的模??块,从组成上来讲,主要由Spark?SQL内核、Catalyst优化器、Hive支持3部??分组成[4],由最初的Shark演化而来[6]。Spark?SQL的编程接口如图2-3所示。??Spark?SQL同时兼容HiveQL语法,可以访问己经存在的Hive数据仓库,还支??持和标准JDBC的集成
迭代的算法[14]。Spark提供比Hadoop更多的更方便的编程模型,内存环境下,??Spark比Hadoop快大约两个数量级[5]。??Spark项目的结构如图2-2所示。Spark提供了一个弹性分布式数据集??(Resilient?Distributed?Datasets,?RDD)的抽象编程接口,是?Spark?的核心编程接??口。除此之外,Spark生态系统中还包括其他附加库,比如Spark?Streaming用于??处理实时流数据,以及机器学习库Spark?MLlib和图计算Spark?GraphX。Spark??SQL是Spark的另外一个重要组成,主要负责HDFS中结构化文件的处理。??□日日曰??f?N??Spark?Core??V?/??图2-2?Spark项目架构??2.?2?Spark中的SQL解析技术??2.2.1?Spark?SQL?概述??Spark?SQL是Spark中把函数式编程接口和关系型查询结合起来的新的模??块,从组成上来讲,主要由Spark?SQL内核、Catalyst优化器、Hive支持3部??分组成[4],由最初的Shark演化而来[6]。Spark?SQL的编程接口如图2-3所示。??Spark?SQL同时兼容HiveQL语法,可以访问己经存在的Hive数据仓库,还支??持和标准JDBC的集成
【参考文献】:
期刊论文
[1]Spark SQL优化器系统Catalyst的深入解析和应用[J]. 邹学利. 决策咨询. 2018(03)
[2]基于ANTLR的Web应用测试脚本自动重构方法[J]. 周辉,钱巨. 计算技术与自动化. 2017(03)
[3]一种基于ANTLR的MongoDB数据库SQL转化模型[J]. 李常青,谷建华. 西北工业大学学报. 2017(01)
[4]基于ANTLR的SQL语法分析策略与实现[J]. 王海燕,杨鹤标. 计算机应用与软件. 2013(11)
[5]一种领域特定语言的研究与实现[J]. 赵卫东,刘永红. 成都大学学报(自然科学版). 2013(02)
[6]基于ANTLR的TTCN-3编译器的面向对象设计[J]. 徐玲,韦巍. 控制工程. 2012(S1)
[7]基于领域专用语言的应用软件自动生成[J]. 周艳明. 计算机工程与应用. 2003(10)
硕士论文
[1]基于抽象语法树的SQL注入防御研究[D]. 王杰.武汉邮电科学研究院 2018
[2]基于Spark系统的查询分析及优化研究[D]. 张雷.北京交通大学 2016
[3]基于代价模型的Spark SQL查询优化研究[D]. 刘春雷.电子科技大学 2016
[4]SQL语言到自然语言自动翻译的研究[D]. 吕海熊.北京理工大学 2016
[5]面向数据库安全的SQL语句解析与翻译[D]. 宋健龙.北京理工大学 2015
[6]基于ANTLR的Gaussian词法分析器和语法分析器的分析与设计[D]. 刘三献.兰州大学 2009
本文编号:3568958
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3568958.html