基于云计算的WAP日志处理和用户上网行为分析

2015-03-23 01:45何庆龚静
科技资讯 2014年33期
关键词:云计算

何庆++龚静

摘 要:在移动互联网迅猛发展的时代,电信运营商对用户上网日志等非结构化数据的处理、分析和挖掘变得尤为重要,传统的基于小型机和关系型数据库的数据处理系统已经无法满足海量非结构化数据的及时处理需求,相对传统做法,搭建X86集群、利用云计算技术对海量非结构化数据进行处理,具有高效、低成本、易扩展等方面的巨大优势。另外,用户上网日志中包含着大量的个性化信息,如何充分挖掘和分析这些信息,对电信运营商在移动互联时代实现精细化运营至关重要。该论文主要以用户WAP日志为例,详细阐述如何利用云计算技术处理海量的非结构化数据,进而去挖掘和分析用户上网行为。

关键词:非结构化数据 云计算 用户上网行为

中图分类号:TP393.08 文献标识码:A 文章编号:1672-3791(2014)11(c)-0011-02

随着3G时代的来临,电信行业竞争日趋激烈,而移动互联业务的快速发展,也使各大电信运营商面临新的机遇和挑战。如何在信息大爆炸时代,对电子商务、社交网络、物联网、新医疗、LBS、视频、音乐等方面产生的海量非结构化数据进行有效处理并提供高价值的分析,是业内面临的共同难题。

据不完全统计,电信运营商接近50%的移动互联网流量来自国内排名前10的WAP网站。从这个角度分析,虽然当前各种移动互联业务层出不穷,种类繁多,但WAP应用仍然占据主导地位。此外,互联网上知名门户和垂直类网站也纷纷建立WAP版,抢占移动互联网市场。对电信运营商而言,业务多样化趋势情况下,更需要很好地理解业务价值、客户价值,促进精细化营销;制定相应策略与控制,降低流量成本和提升流量收入,促进流量业务发展。通过云计算解决方案,对海量WAP日志进行数据处理和挖掘,低成本高效率的支撑业务应用。

1 需求分析

1.1 功能需求

(1)数据源。

用户WAP上网日志记录,每天处理数据量约1T,45亿条记录。

(2)WAP日志的云ETL。

提供基于HADOOP集群的数据处理平台,通过统一调度实现并行ETL过程。

(3)网页分类。

①从WAP日志提取URL,将URL经过网页分类等处理,转化为可以理解的指定的网页标签,并保留关键字;

②网页标签分为三级,每个网页的关键词保留5个,图书和音乐类网页保留图书名和音乐名作为关键字;

③按照标签进行网页分类应具备一定的灵活性,除了一级标签保持稳定外,二级和三级标签均可因不同的业务分析需求而变化和重构。

(4)用户上网行为分析。

基于客户的访问行为,识别其偏好特征,根据内容偏好特征进行客户细分,并支持目标客户群提取,以便支撑营销活动。

1.2 性能需求

基于以上业务需求,系统能力要求至少配备6台X86服务器,其中1台为主节点,5台为数据节点。具体配置如下。

(1)服务器型号是IBM 3650m3;

(2)CPU为双路六核,Intel X5650处理器,2.66GHz主频;

(3)内存是48GB;

(4)存储是6*1TB SATA硬盘,7200转;

(5)网口是4个千兆电口。

2 关键技术

2.1 网页数据的获取

爬虫的工作原理:首先爬虫根据WebDB生成一个待抓取网页的URL集合叫做Fetchlist,接着下载线程Fetcher根据 Fetchlist将网页抓取回来,如果下载线程有很多个,那么就生成很多个Fetchlist,也就是一个Fetcher对应一个Fetchlist。然后爬虫用抓取回来的网页更新WebDB,根据更新后的WebDB生成新的Fetchlist,里面是未抓取的或者新发现的URLs,然后下一轮抓取循环重新开始。这个循环过程可以叫做“产生/抓取/更新”循环。

2.2 基于分布式系统的海量数据处理

分布式系统采用基于Hadoop的集群架构,其特征主要有以下几点。

(1)先进性;

(2)高可靠性;

(3)成熟性;

(4)易维护性。

2.2.1 分布式存储系统

分布式平台底层的基本结构是基于一组特定的节点构建而成,这些节点主要分为两类,一类是元数据节点(NameNode),它在分布式存储系统内部提供元数据服务;另一类是数据节点(DataNode),为系统提供数据存储块。

一个分布式集群由一个元数据节点和大量的数据节点构成,并被许多用户端访问。出于可靠性考虑,每一个块被复制到多个数据节点上。默认情况下,保存三个副本,本地节点一份,与该节点相同的机架上一份,不同机架节点上一份,但这个副本数量可以由用户指定。

每个分布式集群通常只有一个元数据节点,用来维护文件系统所有的元数据(metadata),包括名字空间、访问控制信息、从文件到块的映射以及块的当前位置。

分布式存储系统采用可扩展的系统结构,利用多台服务器并行计算,提供高吞吐量的应用程序数据访问,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。

2.2.2 Map/Reduce运行环境

MapReduce是Google发明的一种编程模型。在这种编程模型下,用户通过定义一个map函数和一个reduce函数来解决问题。map函数对用户输入的键/值对(key/value pair)进行处理(处理时可能只有值这一项有用),生成一系列新的键/值对作为中间结果;系统(MapReduce的实现)对map函数生成的键/值对进行处理,将同属于一个键(key)的值(value)组合在一起,生成键/值列表((key/list of values) pair)对;reduce函数将键/值列表对作为输入,对同属于一个键的值列表进行处理,生成最终处理结果输出。endprint

猜你喜欢
云计算
云计算虚拟化技术在电信领域的应用研究
基于云计算的医院信息系统数据安全技术的应用探讨
谈云计算与信息资源共享管理
志愿服务与“互联网+”结合模式探究
云计算与虚拟化
基于云计算的移动学习平台的设计
基于云计算环境下的ERP教学改革分析
基于MapReduce的故障诊断方法
实验云:理论教学与实验教学深度融合的助推器
云计算中的存储虚拟化技术应用