列数据库SQL语言编译器的研究与实现
摘要 | 第5-6页 |
Abstract | 第6页 |
第一章 绪论 | 第9-17页 |
1.1 项目背景 | 第9-10页 |
1.2 国内外现状 | 第10-14页 |
1.2.1 Sybase IQ | 第11页 |
1.2.2 InfoBright | 第11-12页 |
1.2.3 MonetDB | 第12-13页 |
1.2.4 HBase | 第13页 |
1.2.5 C-Store | 第13-14页 |
1.3 本文主要工作 | 第14-15页 |
1.4 本文组织 | 第15页 |
1.5 本章小结 | 第15-17页 |
第二章 相关技术及工作基础 | 第17-21页 |
2.1 SQL92 | 第17页 |
2.2 Flex&Bison | 第17-18页 |
2.3 国际TPC-H测量基准 | 第18页 |
2.4 列数据库编译器工作基础 | 第18-20页 |
2.5 本章小结 | 第20-21页 |
第三章 SQL语言编译器总体设计 | 第21-43页 |
3.1 编译器结构设计 | 第21-22页 |
3.2 语法树 | 第22-31页 |
3.2.1 语法树的设计 | 第22-28页 |
3.2.2 SQL词法总结 | 第28-30页 |
3.2.3 语法分析器 | 第30-31页 |
3.3 表操作 | 第31-37页 |
3.3.1 表操作设计 | 第32-37页 |
3.3.1.1 表操作结点设计 | 第32-36页 |
3.3.1.2 表操作生成器 | 第36-37页 |
3.4 原语依赖图 | 第37-41页 |
3.4.1 原语设计 | 第37-40页 |
3.4.2 依赖图 | 第40-41页 |
3.5 本章小结 | 第41-43页 |
第四章 SQL编译关键技术实现 | 第43-81页 |
4.1 语法树的生成 | 第43-50页 |
4.1.1 语法树结点结构 | 第43-47页 |
4.1.2 语法分析 | 第47-50页 |
4.2 表操作链表的生成 | 第50-69页 |
4.2.1 表操作相关数据结构 | 第50-56页 |
4.2.2 表操作生成过程 | 第56-65页 |
4.2.3 子查询 | 第65-69页 |
4.2.3.1 子查询分类 | 第65-67页 |
4.2.3.2 非相关子查询 | 第67-68页 |
4.2.3.3 相关子查询 | 第68-69页 |
4.3 原语依赖图的生成 | 第69-77页 |
4.3.1 原语结点数据结构 | 第69-70页 |
4.3.2 依赖图生成过程 | 第70-77页 |
4.4 原语依赖图解析结果 | 第77-80页 |
4.5 本章小结 | 第80-81页 |
第五章 编译优化研究 | 第81-91页 |
5.1 子查询优化 | 第81-85页 |
5.1.1 无关联查询 | 第81-84页 |
5.1.2 无聚合关联查询 | 第84-85页 |
5.2 条件化简 | 第85-89页 |
5.2.1 简单表达式处理 | 第85-86页 |
5.2.2 条件传递 | 第86-88页 |
5.2.3 无用表达式消除 | 第88-89页 |
5.3 优化结果 | 第89-90页 |
5.4 本章小结 | 第90-91页 |
总结与展望 | 第91-92页 |
参考文献 | 第92-95页 |
攻读硕士学位期间取得的研究成果 | 第95-96页 |
致谢 | 第96-97页 |
附件 | 第97页 |