一种手机号码的海量提取方法及系统技术方案

技术编号:15197156 阅读:117 留言:0更新日期:2017-04-21 04:43
本发明专利技术公开了一种手机号码的海量提取方法,包括以下步骤:S10、利用分布式web服务器框架,分别将各URL中的子文本数据收集到本地文件池;S20、将所述本地文件池内累加得到的号码文本数据上传至hadoop的云端分布式文件系统hdfs1;S40、利用hadoop的数据仓库工具hive从所述云端分布式文件系统hdfs1内号码文本数据中分布式提取URL的手机号码。本发明专利技术在大数据应用场景下,将各子文本数据汇聚到本地文件池中后,将号码文本数据上传到云端分布式文件系统中,再利用hive进行分布式计算来进行分布式提取;从而实现高效提取海量手机号码,且具有消耗资源低等优点。

Mass extracting method and system for mobile phone number

The extraction method of the invention discloses a mobile phone number of the mass, which comprises the following steps: S10, using a distributed web server framework, respectively sub text data collection in the URL to a local file pool; S20, the number of text data of the local file pool was obtained by adding on to the hdfs1 cloud distributed file system Hadoop; S40, using data warehouse tools hive Hadoop from the cloud distributed file system in the hdfs1 number in the text data extraction URL distributed mobile phone number. The present invention in big data application scenarios, the text data convergence to a local file in the pool, the number of text data uploaded to the cloud distributed file system, then the use of hive for distributed computing to distributed extraction; so as to realize the efficient extraction of massive mobile phone number, and has the advantages of low consumption of resources.

【技术实现步骤摘要】

本专利技术属于数据提取
,尤其涉及手机号码的海量提取方法及系统。
技术介绍
在互联网飞速发展的今天,对用户在使用网络资源时所表现出来的规律、个性化的习惯进行分析(也称用户行为分析)后;提取并了解到用户的兴趣。一方面,可以对用户个性化定制与推送,为网站访问者提供更加主动的、智能化的服务。另一方面,从用户行为的不同表现,发现其兴趣和偏好,可以优化页面之间组织关系,完善网站系统架构,从而减轻用户寻找信息的负担,使其操作更加简单,节约时间和精力。然而,在向用户进行个性化定制与推送时,需要提前知道用户终端的身份信息(手机号码)后,才能向该用户终端推送相关信息。目前,是在用户终端上网时,从URL中提取用户终端的手机号码。由于在线用户数量庞大,直接利用本地关系数据库技术、以及传统的提取方法,会消耗大量资源和内存,并且效率低下,不能很好满足手机号码的海量提取。
技术实现思路
本专利技术提供的技术方案如下:本专利技术提供一种手机号码的海量提取方法,包括以下步骤:S10、利用分布式web服务器框架,分别将各URL中的子文本数据收集到本地文件池;S20、将所述本地文件池内累加得到的号码文本数据上传至hadoop的云端分布式文件系统hdfs1;S40、利用hadoop的数据仓库工具hive从所述云端分布式文件系统hdfs1内号码文本数据中分布式提取URL的手机号码。进一步,所述步骤S20进一步包括:S21、对所述本地文件池内的子文本数据进行提取、清洗后,累加合并成文本数据;S22、判断所述文本数据中是否存在电话号码;S23、当所述文本数据中不存在电话号码时,则对所述文本数据进行过滤检测并删除。进一步,所述步骤S20进一步还包括:S24、当所述文本数据中存在电话号码时,则对所述文本数据中的电话号码进行正则匹配处理;S25、判断所述文本数据中的电话号码是否为新电话号码;S26、当所述电话号码为新电话号码时,则按照所述云端分布式文件系统hdfs1的块的大小,对存在新电话号码的文本数据合并成号码文本数据;S27、利用本地分布式文件系统hdfs2将所述号码文本数据上传至所述云端分布式文件系统hdfs1。进一步,所述步骤S21进一步包括:S211、提取所述子文本数据的文件名中的路由器MAC和时间戳;S212、识别出所述路由器MAC和时间戳是否遇到乱码;S213、当所述路由器MAC和时间戳遇到乱码时,则对所述乱码进行清洗,累加合并成文本数据后,跳转至步骤S22;否则,直接跳转至步骤S22。进一步,还包括以下步骤:S30、所述数据仓库工具hive向开源计算框架TEZ发送计算请求;S31、所述开源计算框架TEZ对所述号码文本数据进行压缩编码处理成压缩文本数据,并存储在所述云端分布式文件系统hdfs1的数据库中。进一步,所述步骤S40进一步包括:S41、利用所述数据仓库工具hive的UDF函数从所述压缩文本数据中提取URL的手机号码。进一步,在所述步骤S10之前还包括:S01、搭建Hadoop的集群环境,并配置所述数据仓库工具hive、云端分布式文件系统hdfs1、本地分布式文件系统hdfs2;S02、在所述集群环境中各节点处搭建web服务器分布式集群,并添加负载均衡;S03、实现所述数据仓库工具hive、云端分布式文件系统hdfs1、本地分布式文件系统hdfs2的建表关联;重构所述数据仓库工具hive的UDF函数。进一步,在所述步骤S01进一步包括:S011、在Hadoop上搭建第一预设个数的主节点master、第二预设个数的从节点slave;各个主节点master之间相互连接,每个主节点master分别与各个从节点slave相连。进一步,所述步骤S01进一步还包括:S012、每个主节点master上组建有元数据服务组件metastore、关系数据库mysql。本专利技术还提供一种手机号码的海量提取系统,包括:分布式web服务器框架,利用分布式web服务器框架,分别将各URL中的子文本数据收集到本地文件池;本地分布式文件系统hdfs2,将所述本地文件池内累加得到的号码文本数据上传至hadoop的云端分布式文件系统hdfs1;数据仓库工具hive,利用hadoop的数据仓库工具hive从所述云端分布式文件系统hdfs1内号码文本数据中分布式提取URL的手机号码。与现有技术相比,本专利技术提供的手机号码的海量提取方法及系统,具有以下有益效果:1)本专利技术中在大数据应用场景下,将各子文本数据汇聚到本地文件池中后,将号码文本数据上传到云端分布式文件系统中,再利用hive进行分布式计算来进行分布式提取;从而实现高效提取海量手机号码,且具有消耗资源低等优点。2)本专利技术中对文本数据进行累加合并成文本数据后;再判断文本数据中是否有电话号码;当文本数据中没有电话号码时,删除文本数据;可防止无效文本书数据过多,降低手机号码提取效率,给分布式文件系统造成堵塞。3)本专利技术中当文本数据中存在手机号码时,按照云端分布式文件系统的块的大小,将该文本数据合并成号码文本数据后上传;从而保证上传到云端分布式系统中的号码文本数据是有效的,不仅可以减少占用空间,还能提升手机号码的提取效率。4)本专利技术中对号码文本数据进行压缩编码处理,压缩后的号码文本数据可以减小占用空间,有效地解决了本地关系数据库的资源消耗问题和内存问题;编码后的号码文本数据可以使得有序提取手机号码,保证提取过程能够顺畅运行。5)本专利技术中在文本数据的文件名中提取进行路由器MAC和时间戳,当遇到乱码时,对其进行清洗;为顺利提取手机号码提供保障。附图说明下面将以明确易懂的方式,结合附图说明优选实施方式,对一种手机号码的海量提取方法及系统的上述特性、技术特征、优点及其实现方式予以进一步说明。图1是本专利技术一种手机号码的海量提取方法的流程示意图;图2是本专利技术中步骤S20的流程示意图;图3是本专利技术中步骤S21的流程示意图;图4是本专利技术另一种手机号码的海量提取方法的部分流程示意图;图5是本专利技术又一种手机号码的海量提取方法的部分流程示意图;图6是本专利技术中步骤S01的流程示意图;图7是本专利技术一种手机号码的海量提取系统的结构示意图;图8是本专利技术再一种手机号码的海量提取方法的示意图;图9是本专利技术再一种手机号码的海量提取方法的组成结构示意图;图10是本专利技术提取出手机号码的效果示意图。具体实施方式为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对照附图说明本专利技术的具体实施方式。显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。为使图面简洁,各图中只示意性地表示出了与本专利技术相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。如图1所示,根据本专利技术的一个实施例,一种手机号码的海量提取方法,包括以下步骤:S10、利用Flume采集、聚合成子文本数据,并对子文本数据进行传输;再利用分布式web服务器框架,分别将各URL中的子文本数据收集到本地文件池;S20本文档来自技高网...
一种手机号码的海量提取方法及系统

【技术保护点】
一种手机号码的海量提取方法,其特征在于,包括以下步骤:S10、利用分布式web服务器框架,分别将各URL中的子文本数据收集到本地文件池;S20、将所述本地文件池内累加得到的号码文本数据上传至hadoop的云端分布式文件系统hdfs1;S40、利用hadoop的数据仓库工具hive从所述云端分布式文件系统hdfs1内号码文本数据中分布式提取URL的手机号码。

【技术特征摘要】
1.一种手机号码的海量提取方法,其特征在于,包括以下步骤:S10、利用分布式web服务器框架,分别将各URL中的子文本数据收集到本地文件池;S20、将所述本地文件池内累加得到的号码文本数据上传至hadoop的云端分布式文件系统hdfs1;S40、利用hadoop的数据仓库工具hive从所述云端分布式文件系统hdfs1内号码文本数据中分布式提取URL的手机号码。2.如权利要求1所述的手机号码的海量提取方法,其特征在于,所述步骤S20进一步包括:S21、对所述本地文件池内的子文本数据进行提取、清洗后,累加合并成文本数据;S22、判断所述文本数据中是否存在电话号码;S23、当所述文本数据中不存在电话号码时,则对所述文本数据进行过滤检测并删除。3.如权利要求2所述的手机号码的海量提取方法,其特征在于,所述步骤S20进一步还包括:S24、当所述文本数据中存在电话号码时,则对所述文本数据中的电话号码进行正则匹配处理;S25、判断所述文本数据中的电话号码是否为新电话号码;S26、当所述电话号码为新电话号码时,则按照所述云端分布式文件系统hdfs1的块的大小,对存在新电话号码的文本数据合并成号码文本数据;S27、利用本地分布式文件系统hdfs2将所述号码文本数据上传至所述云端分布式文件系统hdfs1。4.如权利要求2所述的手机号码的海量提取方法,其特征在于,所述步骤S21进一步包括:S211、提取所述子文本数据的文件名中的路由器MAC和时间戳;S212、识别出所述路由器MAC和时间戳是否遇到乱码;S213、当所述路由器MAC和时间戳遇到乱码时,则对所述乱码进行清洗,累加合并成文本数据后,跳转至步骤S22;否则,直接跳转至步骤S22。5.如权利要求1所述的手机号码的海量提取方法,其特征在于,还包括以下步骤:S30、所述数据仓库工具hive向开源计算框架TEZ发送计算请求;S31、所述开源计算框架TEZ对所述号码文...

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

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

1