一、引言
微博即微型博客(micro-blogs),是一种允许用户及时更新并可以公开发布简短文本(通常在140字左右)的博客形式。微博的快速发展使得任何人都可以成为微博用户,成为一个区分于传统媒体的“自媒体”。这种用户驱动的信息创造模式产生信息的速度快,信息量在逐级的传播中变得海量。对微博信息进行挖掘和分析,关注其中的社会热点话题,可探寻其规律并预测动向,分析热点事件的舆论趋势,特别是微博信息传播的实时性可以应用于突发性社会事件和自然事件的监测和预警。
二、国内外研究现状
通过对微博信息的挖掘,可以获取相关的商业信息,人际关系信息,热点新闻,趋势信息等内容,以及对历史事件进行相关的分析总结。
进行微博信息挖掘,需要处理海量的用户信息和微博内容。把Hadoop应用于数据挖掘领域,国内外学者也有所探索,文献[2]提出了一种基于数据分割技术和遗传算法的混合算法DS-PGA,该算法结合了数据分割技术的分布式处理和遗传算法的全局搜索最优解的优点,使得改进后的算法更适合在分布式计算环境中执行。文献[3]针对云计算环境下的关联规则挖掘算法展开研究,对Apriori算法进行了改进,给出了改进的算法在Hadoop中的Map/Reduce编程模型上的执行流程;通过一个简单的频繁项集挖掘实例展示了改进的算法的执行效率及实用性。
从国内外研究现状可以看出,对微博信息的挖掘还处于起步阶段,本文将结合微博数据挖掘的实际需求,利用分布式和虚拟化技术,设计并实现基于Hadoop的微博信息挖掘系统,展示挖掘的相关信息。
三、基于Hadoop微博信息挖掘系统设计
Hadoop主要由HDFS、MapReduce和Hbase组成。它是一个分布式系统基础架构。Hadoop的特性使得Hadoop可以用于处理海量数据的分析和挖掘处理。
微博信息挖掘系统设计分为四个模块:数据获取,数据存储,数据挖掘和数据展示,系统架构设计如图1所示,本节将讨论各个模块需是实现的功能及其技术路线。
图1 基于Hadoop的微博信息挖掘系统框架结构
(一)数据获取
数据获取指从微博平台中获取微博信息,包含用户信息,微博内容等,获取方式包含两种:API方式和Web爬虫方式。API方式指通过调用各微博服务提供商提供的接口获取微博信息,而Web爬虫方式指通过访问微博平台的WEB页面,解析页面相关内容,获取所需信息。
系统通过Web爬虫的方式获取用户的微博ID,然后再使用微博服务提供商提供的API进一步获取用户的详细信息和微博内容,这种做的优点是通过Web爬虫的方式过滤掉了非认证用户,同时尽可能的减少了API调用次数,将有限的API调用资源用于获取用户的微博内容。
数据获取模块的架构设计如下:
图2 数据获取模块的架构设计
责编:孔维维
微信扫一扫实时了解行业动态
微信扫一扫分享本文给好友