基于GO语言的SQL解释器设计与实现开题报告

 2021-12-29 20:58:16

全文总字数:4150字

1. 研究目的与意义(文献综述)

根据tiobe index for february2020的数据,go语言去年来的发展是迅速的,在2019一年中就上升了7个名次,这门年轻的编程语言只用了几年就进入了主流编程语言的行列之中。在最近发布的一份2019年十大企业级编程语言榜单中,go 语言排在第4位,在它前面的只有 javascript、java 和 python 这三门历史悠久的编程语言。并且go语言近些年开始在国内受到欢迎,腾讯、字节跳动等国内互联网大公司开始广泛使用go语言作为主要的后端开发语言。

随着go语言的广泛应用于大规模软件开发过程中,go语言与数据库的交互变得越来越频繁,其对数据的处理也逐渐变得复杂。数据之间的存储、异构、检索与整合,在go语言平台中变得越来越重要。

对于大型软件的数据处理来说,我们可以看到,首先是数据本身类型的复杂性越来越高,其次是数据之间的联系与交叉也越来越复杂。为了解决该问题,软件系统中的数据处理越来越趋近于数据库管理系统中的处理方式,所以在.net framework中诞生了linq(语言集成查询)。这一方面这是利用了一般开发者对于sql的熟悉,另一方面也是利用sql的强表达力的特性。但是go语言中缺少类似的特性,所以也缺少一种良好的数据处理的工具。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

2. 研究的基本内容与方案

基本内容:

本系统基原生go语言环境开发,使用antlr实现sql的lexer与parser。根据构造的语法树对sql语句进行后端解释执行,其中将json格式与数据库对象对应,使之基于go语言实现类似语言集成查询的功能,并且实现存储的数据对象的自动转换与sql查询的相关优化工作,最终实现一个高效快捷并且数据对象方便转化的sql解释器。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

3. 研究计划与安排

(1)2020/1/19—2020/2/28:确定选题,查阅文献,外文翻译和撰写开题报告;

(2)2020/3/1—2020/4/30:系统架构、程序设计与开发、系统测试与完善;

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

4. 参考文献(12篇以上)

[1]e. begoli, j. camacho-rodríguez, j. hyde, m. j. mior, d. lemire. apache calcite: afoundational framework for optimized query processing over heterogeneous datasources[j]. international conference on management of data acm sigmod,p.221-230, 2018.

[2]joseph m. hellerstein, michael stonebraker and james hamilton.architecture of a database system[m]. foundations and trends in databases,2007.

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

发小红书推广免费获取该资料资格。点击链接进入获取推广文案即可: Ai一键组稿 | 降AI率 | 降重复率 | 论文一键排版