全国职业院校技能大赛大数据题库任务书5Word格式.docx
《全国职业院校技能大赛大数据题库任务书5Word格式.docx》由会员分享,可在线阅读,更多相关《全国职业院校技能大赛大数据题库任务书5Word格式.docx(20页珍藏版)》请在冰豆网上搜索。
主节点
root
123456
2
slave1
从节点
3
slave2
补充说明:
主节点MySQL数据库用户名/密码:
root/123456
相关软件安装包在/chinaskills目录下
所有模块中应用命令必须采用绝对路径
任务一:
Hadoop全分布部署管理
本环节需要使用root用户完成相关配置,安装Hadoop需要配置前置环境。
具体部署要求如下:
1、将/chinaskills下的JDK包解压到/usr/local/src路径,将完整命令复制粘贴到对应报告中;
2、修改/root/.bash_profile文件,设置JDK环境变量,并使环境变量只对当前root用户生效将环境变量配置内容复制粘贴至对应报告中;
3、从master复制上面步骤配置的JDK环境变量文件到slave1、slave2节点,命令和结果复制粘贴在对应报告中;
4、配置SSH密钥登录,实现从master登录到slave1,将登录命令和结果复制粘贴在对应报告中;
5、将配置文件hadoop-env.sh变更内容复制粘贴在对应报告中;
6、将配置文件core-site.xml变更内容复制粘贴在对应报告中;
7、初始化Hadoop环境namenode,将命令及结果复制粘贴在对应报告中;
8、查看master及slave1节点jps进程,将其命令及结果复制粘贴至对应报告中。
任务二:
Spark组件部署管理
1、解压Scala安装包到/usr/local/src路径下,并更名为scala,命令及结果复制粘贴至对应报告中;
2、设置Scala环境变量,并使环境变量只对root用户生效,配置文件内容复制粘贴至对应报告中;
3、进入Scala命令行界面,将命令及结果复制粘贴至对应报告中。
4、解压Spark安装包到usr/local/src路径下,并更名为spark,将命令及结果复制粘贴至对应报告中;
5、设置Spark相关环境变量,并使环境变量只对root用户生效,配置Spark的master节点主机名、端口、worker结点的核数、内存,将命令复制粘贴至对应报告中;
6、启动Sparkshell,将命令及结果复制粘贴至对应报告中。
任务三:
Hive部署管理
本环节需要使用root用户完成相关配置,已安装Hadoop及需要配置前置环境,具体部署要求如下:
1、将指定路径下的Hive安装包解压到/usr/local/src下,将命令复制并粘贴至对应报告中;
2、把解压后的apache-hive-1.2.2-bin文件夹更名为hive;
进入hive文件夹,并将查看命令及结果复制并粘贴至对应报告中;
3、设置Hive环境变量,并使环境变量只对当前root用户生效;
并将环境变量配置内容复制并粘贴至对应报告中;
4、将Hive安装目录里hive-default.xml.template文件更名为hive-site.xml;
并将更改命令复制并粘贴至对应报告中;
5、通过VI编辑器配置hive-site.xml文件,将MySQL数据库作为Hive元数据库。
将配置文件Hive元存储相关内容复制并粘贴至对应报告中;
6、初始化Hive元数据,将MySQL数据库JDBC驱动拷贝到Hive安装目录的lib文件夹下;
并通过schematool命令执行初始化,将初始化结果复制粘贴至对应报告中;
7、启动Hive并保存命令输出结果,将结果输出复制粘贴至对应报告中。
模块B:
数据采集与处理(20分)
项目背景说明
1、查看餐饮外送统计平台网站源码结构。
1)打开网站,在网页中右键点击检查,或者F12快捷键,查看源码页面;
2)检查网站:
浏览网站源码查看所需内容。
2、从餐饮外送统计平台中采集需要数据,按照要求使用Python语言编写代码工程,获取指定数据项,并对结果数据集进行必要的数据处理。
请将符合任务要求的结果复制粘贴至对应报告中。
具体步骤如下:
1)创建工程工程项目:
C:
\food_delivery_crawl
2)构建采集请求
3)按要求定义相关字段
4)获取有效数据
5)将获取到的数据保存到指定位置
6)对数据集进行基础的数据处理
至此已从餐饮外送统计平台中获取所需数据,并完成了必要的基础的数据处理。
3、自行创建Scrapy工程项目food_delivery_crawl,路径为C:
\food_delivery_crawl按照任务要求从餐饮外送统计平台中获取数据。
4、每条数据记录请以单独一行保存,信息存储格式为key:
value。
文件保存路径为:
\output。
示例:
{"
rest_id"
:
"
***"
"
rest_name"
……},
……
获取“配送平台”页面相关数据
自行创建Scrapy工程编写工程代码,获取“配送平台”页面相关数据,通过工程代码分页获取,将使用re解析分页链接的程序源代码复制粘贴至对应报告中。
获取“店铺运营数据”页面相关数据
编写工程代码,获取“店铺运营数据”页面相关数据,通过工程代码分页获取,将使用re解析分页链接的程序源代码复制粘贴至对应报告中。
将获取数据存入json文件
运行代码,爬取“配送平台”页面与“店铺运营数据”页面数据分别至restaurant_data.json与grey_test.json文件。
查看文件并填写采集到的记录条数,并将答案复制粘贴至对应报告中。
示例格式:
restaurant_data.json行数为:
grey_test.json行数为:
任务四:
删除异常样本
restaurant_data.json文件中,请剔除属性列“客户取消数”小于“商户取消数”的异常数据条目,并在PyCharm控制台打印输出删除的样本条数,并将打印语句复制粘贴至对应报告中。
===因异常样本记录,删除样本条数为***条===
任务五:
缺失值处理
请以任务4的结果数据集作为数据源,针对“到店时间”属性,审查缺失值数量:
(a)当缺失值比例小于5%时,对包含缺失值数据的样本进行删除。
(b)当缺失值比例大于5%时,对缺失值字段进行中位数填充。
在PyCharm控制台打印输出结论,并按示例格式将结果复制粘贴至对应报告中。
===“到店时间”属性缺失值比例小于5%,删除样本条数为***条===
或:
===“到店时间”属性缺失值比例大于5%,中位数为:
,填充样本条数为***条===
任务六:
划分数据集
请针对grey_test.json数据集,根据属性“超时率(9日)”划分数据集grey_test.json1(超时率(9日)小于等于5%),grey_test.json2(超时率(9日)大于5%),并在PyCharm控制台打印输出两个数据集的数据记录条数,并按示例格式将结果复制粘贴至对应报告中。
===grey_test.json1包含样本条数为***条===
===grey_test.json2包含样本条数为***条===
模块C:
数据清洗与挖掘分析(25分)
餐饮外卖平台的核心价值体现在配送,而配送的价值则依赖于商家与客户的双向选择。
外卖平台通常会通过内容激活消费者和商家两个群体的活跃度。
消费者会参考平台展示的内容选择商家,商家也会以消费者评价与平台统计数据为依据调整策略,由此再吸引更多的用户下单、评论、形成正向循环。
保证配送的时效与品质是从优化用户体验的角度,吸引更多的用户参与,进而带动商家不断入驻。
由此,商家、消费者、骑手在平台上形成越来越多的真实可靠的数据,帮助消费者更好的做出消费决策,同时促进商家提高服务质量。
而平台通过数据,不断调整优化服务,从而不断提升这种多边网络效应。
提升网络效应的直接结果就是用户和商家规模大幅提升,进而形成规模效应——降低获客成本、提高效益,并且不断提升自己的行业壁垒。
为探索各大外卖平台的市场策略与经营模式,现已从及平台获取到了原始数据集,包含“餐厅id,retailer_id,餐厅名称,城市,商户业务包,配送范围,客单价,推单数,接单数,有效完成单数,投诉率,异常率,欺诈单数,拒单数,商户取消数,客户取消数,系统取消数,配送取消异常数,整体时长,接单时长,到店时长,取餐时长,送达时长,商户投诉数,用户投诉数,差评数,好评数,评价数,最远订单距离,该订单整体时效,该订单接单时效,该订单到店时效,该订单取餐时效,该订单送达时效,该订单评价”字段。
为保障用户隐私和行业敏感信息,已经对数据脱敏。
(数据脱敏是指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。
在涉及客户安全数据或一些商业性敏感数据的情况下,对真实数据进行改造并提供测试使用,如身份证号、手机号等个人敏感信息都需要进行数据脱敏。
本题已将脱敏后的数据存放于平台对应任务/chinaskills目录下。
工程所需配置文件pom.xml存放于“C:
\清洗配置文件”。
任务中所有命令务必使用绝对路径。
)
数据清洗
任务背景:
数据源为众多网站及平台的数据汇总,且为多次采集的结果,在整合多来源数据时可能遇到数据重复,或数据拼接导致的属性列缺失或冗余等情况。
请根据任务具体参数要求,针对原始数据集进行清洗,并写入指定的数据库或数据文件,复制并保存结果。
任务描述:
数据源文件存放于平台对应任务/chinaskills目录下,请按照如下要求编写Spark程序对数据进行清洗,并将结果输出保存。
1)分析/chinaskills中json数据文件;
2)针对属性列“商家id”排查并删除异常数据条目;
3)针对属性列缺失或冗余的样本进行删除;
4)程序打包并在Spark平台运行,结果输出至HDFS文件系统/diliveryoutput1。
具体任务要求:
1、读取相关数据文件,包含“city_name,location,latitude,longitude,rest_type,platform_A_restid,A_rst_name,A_day_30_cnt,platform_B_restid,B_rst_name,B_day_30_cnt”等字段,查看文件包含数据记录数,并将答案复制并保存至对应报告中。
文件数据记录数为:
2、编写Spark程序读取任务1的数据源,针对属性列“platform_A_restid”或“platform_B_restid”重复的样本,请以多条样本记录的“A_day_30_cnt”或“B_day_30_cnt”属性均值作为该属性的值,并删除多余样本,并在程序中以打印语句输出删除的条数。
请将结果数据集json文件输出至HDFS文件系统/diliveryoutput1中。
将打印输出结果复制并保存至对应报告中。
(复制内容需包含打印语句输出结果的上下各5行运行日志)。
===因重复样本记录,删除样本条数为***条===
3、编写Spark程序读取任务2的结果数据集/diliveryoutput1,编写Spark(Standalone)程序,删除数据源中缺失值大于3个字段的数据记录,打印输出删除条目数,将运行结果复制粘贴至对应报告中
打印语句格式如下:
===“删除缺失值大于3个的字段的数据条数为***条”===
4、将任务3处理后的数据记录以[latitude,longitude]降序排列,并将结果数据集json文件输出至HDFS文件系统/diliveryoutput2(将分区数设置为1)。
查看结果数据文件前5条记录。
将命令及输出结果复制并保存至对应报告中。
数据挖掘分析
子任务1
网格化营销是近年来新兴的一种营销管理模式,已被广泛地运用于市场精准营销。
在市场营销中,采取地图营销、网格管理、精准策略等,可将客户的心理需求与其日常生活紧密地联系起来,巧妙运用网格化管理和营销地图,以此来实现客户的营销精准度与价值提升,提高单一客户贡献值和营销效率。
其核心旨在帮助企业快速响应市场需求,为用户提供更加便捷的、专业化服务,并使企业的资源分配以客户为中心,以市场变化为导向,固本强基、开拓市场、提升效益,有助于平台有效地制定绩效战略。
请根据任务具体参数要求,针对相关数据集进行分析,并写入指定的数据库或数据文件,复制并保存结果。
数据源文件存放于平台对应任务/chinaskills目录下,按照如下要求编写Spark程序实现对数据的分析,并将结果输出至HDFS文件系统中/diliveryoutput3。
1)解析/chinaskills中相关数据源json文件
2)按网格汇总餐厅总数、“近7天平台单量”、“近7天推单量”,及相关计算
3)按照任务要求统计网格超时率
4)程序打包并在Spark平台运行,输出并保存结果
1、读取相关数据文件,参考“网格ID,网格名称,城市,战团,餐厅ID,近7天平台单量,近7天推单,餐厅名,餐厅地址(取餐地址),餐品种类,标品属性,全推/选推”等字段,按网格统计餐厅总数、“近7天平台单量”总数,“近7天推单量”总数并以餐厅总数降序排列,在程序中以打印语句输出餐厅总数前10位的网格相关信息。
===网格id:
***,网格名称:
***,近7天平台总单量:
***,近7天推单总量:
***===
子任务2
聚类分析又称群分析,它是研究分类问题的一种统计分析方法,同时也是数据挖掘的一个重要算法。
聚类分析是由若干模式组成的。
通常,模式是一个度量的向量,或者是多维空间中的一个点。
聚类分析以相似性为基础,同一个聚类簇中的模式之间具有相似性,不同聚类簇之间具有相异性。
在商业上,聚类可以帮助平台市场分析人员从数据中区分出不同的商家群体,并提取每一类商家的经营模式。
它作为数据挖掘中的一个模块,可以作为一个单独的工具以发现数据中的深层的信息,并且提取出每一类样本的特点,或者把注意力放在某一个特定的类上以作进一步的分析;
同时,聚类分析也可以作为数据挖掘算法中其他分析算法的一个预处理步骤。
本题数据请采用数据清洗的结果数据集/diliveryoutput2中数据源。
选择数据分析的维度通常分为用户维度、行为维度和产品维度,想要对外卖平台入驻商家进行聚类划分,有侧重地分类评估商家对平台的价值,首先需要针对商家数据选择核心数据集,为确保聚类模型收敛速度与质量,以及消除量纲对聚类结果的影响,首先应对数据进行归一化或标准化处理,再进行数据建模。
请以数据清洗任务结果数据集/diliveryoutput2中数据作为输入数据源,按照如下要求编写Spark程序实现对数据的分析,并保存结果。
1)解析/diliveryoutput2数据源文件。
2)提取商家相关属性数据。
3)针对商家地理位置进行聚类划分。
4)查看聚类结果。
1、编写Spark程序读取/diliveryoutput2数据源文件,筛选北京地区(城市为北京市)商家数据记录,并将结果数据集json文件输出至HDFS文件系统/diliveryoutput4中。
请在程序中以打印语句输出筛选得到数据记录条数,并将打印输出结果复制并保存至对应报告中。
示例格式如下:
===北京地区样本条数为***条===
2、请使用数据挖掘分析任务2的结果数据集/diliveryoutput4,编写Spark程序,根据北京地区商家的经纬度属性,对商家进行k-means聚类,聚类数设为5,迭代次数为2000次,请在程序中以打印语句输出聚类中心、每个类的商家数,以及该类所包含的商圈,并将打印语句复制粘贴至对应报告中。
(复制内容需包含打印语句输出结果的上下各5行运行日志)
=cluster0:
聚类中心为[**,**],商家数为***个,包含商圈:
【*,*,…】=
=cluster1:
3、请使用数据挖掘分析任务2的结果数据集/diliveryoutput4,结合数据挖掘分析任务3的结论,编写Spark程序,分别统计各聚类中在平台A与平台B上架的商家数量,以及同时商家两个平台的商家数量。
在程序中以打印语句输出结果,并将打印语句复制粘贴至对应报告中。
=cluster0:
【*,*,…】,A平台商家数量:
**,B平台商家数量:
**,同时上架A、B平台的商家数量:
**=
=cluster1:
模块D:
数据可视化(20分)
MySQL数据库中的相关数据集包含了城市、地点、商家id、网格id、餐品种类、标品属性等多项基础信息字段。
请使用Flask框架,结合Echarts完成下列任务。
数据库账号:
root密码:
自行创建代码工程路径为C:
\food_delivery
双饼图呈现城市商户业务包占比
外卖平台在不同城市进行推广时应具有不同的侧重方面,城市具有不同的人口数量及特点,例如居住人口数量、工作人口数量、过往人口数量、居民户数和企事业单位数,及相应人口年龄、性别、职业和收入水平构成等。
商户业务包是指该商户在经营定位时所确定的主要消费群体。
不同城市消费群占比不同,大致可以分为大客户,白领,小客户,高校,家庭,其它六个商业业务包。
请根据相关数据集,按任务指定要求,统计并输出城市商户业务包相关的分析图例。
请根据数据库相关数据表中“餐厅id,retailer_id,餐厅名称,城市,商户业务包,配送范围,客单价,推单数,接单数,有效完成单数,投诉率,异常率,欺诈单数,拒单数,商户取消数,客户取消数,系统取消数,配送取消异常数,整体时长,接单时长,到店时长,取餐时长,送达时长,商户投诉数,用户投诉数,差评数,好评数,评价数,最远订单距离,该订单整体时效,该订单接单时效,该订单到店时效,该订单取餐时效,该订单送达时效,该订单评价”等字段,统计不同城市的商业业务包组成,并以双饼图表达。
程序输出及可视化输出时请使用商户业务包中文释义,中文释义对应关系如表1所示。
字母缩写
中文释义
GKA
大客户
BL
白领
SIG
小客户
GX
高效
FML
家庭
OTH
其他
(表1商户业务包中文释义)
1、根据相关数据库数据表中的字段,分析北京与深圳两座城市在商户业务包属性占比方面的差异。
在PyCharm控制台打印输出两座城市不同商户业务包属性的商家数量,以商家数量降序排列。
==北京:
1.商户业务包:
***,商家数量:
***家===
2.商户业务包:
==深圳:
2、使用Flask框架,结合Echarts,完成双饼图输出。
要求标题分别为“北京商户业务包属性占比”(左)、“深圳商户业务包属性占比”(右),顺时针显示次序与打印语句数据一致,将可视化结果截图并保存(截图需包含浏览器地址栏)。
柱状堆叠图呈现商户业务部评价情况
在外卖平台中,用户的评论具有双向影响。
不仅可以促进商家根据消费者评价调整自己的经营策略,也能够影响其他用户的下单率。
相关数据显示,浏览评价的用户比只浏览门店商品的用户下单转化率平均高出25%。
因此,商家的店铺评论对提高下单率是十分重要的。
请根据相关数据集,按任务指定要求,统计并输出评价相关的分析图例。
请根据相关数据表中的数据,统计各商户业务包评价情况,并柱状堆叠图呈现。
程序输出及可视化输出时请使用商户业务包中文释义。
1、根据相关数据表中的数据,参考“餐厅id,retailer_id,餐厅名称,城市,商户业务包,配送范围,客单价,推单数,接单数,有效完成单数,投诉率,异常率,欺诈单数,拒单数,商户取消数,客户取消数,系统取消数,配送取消异常数,整体时长,接单时长,到店时长,取餐时长,送达时长,商户投诉数,用户投诉数,差评数,好评数,评价数,最远订单距离,该订单整体时效,该订单接单时效,该订单到店时效,该订单取餐时效,该订单送达时效,该订单评价”等字段,统计各商户业务包非好评数、好评数,并在PyCharm控制台以评价总数降序打印输出。
==1商户业务包:
***,非好评数:
***条,好评数:
***条===
2、使用Flask框架,结合Echarts,完成柱状堆叠图输出。
横坐标为商户业务包名称(中文释义),纵坐标为评论数量,标题为“各业务包评价组成”,柱图下方为好评数(红色),上方堆叠非好评数(黑色),展示顺序与1)(任务数字编号)打印语句一致,将可视化结果截图并保存(截图需包含浏览器地址栏)。
玫瑰图地图呈现不同业务包投诉占比
投诉是顾客对平台管理和服务不满的表达方式,也是企业有价值的信息来源,它为企业探索更多可能。
分析顾客投诉的种种因素,把顾客的不满转化满意,锁定他们对平台和产品的忠诚,已成为企业营销实践的重要内容之一。
请根据相关数据集,按任务指定要求,统计并输出投诉相关的分析图例。
请根据相关数据库数据表中的数据,参考“餐厅id,retailer_id,餐厅名称,城市,商户业务包,配送范围,客单价,推单数