节点文献

OSS中嵌入式内存数据库研究

Research on Embedded Main Memory Database in OSS

【作者】 万鹏

【导师】 王鸿鹏;

【作者基本信息】 哈尔滨工业大学 , 计算机科学与技术, 2008, 硕士

【摘要】 数据库作为一种高效的组织和管理数据的软件,过去一直是以磁盘作为存储介质,随着嵌入式软件技术的发展和内存容量的大幅度提高,嵌入式内存数据库应运而生。嵌入式内存数据库系统的数据永久驻留在内存中,而常规的磁盘数据库系统的数据主要驻留在磁盘等机械读取设备中,所以内存数据库访问数据比磁盘数据库有更高的效率。在通信领域,随着人们需求的发展,出现了很多业务数据短小但业务量急速增大同时又对交换速度要求很高的通信业务,如手机短信等。面对这些新设备和新业务,基于电信领域OSS(Operation Support System)的嵌入式内存数据库技术有了一个很好的展示自己的舞台。嵌入式内存数据库系统通过其快速的数据访问能力,比磁盘数据库更适合于需要快速响应和高事务吞吐量的电信领域,对于需要在严格要求的时间内完成数据访问的实时电信系统,嵌入式内存数据库系统是一个理想的选择。如今嵌入式内存数据库技术越来越受到人们的关注和研究。近年来,随着计算机芯片技术的不断改进,中央处理器的速度和主存速度之间的差距逐渐扩大,系统对主存的存取访问成为新的瓶颈。Cache是一种容量非常小、但速度非常快的静态存储器,设置在CPU和主存之间。由于cache中保存着主存中最常使用的数据和指令,因此可以有效地减少CPU的等待时间。命中率越高,CPU的运算效率就越高。命中率对数据库系统索引结构的性能影响非常大,尤其是对嵌入式内存数据库索引结构的性能,更是至关重要。本文在大量阅读内存数据库和磁盘数据库相关技术资料的基础上,首先研究了缓存的时间局部性和数据空间局部性结合的原理,采用局部冲突链的方法,提出了缓存敏感的散列结构,建立局部冲突链处理散列表,并研究分析了其性能;其次根据嵌入式系统事务特性,分析事务处理方法,设计了函数调用级事务处理方案,减少了事务处理中进程交互,加快了事务处理速度;接下来设计了自主调度锁系统,解决在OSS系统中信号量会阻塞一组进程的问题,实现了快速的锁系统,并兼顾了优先级和时间公平性;最后改进了优先级位图方法,增加了cache利用率,对于嵌入式系统有更优的效率。

【Abstract】 As a kind of highly efficient organization and managerial data software, the database has been based on disk as the storage medium traditionally. With the development of the embedded software technology and the enhancement of the memory’s capacity, the embedded memory database arised at the historic moment. The data in embedded memory database system stays in memory permanently, but the data in conventional disk database system stays in the disk or other mechanical device mainly, therefore the efficiency for accessing data of memory database is higher than the disk database. In the correspondence domain, along with the people’s demands development, there were a lot of communications services which had short datas, large amount and high request of transfer speed appeared, such as short messages and so on. Facing these new devices and new services, the embedded memory database based on telecommunication domain OSS (Operation Support System) had a very good stage to display their own area. Because of the faster ability to access data, the embedded memory database system is more suitable in telecommunication domain which needs fast response and high-throughput than disk database system. Embedded memory database system is an good choice regards of the real-time telecommunications system which needs the strict data access time. Now the embedded memory database technology is receiving more attention and research.In recent years, along with the improvement of computer chip technology and the disparity expanding gradually between CPU and memory, the access to memory becomes a new bottleneck. Cache is a kind of static memory which has very small capacity and fast speed and it is set in between the CPU and memory. As the cache keeps the most commonly used data and instruction in the memory, it can reduce the waiting time of the CPU effectively. The higher of the cache hits, the higher efficiency of the CPU is. Percentage of the cache hits has a large effect on the performance of the database system’s index structure, especially on the performance of the embedded memory database’s index structure.Researching a large number of technology information about memory database and disk database, firstly I studied the principle based on the combination of the cache’s local time and the data’s local space, used local conflict chain, presented cache sensitive hash structure, bulit local conflict chain hash and analysed its performance. Secondly, based on the characteristics of embedded system’s transaction, I analysed the method for processing transactions, designed the function call-level transaction processing programs which reduced the process interactions in transaction and speeded up the transaction’s processing speed. Then I designed self-scheduling lock system which solved the problem blocking a set of processes in OSS system, achieved a fast lock system and taked into account the priorities and fairness of the time. Finally, I gived a optimized bitmap ways to increase the utilization rate of cache which has better efficiency in embedded systems.

【关键词】 散列事务信号量缓存优先级
【Key words】 HashTransactionSemaphoreCachePriorit
节点文献中: