论文部分内容阅读
随着互联网和移动互联网的飞速发展,数据已经呈现出指数级增长的态势。面对海量数据带来的挑战,国内外各大互联网公司纷纷将云计算的概念应用到商业服务中,并推出了各自的云服务。云服务是将各种计算资源和商业应用程序以互联网为基础提供给用户的服务,这些服务将数据的处理过程从个人计算机或服务器转移到互联网的数据中心,从而减少用户在硬件、软件和专业技能方面的投资。目前云服务已经被广泛应用到各个商业场景中,并发展成为一个非常成熟的商业服务模式。本文基于Hadoop,主要完成以下工作:1,设计并实现针对于云服务的证据保全系统。证据保全系统主要实现以下功能:首先在云服务商与用户之间架设网关服务器,根据云服务商指定的过滤条件获取所有用户对于指定的云服务API的HTTP请求,并提取出用户特征信息。用户特征信息主要包括:用户名称、用户发起请求的时间、用户所在地域、用户请求的云服务API以及云服务API的参数。然后网关将用户特征信息导入到数据分析系统,数据分析系统将按照云服务商指定的数据分析条件对用户特征信息进行分析,分析结果将以报表的形式展示给云服务商,最后数据分析系统将根据云服务商指定的归档条件将用户特征信息归档到存储系统以永久保存。考虑到云服务商的用户基数巨大,证据保全系统所要处理的数据量预计将维持在PB级别,因此证据保全系统将采用云计算平台Hadoop作为数据分析系统和存储系统的底层实现。2,证据保全系统定期根据多种归档条件将用户特征信息归档存储在HDFS(Hadoop分布式文件系统)中。归档操作根据不同的归档条件将用户特征信息划分成大量文件,其中既存在大量文件长度在GB级的大文件,也存在大量KB级的小文件。而HDFS是针对大文件存储而设计的,大量小文件的存储将导致HDFS集群整体性能降低。因此,本文将通过仔细阅读Hadoop源码,分析导致HDFS存储大量小文件后性能降低的原因,并在此基础上提出HDFS客户端聚合索引策略,在客户端对小文件进行聚合并建立索引,以实现对HDFS小文件存储的优化。