论文部分内容阅读
工业4.0和工业物联网技术正在许多领域迅速推动数据数字化,能源领域就是之一。能源数据来源多元化,比如电能、风能、太阳能等等可再生能源,这些数据不仅类型多样性,结构复杂,而且数据量一直在快速的增加。海量数据数字化的过程中,出现了No SQL数据库。No SQL数据库具有弱结构化存储,易扩展,可伸缩,高并发的特点,适合用于海量能源数据的存储。但是能源数据不合理的存储方式会导致数据冗余、存储空间浪费、数据难利用等问题。在此背景下,本文针对能源大数据的类型采用不同的框架,并针对负载均衡,缓存策略、数据一致性等分布式存储技术进行了深入的研究。本文的主要工作如下:(1)针对HBase负载不均衡的问题,提出一种基于Region和Region Server的全局性负载均衡算法。通过对Region进行预分区和执行带虚拟节点一致性哈希算法来生成Rowkey,对Region Server采用贪心算法进行定期负载均衡的方式,以提高HBase的读写性能。实验表明,相对于HBase内嵌的负载均衡算法,新的算法的能够明显提升HBase的数据写入性能,并使集群负载更均衡。(2)针对HBase自身没有针对查询频率的缓存算法的不足,设计采用Redis作为数据缓存层,协处理器保证数据写入一致性的策略,并提出一种基于时间平滑法的更新频率和查询频率的缓存替换算法,通过衡量历史数据对当前数据的影响,可以有效提高缓存的命中率,并提高数据查询的性能。实验表明,相对于原有的缓存算法,缓存命中率和查询效率均得到了有效的提升。(3)针对Fast DFS缺乏缓存设计的问题,设计基于Redis的压缩缓存策略。由于Redis的存储格式是以字符串的形式存储的,无法直接存储文件,采用Base64和Gzip对缓存在Redis中的文件进行压缩,提高Redis的空间利用率。根据能源文件以上传和查询居多的特点,提出一种基于时间平滑法的查询频率热度值缓存替换算法,以提高文件查询的效率和缓存命中率。实验表明,相较于Fast DFS的原生实现,应用新的策略和算法后,文件的查询速度、缓存命中率、空间利用率均得到了显著提高。(4)综合前述工作,设计了一个面向能源大数据的分布式存储中间件,采用HBase和Redis存储结构化数据,采用Fast DFS和Redis存储文件数据,并且对外提供统一的查询接口。