《dts系统中内存数据库关键技术研究与应用》由会员分享,可在线阅读,更多相关《dts系统中内存数据库关键技术研究与应用(65页珍藏版)》请在金锄头文库上搜索。
1、华中科技大学 硕士学位论文 DTS系统中内存数据库关键技术研究与应用 姓名:张立地 申请学位级别:硕士 专业:系统分析与集成 指导教师:曾致远;杨峰 20070303 I 摘 要 电网调度员培训仿真系统(Dispatcher Training Simulator, 简称DTS)是一套运用先 进计算机技术模拟实际电网运行,用于电网调度员培训的数字仿真系统。内存数据 库系统(Main Memory Database System,简称MMDBS)对整个DTS的实时数据进行存 储和管理,并为DTS中其它功能模块提供数据通信支持,是DTS系统的核心模块。随 着DTS系统功能的扩展,对内存数据库运行效率
2、的要求越来越高。 在MMDB中主要靠两个途径来提高性能。第一改变数据库存储结构,减少查找 数据带来的开销;第二选择合适的并发策略来适应并发操作。论文结合DTS系统的 特点,通过对基于树的和基于Hash的索引技术的深入研究,提出了带冲突链的可扩 展Hash索引与T- 树索引在内存数据库中的应用,并给出相应算法的实现方法;在并 发控制方面,针对DTS系统中各种实时事务的特点,对两阶段封锁协议(2PL)进行了 研究,并分析了有序共享锁算法(2PL- OS)在内存数据库中的应用。由于2PL- OS存在 串联夭折问题,在DTS内存数据库中采用2PL- OS/ACA(Avoiding Cascading
3、Abort)并 发策略,既保持了有序共享的特性,又避免了读脏数据。 结合南阳DTS系统项目开发的实际需求,DTS内存数据库(DTS- MMDB) 采用客 户端/服务器(Client/Server)设计模式,采用2PL- OS/ACA并发策略与快照思想相结合, 实现了多用户并发访问。 最后,对论文所做的全部工作进行了总结,提出了目前设计中的创新点及不足 之处,并对未来DTS- MMDBS索引技术与并发控制技术予以展望。 关键词:电网调度员培训仿真系统 内存数据库 可扩展哈希 并发控制 有序共享 II Abstract Dispatcher Training Simulator (DTS) is
4、a kind of real- time simulate system that is used for power dispatcher training. DTS can simulate the running state of real power system by using computer technology. Memory Database System (MMDBS) is the core module, which is in charge of real- time data storage and management and providing data co
5、mmunications support for other modules of DTS. With the rapid expanse of DTS functions, it demands the MMDBS to be more and more efficient and reliable. MMDB improves its performance mainly by two ways. The first way is changing the database structure to reduce the costs of searches; the second choi
6、ce is choosing suitable strategies to meet with concurrent control. By analyzing the characteristics of DTS, this paper proposes Extendible Hashing with conflict chains and T- tree index algorithm after deep studying on indexing technology based on tree structure and hash technology; In concurrency
7、control, according to real- time feature of the system, the paper analyzes the two- phase locking protocol (2PL)and the applications of 2PL- Ordered Sharing (2PL- OS) in MMDB. To cope with the transaction s cascading abort problem in 2PL- OS, 2PL- OS/ACA (Avoiding Cascading Abort) is used in DTS- MM
8、DB, which maintains the characteristics of ordered sharing and avoiding reading dirty data. Combined the actual demand for Nanyang s DTS project, Client/Server design pattern is used in DTS- MMDB. The real- time transactions are adopted 2PL- OS/ACA strategy and snapshot, and the system implementes m
9、ulti- user concurrent access. Finally, the paper makes a review of above work, proposes the innovations and inadequate of current design, and makes the future prospects of indexing technology and concurrency control technology in DTS- MMDBS. Keywords:Dispatcher Training Simulator (DTS) Main Memory D
10、atabase (MMDB) Extendible Hashing Concurrency Control Ordered Sharing 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他 个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集 体, 均已在文中以明确方式标明。 本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名: 日期: 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权 保留并向国家有关部门或机构送
11、交论文的复印件和电子版,允许论文被查阅和借阅。 本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检 索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密, 在 年解密后适用本授权书。 不保密。 (请在以上方框内打“” ) 学位论文作者签名: 指导教师签名: 日期: 年 月 日 日期: 年 月 日 本论文属于 1 1 绪论 1.1 课题背景 1.1.1 课题来源 本论文课题来源于华中科技大学水电与数字化工程学院与河南省南阳市电业局 的合作开发项目“河南省南阳地调调度员培训模拟系统” 。本课题是该项目的一 个子模块内存数据库模块。 随着电力工业的发展,电网规模日
12、益扩大,对供电可靠性的要求也越来越高。 电力系统故障是由调度员统一协调、指挥处理的,如果处理不当可能会发展成大面 积、灾难性故障。电网调度员培训仿真(Dispatcher Training Simulator,简称 DTS)系 统是电力系统仿真和调度自动化的结合,它通过建立实际电力系统的数学模型,再 现各种调度操作和故障前后的系统工况,并将这些信息送到电力系统控制中心的模 型内,为调度员提供一个逼真的环境,以便培训在系统正常、故障和恢复情况下的 操作,达到既不影响实际电力系统的运行,而又使调度员得到实况演练的目的1。 DTS系统中需要存储和交换大量的电网实时采集数据, 而关系型数据库实时性不
13、好,存储效率低,无法满足DTS实时计算的需求。为了解决这个问题,在实际工程 中采用的办法是在关系型数据库的基础上,开发一个实时内存数据库,来支持实时 应用的快速访问。 内存数据库系统(Main Memory Database System,简称MMDBS)是DTS系统的一 个重要组成部分,它对整个DTS系统的实时数据进行存储和管理并且为其它核心模 块提供数据通信支持。内存数据库系统高效、稳定的工作是整个DTS系统能够快速、 高效运行的决定性因素。 1.1.2 DTS 系统简介 电网调度员培训仿真系统(DTS)是一套运用先进计算机技术模拟电网运行的数 字仿真系统2。 DTS系统的硬件结构如下图:
14、 2 交换机调度实时系统 交换机 防火墙 学员台学员台 教员台数据库服务器 大屏幕投影议 图1- 1 DTS系统硬件结构图 DTS系统的软件结构如下图: 学员台 S C A D A / E M S 实时系统图形编辑器电力系统模型 教员台 网 络 通 信 数 据 库 模 块 图1- 2 DTS系统软件结构图 DTS系统通常由以下几个模块组成: (1)数据库管理模型(Database Management System,简称DBMS): DBMS分为两个部分,历史数据库模块和实时内存数据库模块。其中历史数据库 模块主要存储电网中各种静态数据,为其他模块提供各种静态参数。实时内存数据 库模块对整个D
15、TS的实时数据进行存储和管理并且为其它核心模块提供实时数据通 信支持。 3 (2)电力系统模型(Power System Model,简称PSM): PSM 主要功能是模拟电力系统网络及各种设备的静态和动态响应,包括发电机 组、输电线路、负荷、变压器和继电器等。 (3 )控制中心模型 (Control Center Model,简称 CCM): CCM 主要功能是模拟实际控制中心的界面运行环境,是培训模拟器中学员所面 对的环境。 (4 )培训支持功能 (Training Support Function,简称 TSF): TSF 即教员台模块,其主要功能是监视和控制培训过程,包括初始化和调整控
16、 制、设置事件序列、与学员台通信及干预培训进程等。 1.2 DTS 内存数据库研究现状 1.2.1 内存数据库概述 内存数据库是支持实时事务的最佳技术,其本质特征是其“主拷贝”或“工作 版本”常驻内存,即活动事务只与实时内存数据库的内存拷贝打交道。显然,它要 求较大的内存量(根据不同的数据量所需的内存量也不相同), 但并不要求任何时刻整 个数据库都能存放在内存,而是将要处理的数据根据相关规则放到内存中,即内存 数据库系统还是要通过 I/O 来传输数据。尽管如此,但它已不是传统磁盘数据库的概 念,所以传统数据库适用的数据结构、事务处理算法与优化、并发控制及恢复等技 术对内存数据库不一定合适。特别是在处理巨量数据的实时性方面,由于其数据及 事务事务处理不涉及 I/O。内存数据库体现出其巨大的处理效率