【云起实验室】入门学习大数据

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
交互式建模 PAI-DSW,5000CU*H 3个月
云服务器 ECS,每月免费额度200元 3个月
简介: 基于HDFS,Elasticsearch&Kibana,以及阿里机器学习PAI

一、基于EMR离线数据分析

1. 登录EMR集群终端

阿里云控制台点击 E-MapReduce 进入管理页面。

image.png

集群基础信息找到MASTER节点的公网ip

image.png

使用ssh连接集群

image.png

 

 

2. 上传数据到HDFS

创建HDFS目录。

hdfs dfs -mkdir -p /data/student

 

创建u.txt文件

vim u.txt
#第一列表示userid,第二列表示movieid,第三列表示rating,第四列表示unixtime。
196  242 3  881250949
186  302 3  891717742
22  377 1  878887116
244  51 2  880606923
166  346 1  886397596
298  474 4  884182806
115  265 2  881171488
253  465 5  891628467
305  451 3  886324817
6  86 3  883603013
62  257 2  879372434
286  1014 5  879781125
200  222 5  876042340
210  40 3  891035994
224  29 3  888104457
303  785 3  879485318
122  387 5  879270459
194  274 2  879539794
291  1042 4  874834944
234  1184 2  892079237
119  392 4  886176814
167  486 4  892738452
299  144 4  877881320
291  118 2  874833878
308  1 4  887736532
95  546 2  879196566
38  95 5  892430094
102  768 2  883748450
63  277 4  875747401
160  234 5  876861185
50  246 3  877052329
301  98 4  882075827
225  193 4  879539727
290  88 4  880731963
97  194 3  884238860
157  274 4  886890835
181  1081 1  878962623
278  603 5  891295330
276  796 1  874791932
7  32 4  891350932
10  16 4  877888877
284  304 4  885329322
201  979 2  884114233
276  564 3  874791805
287  327 5  875333916
246  201 5  884921594
242  1137 5  879741196
249  241 5  879641194
99  4 5  886519097
178  332 3  882823437
251  100 4  886271884
81  432 2  876535131
260  322 4  890618898
25  181 5  885853415
59  196 5  888205088
72  679 2  880037164
87  384 4  879877127
290  143 5  880474293
42  423 5  881107687
292  515 4  881103977
115  20 3  881171009
20  288 1  879667584
201  219 4  884112673
13  526 3  882141053
246  919 4  884920949
138  26 5  879024232
167  232 1  892738341
60  427 5  883326620
57  304 5  883698581
223  274 4  891550094
189  512 4  893277702
243  15 3  879987440
92  1049 1  890251826
246  416 3  884923047
194  165 4  879546723
241  690 2  887249482
178  248 4  882823954
254  1444 3  886475558
293  5 3  888906576
127  229 5  884364867
225  237 5  879539643
299  229 3  878192429
225  480 5  879540748
276  54 3  874791025
291  144 5  874835091
222  366 4  878183381
267  518 5  878971773
42  403 3  881108684
11  111 4  891903862
95  625 4  888954412
8  338 4  879361873
162  25 4  877635573
87  1016 4  879876194
279  154 5  875296291
145  275 2  885557505
119  1153 5  874781198
62  498 4  879373848
62  382 3  879375537
28  209 4  881961214
135  23 4  879857765
32  294 3  883709863
90  382 5  891383835
286  208 4  877531942
293  685 3  888905170
216  144 4  880234639
166  328 5  886397722
上传文件u.txt到hadoop文件系统。
hdfs dfs -put u.txt /data/student
查看文件。
hdfs dfs -ls /data/student

 

image.png

 

 

 

3.使用hive创建表

登录hive数据库。

hive
创建user表。
CREATE TABLE emrusers (
   userid INT,
   movieid INT,
   rating INT,
   unixtime STRING ) 
  ROW FORMAT DELIMITED 
  FIELDS TERMINATED BY '\t' 
  ;

 

image.png

从hadoop文件系统加载数据到hive数据表。

LOAD DATA INPATH '/data/student/u.txt' INTO TABLE emrusers;


4. 对表进行操作

查看5行表数据。

select * from emrusers limit 5;

 

image.png

查询数据表中有多少条数据。

select count(*) from emrusers;

image.png

查询数据表中评级最高的三个电影。

select movieid,sum(rating) as rat from emrusers group by movieid order by rat desc limit 3;

image.png

 

 

 

二、使用阿里云Elasticsearch快速搭建智能运维系统

 

1.登录Kibana,开启自动创建索引

在右侧概览页面Elasticsearch区域中,单击集群管理。在Elasticsearch实例列表中,单击实例ID。左侧导航栏,选择配置与管理 > 可视化控制。在Kibana区域中,单击修改配置。开启Kibana私网访问,返回上级页面,在Kibana区域中,单击公网入口。复制左侧云产品资源列表下的Elasticsearch登录名Elasticsearch登录密码,至Kibana登录页面的账号和密码,单击登录。在登录成功页面,单击Explore on my own

image.png

 

在左侧导航栏,单击Dev Tools(开发工具),再单击Go to work

在Console页签下,执行如下命令,开启阿里云ES实例的自动创建索引功能。

PUT _cluster/settings
{
"persistent": {
"action.auto_create_index": "true" 
}
}

image.png

开启成功后,结果如下。

{
  "acknowledged" : true,
  "persistent" : {
    "action" : {
      "auto_create_index" : "true"
    }
  },
  "transient" : { }
}

 

 

 

2. 使用Metricbeat采集ECS上的系统数据

Elasticsearch管理控制台,Beats数据采集> 创建采集器。

 

image.png

 

 

创建采集器窗口中,单击Metricbeat

 

image.png

 

系统弹出的确定服务授权对话框

image.png

 

在采集器配置向导中,输入或选择采集器信息,输入Elasticsearch登录名Elasticsearch登录密码

image.png

 

metricbeat.yml中末尾添加如下脚本。

 

image.png

 

metricbeat.modules:
- module: system
  metricsets:
    - cpu             
    - load            
    - memory         
    - network        
    - process         
    - process_summary 
    - uptime          
    - socket_summary  
    - core
    - diskio 
    - filesystem
    - fsstat
  enabled: true
  period: 10s
  processes: ['.*']
  cpu.metrics:  ["percentages"]
  core.metrics: ["percentages"]

 

选择采集器安装的ECS实例。

 

image.png

 

 

启动采集器并查看采集器安装情况,此生效过程需等待3~5分钟。单击启动。启动成功后,系统弹出启动成功对话框。前往采集中心查看,在采集器管理区域中,查看启动成功的Metricbeat采集器,等待采集器状态变为已生效1/1。返回Kibana页面,在左侧导航栏,单击Dev Tools(开发工具)。在Console页签下,执行如下命令,查看索引。

GET _cat/indices?v

 

image.png

 

 

左侧导航栏,单击Dashboard,搜索[Metricbeat System] Overview

 

image.png

 

进入[Metricbeat System] Overview页面,再单击Host Overview,可查看监控仪表板。

image.png

 

 

3. 使用Filebeat采集ECS上的Nginx服务数据

阿里云Elasticsearch管理控制台 > Beats数据采集中心。在创建采集器区域,单击ECS日志

 

image.png

 

在采集器配置向导中,输入或选择采集器信息。在填写Filebeat文件目录处,填写如下路径:

/var/log/nginx/

image.png

 

 

filebeat.yml中更改如下脚本:

在第24行enabled更改为true
在第28行更改paths
- /var/log/nginx/*.log

 

image.png

 

下一步,选择采集器安装的ECS实例。

image.png

 

 

启动采集器并查看采集器安装情况,单击启动。启动成功后,系统弹出启动成功对话框。单击前往采集中心查看,在采集器管理区域中,查看启动成功的Filebeat采集器,等待采集器状态变为已生效1/1。返回Kibana页面,在左侧导航栏,单击Dev Tools(开发工具)。在Console页签下,执行如下命令,查看索引。

GET _cat/indices?v

 

 

image.png

 

左侧导航栏,Discover选择filebeat,可查看采集的数据详情。

 

image.png

 

 

三、推荐系统入门之使用协同过滤实现商品推荐

1.开通机器学习PAI服务

机器学习平台PAI。

image.png

在机器学习PAI控制台首页,单击立即开通

image.png

在服务开通页面,选择要开通的机器学习PAI服务所在的区域。

image.png

 

确认开通。

image.png

 

 

 

2.创建PAI Studio项目

单击可视化建模(Studio)

image.png

在PAI Studio页面单击创建项目

image.png

创建项目页面,MaxCompute选择按量付费,填入项目名称。

image.png

开通的机器学习PAI服务所在区域。

image.png

勾选我已阅读并同意,立即开通

image.png

开通成功后返回PAI Studio控制台页面,再次单击创建项目,在创建项目页面选择MaxCompute付费方式为按量付费,然后填入项目名称,最后单击确认

image.png

等待项目操作列出现进入机器学习,表示项目创建完成。

image.png

 

 

 

创建实验

左侧导航栏的首页

image.png

在模板列表找到【推荐算法】商品推荐,然后单击从模板创建

image.png

新建实验框,单击确定

image.png

 

 

查看实验数据

右键单击cf_训练_data节点,然后单击查看数据。

image.png

源数据的字段解释如下:

字段名

含义

类型

描述

user_id

用户编号

STRING

购物的用户ID。

item_id

物品编号

STRING

被购买物品的编号。

active_type

购物行为

STRING

    • 0:表示点击。
    • 1:表示购买。
    • 2:表示收藏。
    • 3:表示加入购物车。

active_date

购物时间

STRING

购物发生的时间。

可以看到训练数据为7月份以前的用户购买行为数据。

右键单击cf_结果_data,然后单击查看数据。

image.png

可以看到结果数据为7月份以后的用户购买行为数据。

 

运行实验

左上角运行。

image.png

实验运行完成

image.png

 

 

 

查看实验结果

右键单击join-1节点,然后单击查看数据

image.png

表中similar_item字段为经过协同过滤算法计算得出的该用户购买可能性最大的商品。

单击全表统计-1节点,然后单击查看数据。

image.png

表1统计了根据协同过滤算法推荐的商品数量,共有18065个商品可推荐。

单击全表统计-2节点,然后单击查看数据

image.png

表2统计了7月份真实购买行为数据中与经过协同过滤算法所推荐的商品的命中数量,可以看到有60个推荐的商品被购买。

 

 

 

 

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
6月前
|
SQL 存储 大数据
黑马程序员-大数据入门到实战-分布式SQL计算 Hive 语法与概念
黑马程序员-大数据入门到实战-分布式SQL计算 Hive 语法与概念
76 0
|
1天前
|
分布式计算 大数据 数据处理
[AIGC大数据基础] Spark 入门
[AIGC大数据基础] Spark 入门
|
4月前
|
分布式计算 大数据 Java
问我大数据怎么入门,我总结了亲身体验的学习路线推荐给她【推荐收藏】
问我大数据怎么入门,我总结了亲身体验的学习路线推荐给她【推荐收藏】
49 0
|
1月前
|
存储 SQL 关系型数据库
【MySQL 数据库】6、一篇文章学习【索引知识】,提高大数据量的查询效率【文末送书】
【MySQL 数据库】6、一篇文章学习【索引知识】,提高大数据量的查询效率【文末送书】
58 0
|
4月前
|
分布式计算 NoSQL Java
大数据学习资料和书籍推荐
大数据学习资料和书籍推荐
67 0
|
4月前
|
前端开发 JavaScript 大数据
❤️[前端学习]大数据全栈工程师之一文快速上手vue3❤️
❤️[前端学习]大数据全栈工程师之一文快速上手vue3❤️
59 0
|
4月前
|
分布式计算 资源调度 大数据
一图胜千言:大数据入门必备的16张数据流转图(建议收藏)
一图胜千言:大数据入门必备的16张数据流转图(建议收藏)
172 0
|
5月前
|
分布式计算 Java 大数据
大数据前置学习基础准备(非常详细!)
大数据前置学习基础准备(非常详细!)
55 0
|
2月前
|
分布式计算 DataWorks IDE
MaxCompute数据问题之忽略脏数据如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
47 0
|
2月前
|
SQL 存储 分布式计算
MaxCompute问题之下载数据如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
38 0