一种海量文件的数据收集处理方法及系统技术方案

技术编号:15192052 阅读:314 留言:0更新日期:2017-04-20 10:13
本发明专利技术公开了一种海量文件的数据收集处理方法,包括以下步骤:S10、利用数据收集系统分布式收集海量文件中的子文本数据;S20、内容分发网络将子文本数据发送给分布式web服务器;S30、当子文本数据为非解析类时,利用分布式web服务器,将子文本数据上传至hadoop的开源数据库;S40、当子文本数据为解析类时,利用分布式web服务器,将解析后的子文本数据收集到本地文件池;S60、利用本地分布式文件系统将本地文件池内累加得到的文本数据上传至hadoop的云端分布式文件系统。本发明专利技术利用内容分发网络向web服务器发送子文本数据;及时对收集到的子文本数据进行疏通处理,以防止收集端出现堵塞。

【技术实现步骤摘要】

本专利技术属于数据提取
,尤其涉及海量文件的数据收集处理方法及系统。
技术介绍
在互联网飞速发展的今天,对用户在使用网络资源时所表现出来的规律、个性化的习惯进行分析(也称用户行为分析)后;提取并了解到用户的兴趣。一方面,可以对用户个性化定制与推送,为网站访问者提供更加主动的、智能化的服务。另一方面,从用户行为的不同表现,发现其兴趣和偏好,可以优化页面之间组织关系,完善网站系统架构,从而减轻用户寻找信息的负担,使其操作更加简单,节约时间和精力。在对用户行为进行分析时,一般在线用户数量庞大,其产生的实时行为和上下文信息量巨大,尤其是海量小文件;小文件是指几K到几百K之间的文件,例如5K到600K之间的文件。然而,现有技术中,存在收集端不能对海量小文件中的文本数据进行及时处理等缺陷;从而导致收集端出现拥堵,进而使得海量小文件的文本数据收集处理收到限制。
技术实现思路
本专利技术提供的技术方案如下:本专利技术提供一种海量文件的数据收集处理方法,包括以下步骤:S10、利用数据收集系统flume分布式收集海量文件中的子文本数据;S20、内容分发网络CDN将所述子文本数据发送给分布式web服务器;S30、当所述子文本数据的解析类型为非解析类时,利用分布式web服务器,将所述子文本数据上传至hadoop的开源数据库HBASE;S40、当所述子文本数据的解析类型为解析类时,利用分布式web服务器,将解析后的子文本数据收集到本地文件池;S60、利用本地分布式文件系统hdfs2将所述本地文件池内累加得到的文本数据上传至hadoop的云端分布式文件系统hdfs1。进一步,所述步骤S20进一步包括:S21、所述内容分发网络CDN通过反向代理服务器Nginx将所述子文本数据发送给所述分布式web服务器;多个反向代理服务器用于平衡各分布式Web服务器间的网络负载。进一步,在所述步骤S60之前还包括:S50、对所述本地文件池内的子文本数据进行提取、清洗;S51、按照所述云端分布式文件系统hdfs1的块的大小,对所述子文本数据进行累加合并成文本数据。进一步,所述步骤S50进一步包括:S501、提取所述子文本数据的文件名中的路由器MAC和时间戳;S502、识别出所述路由器MAC和时间戳是否遇到乱码;S503、当所述路由器MAC和时间戳遇到乱码时,对所述乱码进行清洗后,跳转至步骤S51;否则,直接跳转至步骤S51。进一步,还包括以下步骤:S70、所述数据仓库工具hive向开源计算框架TEZ发送计算请求;S71、所述开源计算框架TEZ对所述文本数据进行压缩编码处理成压缩文本数据,并存储在所述云端分布式文件系统hdfs1的数据库中。进一步,在所述步骤S10之前还包括:S01、搭建Hadoop的集群环境,并配置所述数据仓库工具hive、云端分布式文件系统hdfs1、本地分布式文件系统hdfs2;S02、在所述集群环境中各节点处搭建web服务器分布式集群,并添加负载均衡;S03、实现所述数据仓库工具hive、云端分布式文件系统hdfs1、本地分布式文件系统hdfs2的建表关联。进一步,在所述步骤S01进一步包括:S011、在Hadoop上搭建第一预设个数的主节点master、第二预设个数的从节点slave;各个主节点master之间相互连接,每个主节点master分别与各个从节点slave相连。进一步,所述步骤S01进一步还包括:S012、每个主节点master上组建有元数据服务组件metastore、关系数据库mysql。本专利技术还提供一种海量文件的数据收集处理系统,包括:数据收集系统flume,利用数据收集系统flume分布式收集海量文件中的子文本数据;内容分发网络CDN,内容分发网络CDN将所述子文本数据发送给分布式web服务器;分布式web服务器,当所述子文本数据的解析类型为非解析类时,利用分布式web服务器,将所述子文本数据上传至hadoop的开源数据库HBASE;分布式web服务器,当所述子文本数据的解析类型为解析类时,利用分布式web服务器,将解析后的子文本数据收集到本地文件池;本地分布式文件系统hdfs2,利用本地分布式文件系统hdfs2将所述本地文件池内累加得到的文本数据上传至hadoop的云端分布式文件系统hdfs1。进一步,还包括:反向代理服务器Nginx,所述内容分发网络CDN通过反向代理服务器Nginx将所述子文本数据发送给所述分布式web服务器;多个反向代理服务器用于平衡各分布式Web服务器间的网络负载。与现有技术相比,本专利技术提供的海量文件的数据收集处理方法及系统,具有以下有益效果:1)本专利技术中在大数据应用场景下,收集海量子文本数据,利用内容分发网络向web服务器发送子文本数据;若需要对子文本数据进行解析,利用web服务器将解析后的子文本数据收集到本地文件池中后,上传至云端分布式文件系统中;若无需对子文本数据进行解析,将子文本数据传输至开源数据库中;及时对收集到的子文本数据进行疏通处理,以防止收集端出现堵塞。2)本专利技术中通过反向代理服务器传输子文本数据,有助于高速缓存子文本数据;可以平衡各web服务器间的网络负载;从而防止因某个web服务器上子文本数据过多而导致web服务器崩溃。3)本专利技术中按照云端分布式文件系统的块的大小,将子文本数据合并成文本数据后上传;不仅可以减少占用空间,还能防止文本数据过大,给分布式文件系统造成堵塞。4)本专利技术中对文本数据进行压缩编码处理,压缩后的文本数据可以减小占用空间,有效地解决了本地关系数据库的资源消耗问题和内存问题;编码后的文本数据有利于提高数据的读取或提取效率。5)本专利技术中在文本数据的文件名中提取进行路由器MAC和时间戳,当遇到乱码时,对其进行清洗;防止文本数据在收集处理过程中发生错乱。具体实施方式为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将说明本专利技术的具体实施方式。显而易见地,下面描述中的仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以获得其他的实施方式。根据本专利技术的一个实施例,一种海量文件的数据收集处理方法,包括以下步骤:S10、利用数据收集系统flume分布式收集海量文件中的子文本数据;海量文件包括海量小文件;S20、根据每个分布web服务器上的网络负载,内容分发网络CDN将所述子文本数据发送给分布式web服务器;优选的,S21、所述内容分发网络CDN通过反向代理服务器Nginx将所述子文本数据发送给所述分布式web服务器;多个反向代理服务器用于平衡各分布式Web服务器间的网络负载。S30、当所述子文本数据的解析类型为非解析类时,也即无需对子文本数据进行处理,利用分布式web服务器,或者,分布式web服务器将子文本数据发送至本地分布式文件系统,再利用本地分布式文件系统;将所述子文本数据上传至hadoop的开源数据库HBASE;hadoop是分布式系统基础构架。S40、当所述子文本数据的解析类型为解析类时,也即需要对子文本数据进行进一步处理,例如从子文本数据中提取关键词等,从而分析出用户访问的数据类型及频率;利用分布式web服务器,将解析后的子文本数据收集到本地文件池;S60、利用本地分布式文件系统hdfs2,将所述本地文本文档来自技高网...
一种海量文件的数据收集处理方法及系统

【技术保护点】
一种海量文件的数据收集处理方法,其特征在于,包括以下步骤:S10、利用数据收集系统flume分布式收集海量文件中的子文本数据;S20、内容分发网络CDN将所述子文本数据发送给分布式web服务器;S30、当所述子文本数据的解析类型为非解析类时,利用分布式web服务器,将所述子文本数据上传至hadoop的开源数据库HBASE;S40、当所述子文本数据的解析类型为解析类时,利用分布式web服务器,将解析后的子文本数据收集到本地文件池;S60、利用本地分布式文件系统hdfs2将所述本地文件池内累加得到的文本数据上传至hadoop的云端分布式文件系统hdfs1。

【技术特征摘要】
1.一种海量文件的数据收集处理方法,其特征在于,包括以下步骤:S10、利用数据收集系统flume分布式收集海量文件中的子文本数据;S20、内容分发网络CDN将所述子文本数据发送给分布式web服务器;S30、当所述子文本数据的解析类型为非解析类时,利用分布式web服务器,将所述子文本数据上传至hadoop的开源数据库HBASE;S40、当所述子文本数据的解析类型为解析类时,利用分布式web服务器,将解析后的子文本数据收集到本地文件池;S60、利用本地分布式文件系统hdfs2将所述本地文件池内累加得到的文本数据上传至hadoop的云端分布式文件系统hdfs1。2.如权利要求1所述的海量文件的数据收集处理方法,其特征在于,所述步骤S20进一步包括:S21、所述内容分发网络CDN通过反向代理服务器Nginx将所述子文本数据发送给所述分布式web服务器;多个反向代理服务器用于平衡各分布式Web服务器间的网络负载。3.如权利要求1所述的海量文件的数据收集处理方法,其特征在于,在所述步骤S60之前还包括:S50、对所述本地文件池内的子文本数据进行提取、清洗;S51、按照所述云端分布式文件系统hdfs1的块的大小,对所述子文本数据进行累加合并成文本数据。4.如权利要求3所述的海量文件的数据收集处理方法,其特征在于,所述步骤S50进一步包括:S501、提取所述子文本数据的文件名中的路由器MAC和时间戳;S502、识别出所述路由器MAC和时间戳是否遇到乱码;S503、当所述路由器MAC和时间戳遇到乱码时,对所述乱码进行清洗后,跳转至步骤S51;否则,直接跳转至步骤S51。5.如权利要求1所述的海量文件的数据收集处理方法,其特征在于,还包括以下步骤:S70、所述数据仓库工具hive向开源计算框架TEZ发送计算请求;S71、所述开源计算框架TEZ对所述文本数据进行压缩编码处理成压缩文本数据,并存储在所述云端分布式文件系统hdfs1的数据库中。6.如权利要求1~5中任意一项所述的海量文件的数据收集处理方法,其特征在于,在...

【专利技术属性】
技术研发人员:欧阳涛
申请(专利权)人:上海斐讯数据通信技术有限公司
类型:发明
国别省市:上海;31

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

1