论文部分内容阅读
随着互联网时代的来临,数据量迅猛增长,如何合理有效地存储和利用大数据显得尤为重要。针对大数据对于扩展能力及数据格式的需求,业界提出了NoSQL数据库的解决方案。NoSQL采用了分布式的存储架构和无模式的存储格式,以满足存储过程中容量不断增长的需求,同时更加灵活地为用户业务变更提供方便。但是正是由于NoSQL数据库在这些方面的设计调整,减弱了数据在存储过程中的关联性。导致使用NoSQL数据库进行大数据分析时,数据读取速度慢,查询过程更为复杂。针对NoSQL关于数据分析能力的不足,结合Dremel论文提出的嵌套式数据存储格式的思想,本文提出了基于HBase的嵌套式数据存储系统,来解决大数据存储和分析过程中遇到的问题。本文主要工作如下:1)基于HBase的嵌套式数据存储系统采用了HBase原有的分布式存储架构。继承HBase扩展性好、可用性高的特点。使用HMaster对于数据存储系统进行管理操作,利用HRegionServer对于每个子节点上的数据存储进行管理。2)对于HBase按列存储格式进行格式转换。重构HRegion类,添加数据转换模块,将HBase原有列式存储格式转换为嵌套式数据存储格式。利用基于Dremel实现的嵌套式数据存储文件格式Parquet对于数据进行持久化工作。3)实现基于HBase的嵌套式数据存储系统的存储和读取模块。完成基于HBase的嵌套式数据存储系统的读写功能。并强化了读取模块中的查询功能。4)通过数据分析实验验证基于HBase的嵌套式数据存储系统在数据分析过程中的性能提升。利用MapReduce计算框架对存储数据进行分析,其结果显示基于HBase的嵌套式存储系统按列查询性能比原HBase存储系统提升三分之一左右。当存储表中列数目增加时,基于HBase的嵌套式存储系统耗时增加更少。基于HBase的嵌套式数据存储系统可以满足对于大数据读写性能的要求,同时在进行大数据分析的过程中,减少了对于不必要数据的读取开销,降低了磁盘和CPU的损耗,加快了大数据的分析速度。