基于Hadoop的饮用水海量数据存储管理方法和系统技术方案

技术编号:20044977 阅读:32 留言:0更新日期:2019-01-09 04:10
本发明专利技术公开了基于Hadoop的饮用水海量数据存储管理方法,包括以下步骤:将实时属性数据存入区域服务器,将区域服务器中的实时属性数据迁移Kafka集群中,并进行数据清洗,将清洗后的实时属性数据存入Hadoop集群中;将Hadoop集群中的实时属性数据根据属性进行第二次分类,将分类后的实时属性数据合并成大文件并生成索引文件;将合并后的大文件和索引文件存入Hadoop集群中。本发明专利技术对小文件的实时属性数据根据产生地域、时间后先做一次分类,然后再根据数据的元素类型再做一次分类,最后进行合并存储,这样大大减少了内存的消耗,提高了平台的性能。

【技术实现步骤摘要】
基于Hadoop的饮用水海量数据存储管理方法和系统
本专利技术涉及计算机应用领域,特别涉及基于Hadoop的饮用水海量数据存储管理方法和系统。
技术介绍
随着社会的进步,在当今科技水平高速发展,特别是物联网、电子技术兴起的环境下,人们对农村饮用水水质的监测已经可达到在线的、实时性的监测,监测数据的产生也是毫秒级的。农村饮用水在线监控系统后台使用的存储工具主要以关系型数据为主,这类数据库在处理大量数据时,其数据吞吐性能并不十分优越,并且由于其扩展性能差,在管理分散数据时显得尤为无力。Hadoop分布式平台则能很好解决关系型数据库在数据吞吐性能和扩展性能等方面的不足,但是Hadoop平台的操作具有高延迟性,并不能适应实时数据可视化的场景。此外,传统的Hadoop平台在数据副本管理上采用三个副本静态管理策略,并不适应饮用水数据这种小文件数据多、对数据访问存在明显地域性或者时间性等特点。综上,行业内急需一种既能解决传统饮用水数据存储平台使用的关系型数据库在遇到海量数据时吞吐性和扩展性不足,又能解决传统Hadoop分布式平台不能满足饮用水实时数据可视化的问题的饮用水海量数据存储管理方法。
技术实现思路
本专利技术针对目前饮用水数据平台遇到海量数据时吞吐性和扩展性不足,以及数据存储和管理策略等方面的问题,具体来说解决以下几个问题:1)目前饮用水数据平台所使用的关系型数据库在处理海量数据时吞吐量和扩张性能差,而分布式平台又无法满足实时数据可视化的需求这两者之间的矛盾。2)由于饮用水数据存在大量的小文件,在存储时对Hadoop名称节点内存消耗过高,这会使得Hadoop集群的性能非常差。3)客户端在访问饮用水数据时具有比较强的倾向性,例如客户端会在夏季时期频繁访问往年夏季的数据等,但是无论是频繁访问或者是访问量小的文件,文件副本的数据是静态不变的,这就使得访问数据访问热度高的文件时,访问的性能非常差。本专利技术所采用的技术方案为:基于Hadoop的饮用水海量数据存储管理方法,包括以下步骤:对饮用水海量数据进行第一次分类,得到实时属性数据和非结构化数据;其中,所述实时属性数据为小文件,所述小文件的大小不超过预先设置的块大小;将实时属性数据存入区域服务器,将非结构化数据存入Hadoop集群;将区域服务器中的实时属性数据迁移Kafka集群中,并进行数据清洗,将清洗后的实时属性数据存入Hadoop集群中;将Hadoop集群中的实时属性数据根据属性进行第二次分类,将分类后的实时属性数据合并成大文件并生成索引文件;所述大文件的大小超过预先设置的块大小;将合并后的大文件和索引文件存入Hadoop集群中。优选地,所述将Hadoop集群中的实时属性数据根据属性进行第二次分类包括:将Hadoop集群中的实时属性数据按照产生时间和产生地域进行分类;将Hadoop集群中的实时属性数据按照检测元素类型进行分类。优选地,所述将Hadoop集群中的实时属性数据按照检测元素类型进行分类包括:将所述实时属性数据中的重金属数据归位一类;将所述实时属性数据中的PH数据归位一类。优选地,所述将合并后的大文件和索引文件存入Hadoop集群中之后还包括:基于饮用水海量数据访问的热度调整数据副本数量;基于饮用水海量数据访问的热度调整数据副本数量包括:计算Hadoop集群中文件的访问频率;根据所述访问频率计算出所述文件的访问热度;根据所述访问热度统计出文件存储副本的数量。优选地,所述计算Hadoop集群中文件的访问频率包括:当接收到客户端访问Hadoop中的文件时,动态副本管理模块记录文件的访问次数加一;根据原先设定的统计周期,算出所述统计周期内所述文件的访问频率;根据所述访问频率计算出所述文件的访问热度包括:根据连续多个统计周期的文件访问频率计算出该文件的访问热度。优选地,所述计算Hadoop集群中文件的访问频率包括:预先在文件统计周期计时器上设定文件统计周期T,结合文件访问次数记录模块记录的文件访问次数,每个文件统计周期T计算一次文件的访问频率;其中文件访问次数记录起始值是0,文件每访问一次加一,一个周期进行一次清空;用f表示文件访问的频率,计算公式如下:其中k表示文件第k个周期,n表示k周期内文件访问的次数,T表示一个周期;fk表示文件第k个周期的访问频率;根据所述访问频率计算出所述文件的访问热度的计算公式如下:Fi=[α1α2α3...αM][f1f2f3...fM]T其中Fi表示文件热度,αi表示第i个周期的文件访问频率的影响系数,α的所有取值相加为1,fi表示第i个周期的文件访问频率,M所要得出的当前周期的前M个周期;假设用Qij表示i文件在j周期内文本的需求值,根据所述访问热度计算出文件存储副本的数量的计算公式如下:Qij=γ.F′j其中F′j=tan-1Fj*2/π,Fj表示i文件在j周期内的文件访问频率,F′j表示对Fj使用反正切归一化处理后所得的结果,从而达到文件访问热度越大,需求量越大的需要,γ表示i文件访问热度对副本数量的影响。优选地,所述根据原先设定的统计周期,算出所述统计周期内所述文件的访问频率还包括:统计文件访问的客户端的聚集程度;根据所述聚集程度对比文件存储副本放置的位置。基于Hadoop的饮用水海量数据存储管理系统,包括:第一次分类模块、数据存入模块、数据清洗模块、第二次分类模块和索引文件存入模块;所述第一次分类模块,用于对饮用水海量数据进行第一次分类,得到实时属性数据和非结构化数据;其中,所述实时属性数据为小文件,所述小文件的大小不超过预先设置的块大小;所述数据存入模,用于将实时属性数据存入区域服务器,将非结构化数据存入Hadoop集群;所述数据清洗模块,用于将区域服务器中的实时属性数据迁移Kafka集群中,并进行数据清洗,将清洗后的实时属性数据存入Hadoop集群中;所述第二次分类模块,用于将Hadoop集群中的实时属性数据根据属性进行第二次分类,将分类后的实时属性数据合并成大文件并生成索引文件;所述大文件的大小超过预先设置的块大小;所述索引文件存入模块,用于将合并后的大文件和索引文件存入Hadoop集群中。优选地,所述第二次分类模块包括:时间地域分类单元和元素类型单元;所述时间地域分类单元,用于将Hadoop集群中的实时属性数据按照产生时间和产生地域进行分类;所述元素类型单元,用于将Hadoop集群中的实时属性数据按照检测元素类型进行分类。优选地,还包括:副本数量调整模块;所述副本数量调整模块,用于基于饮用水海量数据访问的热度调整数据副本数量;所述副本数量调整模块包括:访问频率计算单元、访问热度计算单元和文件存储副本数量统计单元;所述访问频率计算单元,用于计算Hadoop集群中文件的访问频率;所述访问热度计算单元,用于根据所述访问频率计算出所述文件的访问热度;所述文件存储副本数量统计单元,用于根据所述访问热度统计出文件存储副本的数量。本专利技术的有益效果为:本专利技术根据来自各个监控区域采集终端实时采集的所在区域的农村饮用水数据的文件大小选择存储的方式,把文件大小超过所设置的块大小的非结构化数据直接存入Hadoop集群中;而小于块大小的实时属性数据根据属性进行第二次分类,将分类后的文件合并成一个大文件并生成索引文件,然后存入Hadoop本文档来自技高网...

【技术保护点】
1.基于Hadoop的饮用水海量数据存储管理方法,其特征在于,包括以下步骤:对饮用水海量数据进行第一次分类,得到实时属性数据和非结构化数据;其中,所述实时属性数据为小文件,所述小文件的大小不超过预先设置的块大小;将实时属性数据存入区域服务器,将非结构化数据存入Hadoop集群;将区域服务器中的实时属性数据迁移Kafka集群中,并进行数据清洗,将清洗后的实时属性数据存入Hadoop集群中;将Hadoop集群中的实时属性数据根据属性进行第二次分类,将分类后的实时属性数据合并成大文件并生成索引文件;所述大文件的大小超过预先设置的块大小;将合并后的大文件和索引文件存入Hadoop集群中。

【技术特征摘要】
1.基于Hadoop的饮用水海量数据存储管理方法,其特征在于,包括以下步骤:对饮用水海量数据进行第一次分类,得到实时属性数据和非结构化数据;其中,所述实时属性数据为小文件,所述小文件的大小不超过预先设置的块大小;将实时属性数据存入区域服务器,将非结构化数据存入Hadoop集群;将区域服务器中的实时属性数据迁移Kafka集群中,并进行数据清洗,将清洗后的实时属性数据存入Hadoop集群中;将Hadoop集群中的实时属性数据根据属性进行第二次分类,将分类后的实时属性数据合并成大文件并生成索引文件;所述大文件的大小超过预先设置的块大小;将合并后的大文件和索引文件存入Hadoop集群中。2.根据权利要求1所述的基于Hadoop的饮用水海量数据存储管理方法,其特征在于,所述将Hadoop集群中的实时属性数据根据属性进行第二次分类包括:将Hadoop集群中的实时属性数据按照产生时间和产生地域进行分类;将Hadoop集群中的实时属性数据按照检测元素类型进行分类。3.根据权利要求2所述的基于Hadoop的饮用水海量数据存储管理方法,其特征在于,所述将Hadoop集群中的实时属性数据按照检测元素类型进行分类包括:将所述实时属性数据中的重金属数据归位一类;将所述实时属性数据中的PH数据归位一类。4.根据权利要求1所述的基于Hadoop的饮用水海量数据存储管理方法,其特征在于,所述将合并后的大文件和索引文件存入Hadoop集群中之后还包括:基于饮用水海量数据访问的热度调整数据副本数量;基于饮用水海量数据访问的热度调整数据副本数量包括:计算Hadoop集群中文件的访问频率;根据所述访问频率计算出所述文件的访问热度;根据所述访问热度统计出文件存储副本的数量。5.根据权利要求4所述的基于Hadoop的饮用水海量数据存储管理方法,其特征在于,所述计算Hadoop集群中文件的访问频率包括:当接收到客户端访问Hadoop中的文件时,动态副本管理模块记录文件的访问次数加一;根据原先设定的统计周期,算出所述统计周期内所述文件的访问频率;根据所述访问频率计算出所述文件的访问热度包括:根据连续多个统计周期的文件访问频率计算出该文件的访问热度。6.根据权利要求5所述的基于Hadoop的饮用水海量数据存储管理方法,其特征在于,所述计算Hadoop集群中文件的访问频率包括:预先在文件统计周期计时器上设定文件统计周期T,结合文件访问次数记录模块记录的文件访问次数,每个文件统计周期T计算一次文件的访问频率;其中文件访问次数记录起始值是0,文件每访问一次加一,一个周期进行一次清空;用f表示文件访问的频率,计算公式如下:其中k表示文件第k个周期,n表示k周期内文件访问的次数,T表示一个周期;fk表示文件第k个周期的访问频率;根据所述访问频率计算出所述文件的访问热度...

【专利技术属性】
技术研发人员:王卫星杨伟志林泽鑫殷惠莉姜晟余杰平黄仲强姜冰
申请(专利权)人:华南农业大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1