第五期:轻松入门学习大数据

基于 EMR 离线数据分析

1. 创建资源

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

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

说明:资源创建过程需要 20~30 分钟。

2. 登陆集群

本步骤将指导您如何登录 EMR 集群终端。

  1. 在远程桌面中点击 Firefox ESR,会自动弹出分配子账号的登录页面,点击下一步,从左侧复制子用户密码,粘贴(温馨提示:粘贴快捷键为 CTRL+V)到输入框。

第五期:轻松入门学习大数据

第五期:轻松入门学习大数据

第五期:轻松入门学习大数据

  1. 登录成功后进入阿里云控制台首页,点击左侧菜单,输入关键词“emr”,点击 E-MapReduce 进入管理页面。

第五期:轻松入门学习大数据

3.在 E-MapReduce 控制台页面上方,选择资源所在地域。例如下图中,地域切换为华东 2(上海)。

说明:您可以在云产品资源列表中查看到您的 E-MapReduce 资源所在地域。

第五期:轻松入门学习大数据

4.在 E-MapReduce 控制台页面的集群列表区域,单击您的集群名/ID。

说明:您可以在云产品资源列表中查看到您的 E-MapReduce 集群名/ID。

第五期:轻松入门学习大数据

5.集群基础信息页面的主机信息区域,复制 MASTER 的节点的公网 ip 地址。

第五期:轻松入门学习大数据

  1. 打开远程桌面终端 LxShell

第五期:轻松入门学习大数据

  1. 在终端中输入连接命令 ssh root@[ipaddress]。您需要将[ipaddress]替换成第 3 步中复制公网地址,例如:
ssh root@139.xxx.xxx.230

命令显示结果如下:

第五期:轻松入门学习大数据

  1. 输入 yes。
  2. 同意继续后将会提示输入登录密码。密码为 @Aliyun2021 (你可以使用粘贴快捷键 SHIFT+CTRL+V)。

说明:输入密码的过程中没有回显,请确保键入内容正确。

登录成功后会显示如下信息。

第五期:轻松入门学习大数据

3. 上传数据到 HDFS

本步骤将指导您如何将自建数据上传到 HDFS。

  1. 执行如下命令,创建 HDFS 目录。

说明:在 LX 终端中,粘贴快捷键为 SHIFT+CTRL+V。

hdfs dfs -mkdir -p /data/student
  1. 上传文件到 hadoop 文件系统。

a.执行如下命令,创建 u.txt 文件。

#创建u.txt文件
vim u.txt

b.按 "i" 键进入编辑模式,通过粘贴快捷键(SHIFT+CTRL+V)将下方内容复制到文件中,按"Esc"返回命令模式,输入":wq"保存

说明:第一列表示 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

c. 上传文件 u.txt 到 hadoop 文件系统。

hdfs dfs -put u.txt /data/student
  1. 查看文件。
hdfs dfs -ls /data/student

第五期:轻松入门学习大数据

4. 使用 hive 创建表

本步骤将指导您如何使用 hive 创建数据表,并使用 hadoop 文件系统中的数据加载到 hive 数据表中。

  1. 执行如下命令,登录 hive 数据库。
hive
  1. 创建 user 表。
CREATE TABLE emrusers (
   userid INT,
   movieid INT,
   rating INT,
   unixtime STRING )
  ROW FORMAT DELIMITED
  FIELDS TERMINATED BY '\t'
  ;

第五期:轻松入门学习大数据

  1. 执行如下命令,从 hadoop 文件系统加载数据到 hive 数据表。
LOAD DATA INPATH '/data/student/u.txt' INTO TABLE emrusers;

5. 对表进行操作

本步骤将指导您如何使用 hive 对数据表进行查询等操作。

  1. 查看 5 行表数据。
select * from emrusers limit 5;
  1. 查询数据表中有多少条数据。
select count(*) from emrusers;
  1. 查询数据表中评级最高的三个电影。
select movieid,sum(rating) as rat from emrusers group by movieid order by rat desc limit 3;
上一篇:在Storefront里向Web站点添加快捷方式


下一篇:存储过程编写经验和优化措施