论文部分内容阅读
实时历史数据库是工业企业自动化体系中的一个关键技术,在电力企业等流程工业中有着广泛应用。本文是在与中国电力科学研究院下属某公司合作开发的GDREAL实时历史数据库系统的基础上,进行了理论和实践创新之后完成的。GDREAL是一大型实时历史数据库系统,本文所涉及的磁盘历史数据库和实时内存数据库是GDREAL的重要组成部分。论文以磁盘历史数据库的开发为背景,分析了磁盘历史数据库设计中的问题,对制约历史数据库发展的瓶颈——磁盘I/O、文件的索引和数据的组织结构等进行了深入的研究,提出了一种新的磁盘存储结构是——Z树结构,减少了磁盘I/O操作次数,极大地提高了磁盘存储性能;采用文件组的方式,设计了一个高效的文件集管理系统;对写入页面的大小和查询性能做了分析。论文以实时内存数据库的开发为背景,分析了实时数据的存储流程,完成了实时内存数据库和历史数据缓冲区的设计和实现:为了避免内存碎片和减少动态内存分配和释放的开销,设计了一个内存池,将动态内存分配改为预先分配;结合历史数据的特点,设计实现了基于双队列的内存页面LRU淘汰算法,将之用于历史数据缓存页面的管理;采用断点续传机制,很好地实现了大量数据的分批返回。论文详细介绍了实时历史数据库的事务和并发控制,结合传统的事务并发控制协议,区分实时事务和非实时事务,设计了基于优先级继承的有序共享的两段锁协议。