微博舆情大数据分析

| 2022-09-13

云端实验室环境
基于开源的ambari大数据平台,部署了7个节点:
大数据实战——微博舆情大数据分析_数据仓库

一、 项目背景

企业可能对用户在微博上的评价内容有监测需求,如活动效果、用户对产品的评价,用户关注于产品的价格还是功能等等。

本平台用来获取微博的数据(数据量大、非结构化数据),进行数据分析,存储在云平台,将结果输出给企业。

二、 项目架构

大数据实战——微博舆情大数据分析_数据_02

1. 数据源

微博数据:
大数据实战——微博舆情大数据分析_数据_03

2. 数据层

本次数据层主要讲主数据仓库。
数据仓库是为应用层提供数据服务的。
大数据实战——微博舆情大数据分析_数据仓库_04

数据仓库表设计
大数据实战——微博舆情大数据分析_ambari_05

数据仓库一般是离线数据分析使用,每天要跑的固化需求。如果是临时需求(提数),就要让大数据开发人员专门做一条数据报表出来。

3. 平台层

大数据实战——微博舆情大数据分析_ambari_06

ODS层:数据是清洗后的。

4. APP区

从数据仓库区取数据分析展示。

三、 平台演示

运维人员一般使用Ambari,作为大数据的管理平台,而给开发人员使用跳板机(或堡垒机)。

开发界面示例:
大数据实战——微博舆情大数据分析_数据仓库_07

大数据实战——微博舆情大数据分析_ambari_08

大数据实战——微博舆情大数据分析_ambari_09

公司开发时,运维一般给不同团队分配不同队列,不同队列会有不同资源。
大数据实战——微博舆情大数据分析_数据仓库_10

虽然Spark比较成熟,但大多数公司对离线分析还是用Hive多一些。

企业微博声量号的分析:
统计微博最新状态下被评论 最多的Top10账户id,
注意:每个用户的微博进行去重之后,筛选出同一条微博的最新状态。

大数据实战——微博舆情大数据分析_ambari_11
开发有两种方式,一种在Ambari web平台写脚本。

实际中使用引入一个开发平台。这里是Hue。
大数据实战——微博舆情大数据分析_数据仓库_12

大数据实战——微博舆情大数据分析_ambari_13

每天都要跑的定时任务,一般用这样的平台设置一些权限,
大数据实战——微博舆情大数据分析_数据仓库_14
大数据实战——微博舆情大数据分析_数据仓库_15

在这里写经常用的SQL
大数据实战——微博舆情大数据分析_ambari_16

大数据实战——微博舆情大数据分析_数据仓库_17

点击Save As,
大数据实战——微博舆情大数据分析_ambari_18

这样平时开发的SQL都可以保存下来。
大数据实战——微博舆情大数据分析_数据仓库_19

如果要执行,那要设计一个执行器:
大数据实战——微博舆情大数据分析_数据_20
企业中使用一般会针对这个界面进行二次开发
新建一个流程:
大数据实战——微博舆情大数据分析_ambari_21
然后添加流程:
大数据实战——微博舆情大数据分析_数据仓库_22

大数据实战——微博舆情大数据分析_数据仓库_23
设置运行条件:
大数据实战——微博舆情大数据分析_数据仓库_24

大数据实战——微博舆情大数据分析_ambari_25

选择数据:
大数据实战——微博舆情大数据分析_数据仓库_26

大数据实战——微博舆情大数据分析_ambari_27

固定的报表一般会配置WorkFlow,这里使用Oozie作为工作流平台

大数据实战——微博舆情大数据分析_ambari_28