基于spark的微博数据分析
文章目录主要数据介绍数据分析项目构建前端展示数据分析结果演示微博内容热词统计(房价话题)(Fangjia_hotwords.scala)统计数据中粉丝数量前20的微博用户(Fans_analysis.scala)微博中国各个省份人口分布统计(PopulationDistribution.scala)某一话题下微博发布时间分布情况 (Timedistribution.scala)统计微博发布设备(前
·
文章目录
基于spark的微博数据分析
主要数据介绍
- sql文件
- weibodatabase.sql :原始数据
- weibo_analysis.sql:分析结果数据
用户信息表
user(用户表) | |
---|---|
字段 | 注解 |
uid | 用户id |
screen_name | 昵称 |
name | 用户姓名 |
province | 省份 |
city | 市区 |
location | 地区(县) |
url | 微博主页链接 |
gender | 性别 |
followsnum | 粉丝数 |
friendsnum | 关注(他人)数 |
statusenum | 用户微博数 |
favouritesnum | 用户收藏数 |
created_at | 用户创建时间 |
省份编码表
bianma(微博省份编码映射) | |
---|---|
字段 | 注解 |
Provinc | 编码 |
Zhongwen | 对应省份中文 |
微博内容表
weibo(微博表) | |
---|---|
字段 | 注解 |
mid | 微博id |
data | 微博发表日期 |
text | 微博内容 |
source | 发表来源(平台终端) |
reopstnum | 转发数 |
commentsnum | 评论数 |
attitudesnum | 点赞数 |
uid | 用户id |
topic | 微博相关主题 |
数据分析
项目构建
使用java程序实现websocket服务端,每隔几秒请求数据库获取数据,数据库信息在不断更新,前台数据就动态展现,对于流式处理可以将结果不断写入数据库,服务端不断发送数据库信息,前台动态演示。
前端展示
使用echart工具使数据可视化
数据分析结果演示
微博内容热词统计(房价话题)(Fangjia_hotwords.scala)
从数据库获取微博内容数据为dataframe,并将其写入kafka,然后用structured streaming进行热词统计,其中用hanlp工具包 进行分词,统计机构名nt,地名ns, 人名nr, 形容词a
统计数据中粉丝数量前20的微博用户(Fans_analysis.scala)
微博中国各个省份人口分布统计(PopulationDistribution.scala)
某一话题下微博发布时间分布情况 (Timedistribution.scala)
主要是计算某一话题下一条微博的所在时间段的数量,分为8个时段
从date中提取小时数,根据小时数所在的区间对应到相应的时间段统计数量,再算成比例
一天以24小时计 对应的时间段 0-5 凌晨 5-7 早上 7-11 上午 11-13 中午 13-17 下午 17-19 傍晚 19-23 晚上 23-0 深夜
统计微博发布设备(前8个)(ClientAnalysis.scala)
取发布设备,用sparksql 进行wordcount
更多推荐
已为社区贡献1条内容
所有评论(0)