且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

学习报告:冬季实战营第五期

更新时间:2022-08-14 23:24:05

冬季实战营第五期:轻松入门学习大数据

基于EMR离线数据分析

实际操作,请确保已登录

上传数据到HDFS

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

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

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

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

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

      #创建u.txt文件
      vim u.txt
      
    • 按 "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
    • 上传文件u.txt到hadoop文件系统

      hdfs dfs -put u.txt /data/student
      
  3. 查看文件

    hdfs dfs -ls /data/student
    

使用hive创建表

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

  1. 执行如下命令,登录hive数据库

    hive
    
  2. 创建user表

    CREATE TABLE emrusers (
       userid INT,
       movieid INT,
       rating INT,
       unixtime STRING ) 
      ROW FORMAT DELIMITED 
      FIELDS TERMINATED BY '\t' 
      ;
  3. 执行如下命令,从hadoop文件系统加载数据到hive数据表

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

对表进行操作

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

  1. 查看5行表数据

    select * from emrusers limit 5;
  2. 查询数据表中有多少条数据。

    select count(*) from emrusers;

返回结果中您可以看到您数据表中一共有多少数据

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

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

返回结果中您可以看到您数据表中评级最高的三个电影

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

登录集群

在右侧远程桌面中打开浏览器,复制左侧云产品资源中提供的阿里云子用户名称和密码登录控制台

复制如下阿里云Elasticsearch控制台地址至浏览器地址栏,登录Elasticsearch控制台

说明:您可以在云产品资源列表查看已创建的资源信息,例如:IP地址、用户名、密码和资源所在地域等

https://elasticsearch-cn-hangzhou.console.aliyun.com

说明:

本次实验已开通阿里云Elasticsearh6.8版本,仅做本次场景体验使用,如需作为测试环境或生产环境使用,可选择其他更高版本

登录Kibana,开启自动创建索引功能

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

    学习报告:冬季实战营第五期

  • 在左侧导航栏,单击Dev Tools(开发工具),再单击Go to work
  • 在Console页签下,执行如下命令,开启阿里云ES实例的自动创建索引功能

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

    学习报告:冬季实战营第五期

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

  • 返回阿里云Elasticsearch管理控制台,单击Beats数据采集 > 创建采集器
  • 在创建采集器窗口中,单击Metricbeat
  • 在系统弹出的确定服务授权对话框,单击确认,授权创建服务关联角色
  • 在采集器配置向导中,输入或选择采集器信息,复制左侧云产品资源列表下的Elasticsearch登录名Elasticsearch登录密码,至用户名密码

metricbeat.yml 中末尾添加如下脚本,单击下一步

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实例

    学习报告:冬季实战营第五期

  • 启动采集器并查看采集器安装情况,此生效过程需等待3~5分钟

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

    GET _cat/indices?v
    

    索引创建成功后,结果如下

    学习报告:冬季实战营第五期

  • 左侧导航栏,单击Dashboard,搜索 [Metricbeat System] Overview
  • 单击进入 [Metricbeat System] Overview 页面,再单击 Host Overview,可查看监控仪表板

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

  • 返回阿里云Elasticsearch管理控制台 > Beats数据采集中心
  • 在创建采集器区域,将鼠标移至Filebeat上,单击ECS日志
  • 在采集器配置向导中,输入或选择采集器信息,完成后,单击下一步

    填写Filebeat文件目录处,填写如下路径:

    /var/log/nginx/
    

    学习报告:冬季实战营第五期

  • filebeat.yml 中更改如下脚本

    • 第24行enabled更改为 true
    • 第28行更改paths

      - /var/log/nginx/*.log
  • 单击下一步,选择采集器安装的ECS实例
  • 启动采集器并查看采集器安装情况,此生效过程需等待3~5分钟

    • 单击启动。启动成功后,系统弹出启动成功对话框
    • 单击前往采集中心查看,在采集器管理区域中,查看启动成功的Filebeat采集器,等待采集器状态变为已生效1/1
  • 返回Kibana页面,在左侧导航栏,单击Dev Tools(开发工具)

    Console页签下,执行如下命令,查看索引

    GET _cat/indices?v
    

    索引创建成功后,结果如下

    学习报告:冬季实战营第五期

  • 在左侧导航栏,单击Discover,点击选择filebeat,可查看采集的数据详情

    学习报告:冬季实战营第五期

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

创建PAI Studio项目

  1. 在控制台左侧导航栏,单击可视化建模(Studio)
  2. 在PAI Studio页面单击创建项目
  3. 在右侧弹出的创建项目页面,MaxCompute选择按量付费,填入项目名称,然后单击确定

    PAI Studio底层计算依赖MaxCompute,如果您未开通过当前区域的MaxCompute,请按照页面提示去购买

    • 单击购买
    • 选择步骤一开通的机器学习PAI服务所在区域,例如华东2(上海),然后单击立即购买。
    • 仔细阅读《大数据计算服务MaxCompute(按量计算)服务协议》后,勾选我已阅读并同意,最后单击立即开通。
    • 开通成功后返回PAI Studio控制台页面,再次单击创建项目,在创建项目页面选择MaxCompute付费方式为按量付费,然后填入项目名称,最后单击确认。
  4. 项目创建需要1分钟左右进行初始化,等待项目操作列出现进入机器学习,表示项目创建完成。

    学习报告:冬季实战营第五期

创建实验

  1. 单击左侧导航栏的首页

    学习报告:冬季实战营第五期

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

    学习报告:冬季实战营第五期

  3. 在弹出的新建实验框,单击确定

    学习报告:冬季实战营第五期

查看实验数据

  1. 右键单击cf_训练_data节点,然后单击查看数据
  2. 右键单击cf_结果_data,然后单击查看数据

运行实验

  1. 单击左上角运行

    学习报告:冬季实战营第五期

  2. 请耐心等到3~5分钟,实验运行完成如下所示

    学习报告:冬季实战营第五期