DM7总体构架解析.doc

DM7总体构架解析.doc

ID:57395036

大小:778.50 KB

页数:13页

时间:2020-08-15

DM7总体构架解析.doc_第1页
DM7总体构架解析.doc_第2页
DM7总体构架解析.doc_第3页
DM7总体构架解析.doc_第4页
DM7总体构架解析.doc_第5页
资源描述:

《DM7总体构架解析.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、DM7总体构架解析郭琰概述DM7数据库管理系统是在总结DM系列产品的经验和教训基础上,吸收主流数据库产品优点,学习适应OLAP应用的专用数据库技术,采用类JAVA的虚拟机技术,重新设计的新一代数据库产品。采用全新的体系架构,极大提升了达梦数据库产品的性能、语言丰富性、可扩展性,能同时兼顾OLTP和OLAP请求,从根本上提升了DM产品的品质。相对于DM6,DM7中新增和改进特性多达数百项,本文将为您介绍DM7众多新特性中最为重要和最具创新性的部分。系统核心构架DM7采用高效的多线程体系结构,由不同的

2、功能线程协同完成服务器的整体功能。图1系统结构系统总体结构如图1所示,数据库内核提供词法和语法分析、事务管理、封锁、多核查询引擎、安全管理、备份恢复、缓冲区、日志以及操作系统和硬件抽象层等功能。在此基础上,用户可以基于数据库内核来搭建两种类型的集群结构:无共享的大规模并行集群和共享磁盘的集群。在客户端,用户可以通过DM7提供的各种标准接口来访问达梦数据库或者是数据库集群,也可以通过各种客户端工具来对达梦数据库进行管理。操作系统和硬件抽象层:对操作系统和硬件环境提供封装API,使得一套源代码可以在不

3、同平台下运行,屏蔽操作系统和硬件的差异,简化上层处理逻辑。各种操作系统和硬件环境下保持一致的存储格式和消息通信格式。缓冲区管理:该模块将用户需要访问的数据从磁盘加载到内存中,并提供高效、高并发的缓冲区访问和淘汰机制,使得可以支撑大量并发用户的数据访问。日志管理:提供事务的持久性能力,任何已提交的事务都持久性的生效。事务管理:提供多版本并发控制机制,使得系统能够保证事务的原子性、隔离性,并提供很高的并发访问能力,查询在任何时候能够不被封锁。锁管理:提供并发更新数据时的封锁能力,避免出现数据的不一致。

4、多核查询引擎:内置多个查询处理引擎,针对不同的查询使用自适应的查询引擎,如全文检索引擎、对象-关系数据处理引擎、空间数据处理引擎等。安全管理:提供内置的安全机制,使得系统的安全级别能够达到四级。备份恢复管理:提供各种备份恢复功能,如完整备份、增量备份、并行备份与恢复、基于时间点的恢复等。无共享集群:基于DM7数据库提供基于数据划分的高性能大规模并行集群功能,多个节点能够并行处理同一个请求,提升系统性能,并且通过节点间的守护技术来保证系统中的任意节点出现故障时,仍然能够提供不间断的服务。共享磁盘集群

5、:基于DM7数据库提供共享磁盘架构的集群功能,多个集群节点共享一份数据,能够通过增加/删除节点来提升系统性能,并且也能够在节点出现故障时提供不间断的服务。JDBC/ODBC等接口:提供应用中常见的JDBC、ODBC、.NETDATAPROVIDER、PHP、OLEDB等接口,供各种应用程序调用。管理/交互式工具:提供图形化的数据库管理和SQL执行工具,便于DBA/数据库使用人员对数据库直接进行管理。性能监视工具:用于监控系统性能,帮助数据库管理人员分析系统瓶颈/错误,并提供适当的系统调整/优化建议

6、。迁移工具:用于从其他各种主流数据库或者较低版本的达梦数据库迁移数据到最新的DM7数据库管理系统。控制台工具:用于配置达梦数据库的各种参数以及进行脱机备份与恢复等。数据仓库套件:其他工具:如数据库重演工具用于帮助重现问题、快速数据装载工具用于快速将文本文件中的数据装载到DM7中等等。高性能查询处理技术DM7采用基于代价的查询优化策略,使用了多趟处理策略,结合面向堆栈的虚拟机执行器,并借助重用等优化手段,争取达到最优的查询效果。查询语句分析优化过程并非一蹴而就,而是分多个阶段进行变换处理,直至最终生

7、成物理查询计划。PARSE:进行语法检查,将原始语句转换为对应语法树。PHASEA:进行语义分析,将标识符翻译为对应字典对象。PHASEB:关系变换。1、按照规则将语法树变换为关系(REL)树;2、处理子查询,将IN、EXISTS查询变换为半连接(SEMIJOIN);3、处理子查询的相关性,将相关性去除,变为与引用表的连接(JOIN)。PHASEC:利用统计信息进行代价优化。1、对于单表查询,选择合适索引。2、对于多表链接,选择连接顺序,选择物理连接操作符PHASEE:表达式优化1、重用语句中相同

8、表达式,避免重复计算2、尽量选择批量指令执行计算,减少反复调用的代价PHASEG:并行优化,构造并行操作符,使用多线程处理水平分区表的查询。DM7查询优化器利用优化规则,将所有的相关子查询变换为等价的关系连接,从而取消查询的嵌套关系。例如:selectcount(*)fromc_orderwhereexists(select*fromc_order_linewhereo_id=ol_o_idandol_quantity>10)上面的关系树就会被转化为与其等价的如下语句(伪SQL)的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。