2025年安徽省职业院校技能大赛(中职组)大数据应用与服务赛项样题
文章目录
- 2025年安徽省职业院校技能大赛(中职组)大数据应用与服务赛项样题
-
- [模块 1:平台搭建与运维](#模块 1:平台搭建与运维)
-
- [任务 1:大数据平台部署](#任务 1:大数据平台部署)
- [模块 2:数据采集与处理](#模块 2:数据采集与处理)
-
- [任务 1:数据采集与清洗](#任务 1:数据采集与清洗)
- [任务 2:数据标注](#任务 2:数据标注)
- [任务 3:数据统计](#任务 3:数据统计)
- [模块 3:业务数据分析与可视化](#模块 3:业务数据分析与可视化)
-
- [任务 1:数据可视化](#任务 1:数据可视化)
- [任务 2:业务分析](#任务 2:业务分析)
需要全模块培训或答案资料可联系博主!
模块 1:平台搭建与运维
任务 1:大数据平台部署
子任务 1-1:Hadoop 完全分布式安装配置
1.从 master 的 /opt/software 目 录 下 将 文 件 hadoop-3.1.3.tar.gz、jdk-8u191-linux-x64.tar.gz 安装包解压到/opt/module 路径中(若路径不存在,则需新建);
2.修改 master 中/etc/profile 文件,设置 JDK 环境变量并使其生效,配置完毕后在 Master 节点分别执行"java
-version"和"javac"命令;
3.请完成host 相关配置,将三个节点分别命名为master、 slave1、slave2,并做免密登录,使用 scp 命令并使用绝对 路径从master 复制JDK 解压后的安装文件到slave1、slave2节点(若路径不存在,则需新建),并配置slave1、slave2相关环境变量;
4.在 master 将 Hadoop 解压到/opt/module(若路径不存在,则需新建)目录下,并将解压包分发至 slave1、slave2中,其中 master、slave1、slave2 节点均作为 datanode,配置好相关环境,初始化 Hadoop 环境 namenode;
5.启动 Hadoop 集群(包括 hdfs 和 yarn),使用 jps 命令查看master 节点与slave1 节点的 Java 进程。
子任务 1-2:Flume 安装配置
1.从 master 中 的 /opt/software 目 录 下 将 文 件 apache-flume-1.9.0-bin.tar.gz 解压到/opt/module 目录下;
2.完善相关配置设置,配置 Flume 环境变量,并使环境变量生效,执行命令flume-ng version 查看版本号;
3.启动 Flume 传输 Hadoop 日志(namenode 或datanode日志),查看HDFS 中/tmp/flume 目录下生成的内容。
子任务 1-3:Flink on Yarn 安装配置
1.从 master 中 的 /opt/software 目 录 下 将 文 件 flink-1.14.0-bin-scala_2.12.tgz 解 压 到 路 径
/opt/module 中(若路径不存在,则需新建);
2.修改 master 中/etc/profile 文件,设置 Flink 环境变量并使环境变量生效。在/opt 目录下运行命令 flink
--version;
3.开启 Hadoop 集群,在 yarn 上以 per job 模式(即 Job分 离 模 式 , 不 采 用 Session 模 式 ) 运 行
$FLINK_HOME/examples/batch/WordCount.jar。任务 2:数据库配置维护
子任务 2-1:数据库配置
1.输入命令以创建新的用户"shopping",密码设置为 '123456',查询当前所有的用户;
2.授予新用户shopping 访问数据的权限,查看shopping用户所拥有的权限;
3.刷新权限,并使用新用户shopping 及密码'123456'进行登录,并创建数据库"test"。
子任务 2-2:导入相关表
1.创建数据库"shopping",并根据以下数据字段在
MySQL 数据库中创建购物信息表(shopping);
表 8 购物信息表字段
| 字段 | 字段中文名 | 类型 | 备注 |
|---|---|---|---|
| id | 行号 | INT | 自增,主键 |
| city | 城市 | VARCHAR(255) | |
| shop_name | 购物地名称 | VARCHAR(500) | |
| address | 地址 | VARCHAR(50) | |
| contact_phone | 联系电话 | VARCHAR(100) | |
| business_hours | 营业时间 | VARCHAR(100) | |
| ranking | 排名 | VARCHAR(100) | |
| overall_rating | 综合评分 | VARCHAR(50) | |
| reviews_count | 点评数 | VARCHAR(50) | |
| review_category | 评价类别 | VARCHAR(100) | |
| visitor_rating | 游客评分 | VARCHAR(100) | |
| visitor_review | 游客评价 | TEXT |
2.将 本 地 /root/shopping/ 目 录 下 的 数 据 文 件 shopping.csv 导入 MySQL 对应数据库 shopping;
3.根据以下数据字段在 MySQL 数据库中创建食物信息表(fooditems);
表 9 食物信息表字段
| 字段 | 字段中文名 | 类型 | 备注 |
|---|---|---|---|
| id | 行号 | INT | 自增,主键 |
| city | 城市 | VARCHAR(255) | |
| food_name | 美食名称 | VARCHAR(255) | |
| likelihood_of_liking | 喜爱度 | INT | |
| restaurant_list | 餐馆列表 | TEXT | |
| food_detail_link | 美食详情链接 | TEXT | |
| food_image_link | 美食图片链接 | TEXT | |
| food_description | 美食介绍 | TEXT |
4.删除数据库"shopping"下的 fooditems 表,并查看数据库"shopping"下的所有表。
子任务 2-3:维护数据表
1.创建字段"reviews_count_new",字段类型设置为 VARCHAR(255);
2.提 取 " reviews_count " 字 段 中 的 数 字 作 为 "reviews_count_new"字段的内容。
3.对'shopping'数据库中的'shopping'数据表进行修改,将'id '为 21 的 contact_phone 字段记录修改为 '0451-85938868';
模块 2:数据采集与处理
任务 1:数据采集与清洗
子任务 1-1:数据采集
1.现有一份旅游平台城市购物列表文件 shops.tsv,包含数据信息有:城市、购物地名称、地址、联系电话、营业时间、排名、综合评分、点评数、评价类别、游客评分、游客评价。使用pandas 读取 shops.tsv 并打印数据前 10 行。
子任务 1-2:数据清洗
1.对 shops.tsv 中"联系电话"进行去除重复值,并存入shops_phone_filter_N.csv,N 为去除重复值的数据条数,注意结果数据存储格式为 CSV;
2.将" 营业时间" 为空的数据记录删除, 并存于 shops_trade_filter_N.csv,N 为删除的数据条数,注意结果数据存储格式为 CSV;
3.将"综合评分"字段为"暂无评分"的数据补充成"3.0"和"点评数"字段为"(暂无点评)"的数据补充成"0",并存入shops_score_filter_N.csv,N 为修改的数据条数(以点评数为准),注意结果数据存储格式为CSV;
4.将 shops.tsv 中"评价类别"字段中的连接符"◆
(\u25c6)"修改为横杠"-",存入 shops_assess_filter.csv,注意结果数据存储格式为 CSV。
任务 2:数据标注
子任务 2-1:分类标注
使用 Python 工具库 SnowNLP 对数据 shops.tsv 进行标注,获取购物满意度(evaluate),具体对购物满意度的标注规则如下:
1.对分数大于等于 0.6 的评价数据标注为好评;
2.对分数大于 0.4 小于 0.6 的评价数据标注为中评;
3.对分数小于等于 0.4 的评价数据标注为差评。
根据采集到的评价信息,给出三类标注好的数据,存入 shops_eva.csv。注意结果数据存储格式。具体格式如下:
表 10 标注结果格式
| 编号 | 购物中心 | 游客评价 | 购物满意度 |
|---|---|---|---|
| 1 | 凯德广场(学府路店) | XXXXXX | 好评 |
任务 3:数据统计
子任务 3-1:HDFS 文件上传下载
1.将 shops_phone_filter_N.csv 、 shops_trade_filter_N.csv、shops_score_filter_N.csv 和
shops_assess_filter.csv 文件上传至 HDFS 新建目录
/input/中,文件目录自行创建;
2.合 并 下 载 HDFS 上 shops_phone_filter_N.csv 、 shops_trade_filter_N.csv、shops_score_filter_N.csv 和 shops_assess_filter.csv 文 件 到 /root/ 目 录 下 的 shops_etl.csv 文件中;
子任务 3-2:数据统计
shops_visitor.tsv 文件存储了旅游购物数据,数据中有以下内容:
表 11 旅游购物数据
| 字段名称 | 字段说明 | 数据类型 | 示例 |
|---|---|---|---|
| city | 城市 | string | 哈尔滨 |
| mall_name | 商场名称(购物地名称) | string | 凯德广场(学府路店) |
| address | 地址 | string | 黑龙江省哈尔滨市南岗区学府路 1-1 号近哈师大附中 |
| contact_number | 联系电话 | string | 0451-51990811 |
| business_hours | 营业时间 | string | 全年 周一-周四 09:30-21:30;全年 周五-周日 09:30-22:00 |
| ranking | 排名 | string | 第 2 名 |
| overall_rating | 综合评分 | string | 4.7 分 |
| review_count | 点评数 | string | (188 条点评) |
| review_category | 评价类别 | string | 全部(174)◆很好(123)◆好(46) |
| ◆一般(4)◆差(0)◆很差(1)◆ | |||
| visitor_rating | 游客评分 | string | 商品:1 环境:3 服务:1 |
| visitor_review | 游客评价 | string | 凯德广场的商户和凯德集团原来只是合作关系。 |
编 写 MapReduce 程 序 , 实 现 以 下 功 能 : 根 据 visitor_rating 这一字段,计算游客对商品、环境和服务的满意程度,按照游客评分中的商品、环境和服务类别求取买家对不同购物中心印象平均分,格式为: (mall_name,平均分),如:(凯德广场(学府路店),3.5),结果保存至 HDFS,在控制台读取 HDFS 文件输出游客对不同购物中心的印象平均分。
模块 3:业务数据分析与可视化
任务 1:数据可视化
子任务 1-1:数据分析
1.统计各购物中心总数,要求忽略店铺,只取购物中心的名称,进行倒序排序展示前十名;
2.统计各购物中心的平均综合评分,要求忽略店铺,只取购物中心的名称,并进行倒序排序展示前十名;
3.统计各不同地址的购物中心总数,进行倒序排序展示前五名;
4.统计各购物中心的点评条数,要求忽略店铺,只取购物中心的名称,进行倒序排序展示前十名;
5.统计综合评分在"4.0"以上的购物中心总数。
子任务 1-2:数据可视化
1.用柱状图各购物中心统计情况,取前 10 行结果绘制图表。
任务 2:业务分析
子任务 2-1:业务分析
1.通过绘制散点图分析购物中心排名与综合评分之间的关系,将排名转换为整数类型,并删除空值;
2.分析分类标注的shops_eva.csv 购物满意度分布情况。