集群监控系统中内存数据库的设计与应用研究

来源 :复旦大学 | 被引量 : 0次 | 上传用户:qiuqiuls
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
自上世纪80年代以来,内存数据库相关技术飞速发展并且得到了越来越多的研究和关注。目前应用程序的规模和复杂度不断增加,尤其是大量Web应用的产生和发展,应用系统对于为其提供数据存储功能的数据库系统提出了更高的性能要求。传统的数据库系统是基于磁盘文件进行数据管理的,大量的内外存I/O开销严重影响了系统的整体性能,已经逐渐无法满足日益提高的性能要求。随着半导体价格大幅下跌,利用大量内存来实现内存数据库已经成为可能。由于使用内存作为主要存储介质,避免了内外存交换的大量开销,内存数据库的访问性能远远高于磁盘数据库,为支撑高性能系统提供了新的思路和方案。但是内存数据库由于储存介质的变化,使其在结构、特性和设计实现等诸方面都不同于传统的磁盘数据库,需要针对内存特点重新考虑和研究。在高并发集群监控系统中,一方面,部分数据的增删操作十分频繁,而传统的内存数据库空间管理方法(数组式、区段式、链表式等)在空间申请和回收上有较高的运行开销,在频繁的数据增删请求下,会影响系统的整体性能;另一方面从整体上看,该系统中数据的修改操作数量远小于读取操作的数量,传统的封锁机制要么粒度太粗(如数据库级锁)影响并发度,要么粒度太细(如记录级锁)产生了过高的锁开销和并发控制代价,也会影响到系统的整体表现。本文通过介绍内存数据库的发展、特点、相关概念以及技术,并且结合本人实际项目经验,从内存数据库的数据组织、查询技术与优化、并发控制、事务管理和恢复技术等方面,介绍了一个可以用于高并发实时集群监控系统中的内存数据库系统(LeopardDB)的设计与实现以及基于内存数据库的高并发集群监控系统。根据高并发集群监控系统中部分数据增删频繁和修改/读取事务比例较小的特点,利用内存空间资源动态平衡维护和双粒度锁转换机制,针对内存空间管理和并发封锁机制分别进行了改进和优化,一方面使得空间资源的申请和回收可以根据数据的使用情况进行自动的合理调整,另一方面允许多个读事务与单个写事务并行操作提高事务吞吐率。通过实际项目中的测试,说明了该内存数据库高实时性,高性能的特点。
其他文献
离群数据是数据挖掘的重要研究内容之一,是发现数据集中明显与其他数据行为不一致的对象,在许多邻域有着广泛的应用,例如:网络入侵检测、信用卡欺诈、天气预报监测等。但随着
随着网络在社会生活中占据越来越重要的地位,恶意蠕虫的危害影响越来越严重,其对社会造成的危害影响程度大大超越传统的病毒。但是传统的对抗恶意蠕虫的安全技术对之已经不适
面向对象软件开发范型中封装、继承、多态等新的高级特性,给面向对象的软件开发带来了重用性、灵活性、可扩展性等优点,但也给面向对象的软件测试尤其是面向对象软件的集成测
表面贴装器件(Surface Mounted Devices,缩写SMD)是表面黏着技术(Surface Mount Technology,缩写SMT)元器件中的一种。表面贴装元件在大约二十年前推出,并就此开创了一个应用领
无线局域网(WLAN)是一种融合了局域网(LAN)技术和蜂窝网(GSM/GPRS)技术的无线宽带接入方法,由于其具有灵活性和经济性的特点而得到了非常广泛的应用。但是,由于无线信道的开放
软件无线电是将模块化、标准化的硬件单元以总线方式连接构成的基本平台,并通过软件加载实现各种无线通信功能的一种开放式体系结构。但由于在功能的实现上受A/D芯片,D/A芯片的
在各种嵌入式操作系统当中,Linux系统由于具有良好的开源性,可移植、可裁剪以及安全稳定和强大的网络功能等优点,使得Linux系统在嵌入式领域取得了巨大的发展。但是,Linux是一种
微粒群是一种模拟动群体物行为的智能优化算法,同时它也可以模拟人类的社会行为,至今很少有人从人类社会方面来研究微粒群算法。因此本文引入人工社会的思想和个体决策的理论
智能视频监控是当前世界上机器视觉研究领域中的一个热点,它结合人工智能、计算机图形学、模式识别等研究领域的成果,自动地解析视频监控设备采集的视频流,为监控者抽取和提供关
传统的密码学协议大多基于难解性问题假设,如大数分解问题以及离散对数问题等。建立在这些问题上的安全性,我们称之为计算安全性。这意味着,当协议破坏者具有无限的计算资源