关键词:
Java内存数据库
关键技术
索引技术
恢复技术
摘要:
随着互联网行业的发展,实时性和高性能的事务处理逐渐成为应用程序和管理系统的追求方向,作为在其中扮演重要角色的数据库是否具有高性能和实时性的特质显得尤为重要,和传统的磁盘型数据库相比,内存数据库的优势逐渐显露。Java是目前使用最广泛的编程语言,Java项目占据市场很大的份额,因此有必要对Java内存数据库进行研究。本文作者通过大量的文献阅读和对国内外研究现状的分析发现目前Java内存数据库的关键技术存在一些优化改进的空间,它们影响着Java内存数据库的整体性能。通过对这些关键技术进行分析,本文选取了Java内存数据库关键技术中的索引技术和恢复技术进行了改进优化。首先,针对索引技术优化,本文提出了一种改进的CSB+树索引结构,通过节点内分区扩大节点容量来解决CSB+树存在的问题,并给出了该索引结构的主要操作算法;其次,在对Java内存数据库关键点恢复技术分析的过程中,本文提出了一种日志驱动检查点改进算法,用于减少日志的产生数量,弥补了日志驱动检查点算法频繁访问磁盘降低数据库性能的不足;最后,将优化改进后的Java内存数据库应用于实际的Java项目中,与磁盘型数据库相互配合使用。经过优化性能分析表明,本文提出的Java内存数据库索引结构改进的CSB+树在保持了CSB+树缓存敏感性的同时,降低了TLB失配次数,和原索引结构相比具有更好的查询性能;针对恢复技术提出的日志驱动检查点改进算法和原算法相比降低了日志的产生数量,减少大量的无效磁盘数据更新,提高了Java内存数据库整体的时间效率;对于实时性较高和事务吞吐量较大的功能应用Java内存数据库可以令数据操作时所消耗的时间较改进之前减少30%左右。