当前位置:首页 > 报告详情

数据库内核的南天门-内核专场(54页).pdf

上传人: 云闲 编号:87309 2021-01-01 54页 1.02MB

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要介绍了数据库内核开发中的SQL编译器开发,包括以下几个关键点: 1. 数据库内核开发中,SQL语言是数据库的功能接口,是对关系模型的语言表达,因此对于数据库开发来说,最核心的是定义支持的SQL,解释SQL,执行SQL。 2. SQL定义包括SQL-92、SQL-99、SQL-2016等标准SQL,以及自定义SQL。 3. SQL解释包括SQL编译器,词法分析,语法分析,语义分析等步骤。 4. SQL执行包括生成执行计划,执行执行计划。 5. 编译器的基础知识包括编译原理(龙书、虎书)、Flex&Bison等。 6. 编译的执行过程包括查询经过TCP/IP或者Unix socket以数据包的形式传递给backend进程,然后作为字符串传递给parser,词法分析器将字符串打散成一个个的token(单词),语法分析器依次读取token并适配对应的语法规则然后生成抽象语法树。 7. 语法设计包括定义终结符和非终结符,创建语法规则,解决语法冲突等步骤。 8. 词法分析器的作用是在文本中识别出指定词法模式(正则表达式)的单词,包括关键字列表,起始状态,字符串识别等。 9. 数据库内核开发不仅仅是SQL parser,还需要阅读其他语法标准,了解语言整体设计,接触底层硬件语言C,汇编,更加了解语言的实现细节。
数据库内核开发如何从Parser开始? 词法分析器如何识别SQL关键字? 编译器如何处理SQL语句的执行?
客服
商务合作
小程序
服务号
折叠