基于MaxCompute的热门话题分析

简介: 本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。

基于MaxCompute的热门话题分析

1.  创建资源

开始实验之前,您需要先创建实验相关资源。

在实验室页面,单击创建资源。

(可选)在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如IP地址、子用户信息等)。

说明:资源创建过程需要3~5分钟视资源不同开通时间有所差异,ACK等资源开通时间较长。完成实验资源的创建后,您可以在云产品资源列表查看已创建的资源信息,例如:子用户名称、子用户密码、AK ID、AK Secret、资源中的项目名称等。

实验环境一旦开始创建则进入计时阶段,建议学员先基本了解实验具体的步骤、目的,真正开始做实验时再进行创建。

资源创建成功,可在左侧的资源卡片中查看相关资源信息以及RAM子账号信息

2.  登录阿里云控制台

双击打开虚拟桌面的Chromium浏览器

在RAM用户登录框中单击下一步,并复制粘贴页面左上角的子用户密码用户密码输入框,单击登录

返回如下页面,表示您已成功登录阿里云控制台。

3.  上传数据

上传数据之前需要先进入DataWorks控制台,创建表,再往表中导入数据。

首先我们进入DataWorks工作空间

单击左上角的 图标,弹出菜单。

在菜单栏的中间部位,单击大数据开发治理平台DataWorks

在左侧导航栏中,单击工作空间列表

工作空间列表页面顶部,选择资源所在地域。例如下图中,地域切换为华东2(上海)。

说明:您可在云资源产品列表中查看实验室分配的DataWorks资源所在地域。

工作空间列表页面,单击数据开发,进入开发界面。

数据开发页面,需要创建一个ODPS SQL查询,ODPS即MaxCompute的别名。

6.1 在左侧导航栏中,单击临时查询

6.2 在临时查询面板,单击上方加号按钮。

6.3 在下拉菜单栏中,单击新建

6.4 在次级菜单栏中,单击ODPS SQL

新建节点。

7.1 在新建节点对话框中,路劲选择临时查询

7.2 给节点自定义任意名称,比如临时SQL 。

7.3 单击确认

创建好临时查询后,下面创建数据表。

CREATE TABLE `ttext` (
  `ttext_id` string,
  `user_id` string,
  `user_name` string,
  `user_age` int,
  `gender` string,
  `city_name` string,
  `created_at` datetime ,
  `ttitle` string,
  `reposts_count` int,
  `comments_count` int,
  `attitudes_count` int
)

通过以上SQL代码可以创建一个承载数据的表格。

8.1 将上述SQL代码复制粘贴到临时SQL的窗口中

8.2 单击上方运行按钮运行代码,如有弹框直接允许。

8.3 观察下面的日志,如下图中所示则创建完毕(此步骤无需操作)

创建好表格后,下面我们导入数据。

9.1 复制下方地址,在Chromium网页浏览器中,打开新页签,粘贴并访问,下载数据。

https://files.alicdn.com/tpsservice/b9f833b45bc3aec88506e97f36e1f6c9.csv

9.2 在左侧导航栏中,单击表管理

9.3 在表管理面板,单击上方导入按钮。

9.4 在将本地数据导入开发表对话框中,至少输入待查询的表前三个字母tte,会弹出ttext表。

9.5 单击下一步

导入开发表设置。

10.1 浏览本地数据CSV,在下载目录中双击刚刚下载好的数据文件。

10.2 选择UTF-8字符集。

10.3 首行为标题选择

10.4 单击下一步

导入开发表设置字段匹配。

11.1 选择按位置匹配,由于建表和CSV文件是提前准备好的,故按位置匹配即可。

11.2 单击导入数据

导入数据大约需要1~2分钟时间,请耐心等待。

4.  进行热点话题分析

需求1:2017年10月发送推文最多的10个城市是哪几个?这几个城市的用户共计发送了多少条推文?

执行SQL。

1.1 将如下SQL代码,复制粘贴到临时SQL的窗口中,单击上方运行按钮运行代码,如有弹框直接允许。

CREATE TABLE city_top as SELECT city_name, COUNT(ttext_id) as tempnum FROM `ttext` GROUP BY city_name ORDER BY tempnum desc limit 10

1.2 SQL解释:该SQL会查询各个城市各有多少条推文数量,并降序显示前十名的城市和推文数量,最后

把查询的前十名数据存储到一个叫做city_top的表中,便于下一步做可视化。

创建的city_top表可以在公共表处查询,如果您的界面没有公共表可根据如下操作进行开启。

2.1 在左侧导航栏中,单击左下角设置按钮。

2.2 在设置页面的模块管理区域,单击公共表

在左侧导航栏中,此时您可以看到公共表按钮,查询city_top表。

3.1 在左侧导航栏中,单击公共表

3.2 在公共表面板的查询输入框中,至少输入3个字母可查询表,例如输入cit,即可查询city_top表。

3.3 看到查询到的city_top表,并双击。

3.4 单击数据预览,查看数据。

 

需求2:2017年10月所有用户中性别男女比例是多少?

执行SQL。

1.1 将如下SQL代码,复制粘贴到临时SQL的窗口中,单击上方运行按钮运行代码,如有弹框直接允许。

CREATE TABLE gender_num as SELECT `gender` , COUNT(gender) as tempnum FROM `ttext` GROUP BY `gender`

1.2 SQL解释:按照性别分别查询男女的推文数量,并存储到gender_num的表中,便于下一步做可视化。

在公共表面板中,查询gender_num表。

2.1 在公共表面板的查询输入框中,至少输入3个字母可查询表,例如输入gen,即可查询gender_num表。

2.2 看到查询到的gender_num表,并双击。

2.3 单击数据预览,查看数据。

需求3:2017年10月所有用户年龄分布图集中趋势如何?

执行SQL。

1.1 将如下SQL代码,复制粘贴到临时SQL的窗口中,单击上方运行按钮运行代码,如有弹框直接允许。

CREATE TABLE age_num as SELECT `user_age` , COUNT(user_age) FROM `ttext` GROUP BY `user_age` ORDER BY `user_age` LIMIT 100

1.2 SQL解释:按照年龄分组查询各个年龄的用户总数,并按照年龄排序,最后存储到age_num的表中,便于下一步做可视化。

在公共表面板中,查询age_num表。

2.1 在公共表面板的查询输入框中,至少输入3个字母可查询表,例如输入age,即可查询age_num表。

2.2 看到查询到的age_num表,并双击。

2.3 单击数据预览,查看数据。

需求4:2017年10月哪些事件在互联网上热议,最热门的三个事件是什么

1、诺贝尔奖

2、麦当劳改名金拱门

3、十九大召开

4、拉斯维加斯持枪杀人事件

5、美国退出联合国教科文组织

6、鹿晗新女友

7、羞羞的铁拳上映

热门话题关键字:诺贝尔,金拱门,十九大,拉斯维加斯,教科文,鹿晗,羞羞铁拳。  

执行创建hot_topic表的SQL代码。

1.1 将如下SQL代码,复制粘贴到临时SQL的窗口中,单击上方运行按钮运行代码,如有弹框直接允许。

CREATE TABLE hot_topic
(
    ttitle  STRING,
    ttitle_num bigint
);

1.2 SQL解释:创建一个用来存储热门话题的数据表

执行向hot_topic表插入数据的SQL代码。

2.1 将如下SQL代码,复制粘贴到临时SQL的窗口中,单击上方运行按钮运行代码,如有弹框直接允许。

INSERT INTO hot_topic SELECT"诺贝尔", COUNT(ttitle)  FROM `ttext` WHERE ttitle like '%诺贝尔%'

2.2 SQL解释:针对不同的热门话题关键字分别执行查询并将结果存储到刚才创建的表中,以上代码需要编写7次执行7次,每次针对不同的关键字,最终将在hot_topic形成7条数据

在公共表面板中,查询hot_topic表。

2.1 在公共表面板的查询输入框中,至少输入3个字母可查询表,例如输入hot,即可查询hot_topic表。

2.2 看到查询到的hot_topic表,并双击。

2.3 单击数据预览,查看数据。

需求5:最热门的话题是哪个年龄段的用户讨论的

执行SQL。

1.1 将如下SQL代码,复制粘贴到临时SQL的窗口中,单击上方运行按钮运行代码,如有弹框直接允许。

CREATE TABLE hot_topic_age_num as SELECT `user_age` , COUNT(user_age) FROM `ttext` WHERE ttitle LIKE '%十九大%' GROUP BY `user_age` ORDER BY `user_age` LIMIT 100

1.2 SQL解释:在需求3的基础上,增加一个条件查询,限制话题是“十九大”的话题,然后再统计年龄分布。

在公共表面板中,查询hot_topic_age_num表。

2.1 在公共表面板的查询输入框中,至少输入3个字母可查询表,例如输入hot,即可查询hot_topic_age_num表。

2.2 看到查询到的hot_topic_age_num表,并双击。

2.3 单击数据预览,查看数据。

5.  数据可视化

本实验中使用的可视化功能基于DataWorks自带的电子表格的可视化功能。

首先需要打开电子表格。在左上角,单击 菜单图标,选择电子表格来制作可视化。

电子表格页面,单击新建电子表格

导入数据,导入的数据实际上就是我们前面从MaxCompute上分析得出的结论数据。

3.1 复制下方地址,在Chromium网页浏览器中,打开新页签,粘贴并访问,下载数据。

https://files.alicdn.com/tpsservice/3af99496968aa19075252ce864061773.xlsx

3.在右上角选择导入>本地文件,在下载目录中双击刚刚下载的数据文件。

3.3 导入数据后可以从下面的标签页来切换5个需求的数据。

需求1:2017年10月发送推文最多的10个城市是哪几个?这几个城市的用户共计发送了多少条推文?

在城市top10页签,选中所有数据。

在上方菜单栏中,单击柱状图

需求2:2017年10月所有用户中性别男女比例是多少?

性别分布页签,选中所有数据。

在上方菜单栏中,单击饼状图

需求3:2017年10月所有用户年龄分布图集中趋势如何?

年龄分布页签,选中所有数据。

在上方菜单栏中,单击折线图

我们观察到推文主要是13~45岁之间的用户发送。

需求4:2017年10月哪些事件在互联网上热议,最热门的三个事件是什么

热门话题页签,选中所有数据。

在上方菜单栏中,单击条形图

我们观察到最热门的话题是“十九大”。

需求5:2017年10月最热门的话题是哪个年龄段的用户讨论的

热门话题年龄分布页签,选中所有数据。

在上方菜单栏中,单击折线图

我们观察到讨论热门话题“十九大”的年龄分布是26~45岁,比所有话题的年龄分布偏大。

至此实验完毕,谢谢大家 !

实验链接:https://developer.aliyun.com/adc/scenario/9d85b0720e0f40c9bcf1fe3c91824a13

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
19天前
|
SQL 分布式计算 数据可视化
Tableau与大数据:可视化工具在大数据分析中的应用
【4月更文挑战第8天】Tableau是一款领先的数据可视化工具,擅长于大数据分析,提供广泛的数据连接器,支持多源整合。它与Hadoop、Spark等深度集成,实现高效大数据处理。Tableau的拖拽式界面和交互式分析功能使得非技术人员也能轻松探索数据。在实战中,Tableau用于业务监控、数据storytelling和自助式分析,推动数据民主化,提升决策效率。未来,Tableau将持续创新,扩展生态系统,并保障数据安全与合规性,助力企业最大化数据价值。
26 0
|
25天前
|
存储 消息中间件 监控
【Flume】Flume在大数据分析领域的应用
【4月更文挑战第4天】【Flume】Flume在大数据分析领域的应用
|
2月前
|
Cloud Native 数据处理 云计算
探索云原生技术在大数据分析中的应用
随着云计算技术的不断发展,云原生架构作为一种全新的软件开发和部署模式,正逐渐引起企业的广泛关注。本文将探讨云原生技术在大数据分析领域的应用,介绍其优势与挑战,并探讨如何利用云原生技术提升大数据分析的效率和可靠性。
|
2月前
|
存储 消息中间件 大数据
Go语言在大数据处理中的实际应用与案例分析
【2月更文挑战第22天】本文深入探讨了Go语言在大数据处理中的实际应用,通过案例分析展示了Go语言在处理大数据时的优势和实践效果。文章首先介绍了大数据处理的挑战与需求,然后详细分析了Go语言在大数据处理中的适用性和核心技术,最后通过具体案例展示了Go语言在大数据处理中的实际应用。
|
2月前
|
数据采集 运维 数据挖掘
API电商接口大数据分析与数据挖掘 (商品详情店铺)
API接口、数据分析以及数据挖掘在商品详情和店铺相关的应用中,各自扮演着重要的角色。以下是关于它们各自的功能以及如何在商品详情和店铺分析中协同工作的简要说明。
|
4月前
|
关系型数据库 MySQL Serverless
高顿教育:大数据抽数分析业务引入polardb mysql serverless
高顿教育通过使用polardb serverless形态进行数据汇总,然后统一进行数据同步到数仓,业务有明显高低峰期,灵活的弹性伸缩能力,大大降低了客户使用成本。
|
4月前
|
机器学习/深度学习 数据采集 算法
大数据分析技术与方法探究
在当今信息化时代,数据量的增长速度远快于人类的处理能力。因此,如何高效地利用大数据,成为了企业和机构关注的焦点。本文将从大数据分析的技术和方法两个方面进行探究,为各行业提供更好的数据应用方向。
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
大数据分析的技术和方法:从深度学习到机器学习
大数据时代的到来,让数据分析成为了企业和组织中不可或缺的一环。如何高效地处理庞大的数据集并且从中发现潜在的价值是每个数据分析师都需要掌握的技能。本文将介绍大数据分析的技术和方法,包括深度学习、机器学习、数据挖掘等方面的应用,以及如何通过这些技术和方法来解决实际问题。
56 2
|
4月前
|
机器学习/深度学习 人工智能 运维
大数据分析:探索信息世界的钥匙
在当今信息爆炸的时代,大数据分析成为挖掘宝藏般的技术和方法。本文将介绍大数据分析的基本概念、技术与方法,并探讨其在商业、科学和社会领域中的广泛应用。从数据收集和预处理到模型构建和结果解读,大数据分析为我们揭示了信息世界的钥匙,为决策者提供了有力的支持。
|
3月前
|
API
GEE案例分析——利用sentinel-3数据计算空气污染指数(Air Pollution Index,简称API)
GEE案例分析——利用sentinel-3数据计算空气污染指数(Air Pollution Index,简称API)
115 0

热门文章

最新文章

相关产品

  • 云原生大数据计算服务 MaxCompute