用户名: 密码: 验证码:
主存数据库技术研究及一个原型系统的构造
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
主存数据库是数据库技术的一个分支,一般指将整个数据库存放于主存之中,通过简化操作、精简代码来缩短系统的响应时间,增加系统的吞吐量。它特别适用于一大类实时应用系统。传统的基于硬盘的数据库即使全部放入主存中也不是主存数据库,因为这些数据库系统是针对磁盘特性进行设计的,而非针对内存特性设计的。执行同样的操作,两者有很大的差别,主存数据库比使用大内存的传统数据库系统响应速度要快很多。
    本文在对主存数据库技术进行学习与探讨的基础上,给出了一个主存数据库系统的原型。在该原型系统中实现对于数据库结构的定义、对象存储格式定义,日志类型、日志记录格式的定义,以及数据库对象标识OID的分配管理等。在该原型系统中着重对主存数据库系统中基于日志的恢复及T树的实现技术展开工作。
    WAL(Write Ahead Logging)是指当执行检查点时,相应的日志记录刷新到稳定存储器前,不允许对数据库做实际的更新。WAL使编码复杂,对于系统的性能影响很大。原型系统中实现了乒乓检查点策略,使得该系统不受WAL规则约束,更易于实现,代码更精简,操作执行时间更短。
    T树是主存数据库技术中重要的索引树结构,原型系统中不但使用T树来做索引结构而且采用T树进行数据库自由空间管理。
    另外,原型系统中采用了原子操作、混合日志、数据库空间伪释放、成组提交、两趟扫描恢复、同步加载等方面的技术。在本文的最后给出了对该原型系统性能的简单测试与分析。
Main memory DBMS is a branch of DBMS technologies. It decreases the response time, increases the throughput,and adapts to many real-time systems by loading the entire database into memory, simplifying the operations and condensing the code.
    A prototype of MMDB is introduced in this thesis on the basis of research and discussion. Database structure definition, object store structure definition, log record type and structure definition, OID management are realized in this prototype. This paper is focused on the log-based recovery and T tree technologies.
    In the process of checkpoint, WAL(Write-Ahead Logging) rule does not permit updating the database before the corresponding log records having been written into the log file. WAL not only has serious effects on the performance of the database system but also makes coding complex. The Ping-Pang checkpoint algorithm to be realized in this thesis is not confined by the WAL, and it can make the system more efficiently and decrease the system response time remarkably.
    T tree, which is the most significant index structure in MMDB, is used not only as index but also as database free spaces manager in this prototype.
    Moreover, atomic operation, hybrid logging, database spaces pseudo-release policy, group commit, two-way-scan recovery and synchronous database loading algorithm are adopted in this prototype. Simple performance tests and analyses are given in the end of this thesis.
引文
[1] 刘云生等 ,一种实时内存数据库组织与管理方法,计算机研究与发展,1998,35(5)469~473。
    [2] Forouzan Golshani a, Antonio Pizzarello The use of immense memories for database systems: A pragmatic approach. The Journal of Systems and Software 41 (1998) 41~50
    [3] 阳国贵等,主存数据库系统与技术,软件学报,1994,5(3)22~28。
    [4] Tobin J Lehman et al.An evaluation of starburst’s memory resident storage component. IEEE Trans. On Knowledge and Data Engineering, December 1992,4(6):555~566.
    [5] Jun Rao. Kenneth A. Ross. Cache Conscious Indexing for Decision-Support in Main Memory.
    [6] R. Ramarkrishnan. J. Gehrke. Database Management Systems. McGraw-Hill. 2000.
    [7] 卢炎生等,主动实时数据库管理系统研究,华中理工大学学报,1994,22(9):86~89。
    [8] hector G M, Kenneth S. Main memory database system: an overview. IEEE Trans on Knowledge and Data Engineering 1992,4(6):509~516.
    [9] 阳国贵等,主存数据库管理系统GKD-MMDB的研究与实现,计算机研究与发展,1995,32(10)37~44。
    [10] 刘云生、李娟,主存数据库组织的偶图方法,华中理工大学学报,1998,26(26):14~16。
    [11] 徐书华等,大容量GPRS -HLR系统中内存数据库的数据结构组织模式,电讯技术,2001,3,22~26。
    [12] 卢炎生等,一个内存数据库管理系统的数据组织,华中理工大学学报,1999,27(10),64~66。
    [13] 刘云生、许贵平,内存数据库的图论存取方法,计算机学报,2001,24(10)1095~1101。
    [14] 吴绍春、詹业宏,一种内存数据库存取路径的实现方法,广东工业大学学报,1997,14(2)75~78。
    [15] Lehman TJ, Carey M. A study of find index structure for MMDBMS. Proc. Of the 12th International conference on very large database, 1986,2 94~303.
    [16] 卢炎生等,支持主存数据库的T树研究,计算机工程与应用,1993(3):18~21。
    [17] Lehman, T. Jon Design And Performance Evaluation Of A Main Memory Relational Database System (T TREE)(Ph. paper). The University OF Wisconsin – Madison.1987.
    [18] RAJEEV RASTOGI etc. Distributed Multi-Level Recovery in Main-Memory Databases. Distributed and Parallel Databases, 6, 41~71 (1998)
    [19] David B. Lomet MLR: a recovery method for multi-level systems Proceedings of the 1992 ACM SIGMOD international conference on Management of data ?(June?1992)
    [20] Jagadish H V,Silberschatz A,Sudarshan S. Recovering from main- memory lapses[A]. Proc Of the1 9th VLDB Conf[C](Dublin) ,1 993 . 3 91 ~ 40 4.
    [21] Eliezer L evy, Avi Silberschatz. Incremental recovery in main memory database systems. IEEE transaction , 1 992 ,4(6) :529~540.
    [22] 胡国玲、刘云生,内存数据库系统的恢复技术,华中理工大学学报,1996,24(3)35~38。
    [23] Huang, Jing Recovery Techniques In Real-Time Main Memory Databases.(Ph paper) The University Of Oklahoma.1995.
    
    [24] 吴绍春等,内存数据库恢复及其实现机制,江汉石油学院学报,1998,20(2)101~105。
    [25] S.K. Woo, M.H. Kim, Y.J. Lee An effective recovery under fuzzy checkpointing in main memory databases. Information and Software Technology 42 (2000) 185~196
    [26] 宋广华、杨长生,基于混合日志的内存数据库恢复子系统,浙江大学学报 (理学版 ),2001,28(2)164~168。
    [27] Phillip A. Bernstein Vassos Hadzilacos Nathan Goodman. Concurrency Control and Recover in Database System. Addison-Wesley Publishing Company, 1987.
    [28] P. Bohannon. etc .The Architecture of the Dal′y Main-Memory StorageManager. Ultimedia Tools and Applications,1997, 4, 115~151.
    [29] Jun Rao. Advanced query processing in databases.(Ph. paper) COLUMBIA UNIVERSITY.2000
    [30] Le Gruenwald, Margaret H. Eich. MMDB reload algorithms. ACM SIGMOD 1991,20(2)
    [31] 刘云生、李国徽,实时内存数据库的装入,软件学报 2000,11 (6):829~835。
    [32] K.A. Knizhnik. http://www.garret.ru/~knizhnik

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700