论文部分内容阅读
互联网技术的发展和广泛应用导致产生了大量的数据,关系型数据库无法满足新兴业务的需求。为了应对海量数据的存储和管理需求,各大厂商或组织纷纷推出了不同的NoSQL存储方案,HBase就是其中著名的方案之一,在各个行业有着非常广泛的应用。在此背景下本文开展了HBase存储方案性能测试方法的研究。首先,本文介绍了NoSQL数据库的兴起和发展过程,回顾了数据库性能测试的研究现状和性能测试的一般过程,发现传统的性能测试方法没有充分的考虑系统架构对性能的影响,而现行的NoSQL数据库系统架构中的一些新特性,如系统的动态调度、数据的多副本存放策略和可配置性对性能都有着极其重要的影响。同时在特定业务中的不同用户行为下,系统的性能也存在着很大的差异。基于此,本文提出了NoSQL数据库系统性能测试的模型,涵盖架构驱动的性能测试和业务驱动的性能测试两个方面,弥补了传统方法的不足,并以HBase为例开展了实践研究。基于架构驱动的性能测试,本文研究了HBase面向列族存储的数据模型、数据的读写过程、数据表的分片式存储和数据的备份存储策略等方面的具体实现方式,分析了其中影响其性能的架构要素,包括同等数据大小下同一列族的单域与多域、单列族和多列族、数据分片的大小以及数据备份因子等,基于这些架构中的性能影响因素分别设计并实现了相应的测试方案,测试了各要素对HBase性能的影响程度。基于业务驱动的性能测试,本文研究了HBase在搜索引擎业务中的性能测试方法。根据搜索引擎业务中用户访问量的变化具有周期性这一特点,本文提出了基于时间序列的潜周期测试模型,并将该模型应用到搜索引擎业务驱动的HBase性能测试上,另外在建模的过程中使用小波技术对异常用户访问量数据进行了过滤。同时为了更加真实的反映HBase在搜索引擎业务中的性能,设计了基于用户行为特征的性能测试方案,并以YCSB测试套件为基础具体实现并验证了这种测试方案。最后,对本文的工作进行了总结,并对将来的工作进行了展望。