全国职业院校技能大赛大数据题库任务书1文档格式.docx
《全国职业院校技能大赛大数据题库任务书1文档格式.docx》由会员分享,可在线阅读,更多相关《全国职业院校技能大赛大数据题库任务书1文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
为完成该项工作,你所在的小组将应用大数据技术,以Python、Java、Scala作为整个项目的基础开发语言,基于大数据平台综合利用MapReduce、Spark、MySQL、Scrapy、Flask、ECharts等,对数据进行获取、处理、清洗、挖掘、分析、可视化呈现,力求实现对公司未来的重点战略方向提出建议。
你们作为该小组的技术人员,请按照下面任务完成本次工作,并编制综合报告。
模块A:
Hadoop平台及组件的部署管理(15分)
环境说明:
编号
主机名
类型
用户
密码
1
master
主节点
root
123456
2
slave1
从节点
3
slave2
补充说明:
主节点MySQL数据库用户名/密码:
root/123456
相关软件安装包在/chinaskills目录下
所有模块中应用命令必须采用绝对路径
任务一:
HadoopHA部署管理
本环节需要使用root用户完成相关配置,安装Hadoop需要配置前置环境,具体部署要求如下:
1、将/chinaskills下的JDK包解压到/usr/local/src路径下,命令复制并粘贴至对应报告中;
2、设置JDK环境变量,并使环境变量只对当前root用户生效;
将环境变量配置内容复制并粘贴至对应报告中;
3、从master复制JDK环境变量文件到slave1、slave2节点,命令和结果复制并粘贴至对应报告中;
4、配置SSH密钥登录,实现从master登录到slave1,命令和结果复制并粘贴至对应报告中;
5、Zookeeper配置完毕后,在slave2节点启动Zookeeper,查看Zookeeper运行状态,将命令和结果复制并粘贴至对应报告中;
6、Zookeeper、HadoopHA配置完毕后,在master节点启动Hadoop,并查看服务进程状态,并将结果复制并粘贴至对应报告中;
7、HadoopHA配置完毕后,在slave1节点查看服务进程,将命令及结果复制并粘贴至对应报告中。
任务二:
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并保存命令输出结果,将结果输出复制粘贴至对应报告中。
任务三:
Sqoop组件部署管理
1、解压/chinaskills路径下的Sqoop安装包到/usr/local/src路径下,并使用相关命令,修改解压后文件夹名为sqoop,进入sqoop文件夹,并将查看内容复制粘贴至对应报告中;
2、修改Sqoop环境变量,并使环境变量只对当前root用户生效,并将变量内容复制粘贴至对应报告中;
3、修改并配置sqoop-env.sh文件,并将修改内容复制粘贴至对应报告中;
4、测试Sqoop连接MySQL数据库是否成功,结果复制粘贴至对应报告中。
模块B:
数据采集与处理(20分)
项目背景说明
1、查看餐饮外送统计平台网站源码结构。
1)打开网站,在网页中右键点击检查,或者F12快捷键,查看源码页面;
2)检查网站:
浏览网站源码查看所需内容。
2、从餐饮外送统计平台中采集需要数据,按照要求使用Python语言编写代码工程,获取指定数据项,并对结果数据集进行必要的数据处理。
请将符合任务要求的结果复制粘贴至对应报告中。
具体步骤如下:
1)创建工程工程项目:
C:
\food_delivery_crawl
2)构建采集请求
3)按要求定义相关字段
4)获取有效数据
5)将获取到的数据保存到指定位置
6)对数据集进行基础的数据处理
至此已从餐饮外送统计平台中获取所需数据,并完成了必要的基础的数据处理。
3、每条数据记录请以单独一行保存,信息存储格式为key:
value。
文件保存路径为:
\output。
示例:
{"
rest_id"
:
"
***"
"
rest_name"
……},
……
爬取网页信息
自行创建Scrapy工程编写爬虫代码,爬取“配送平台数据”与“店铺运营数据”页面相关数据,通过爬虫代码分页爬取,将使用re解析分页链接的程序源代码复制粘贴至对应报告中。
爬取指定文件
运行代码,爬取“配送平台数据”与“店铺运营数据”页面相关数据分别至range_audited.json、grey_value.json文件。
查看文件并填写采集到的记录行数,并将答案复制粘贴至对应报告中。
示例格式:
range_audited.json行数为:
grey_value.json行数为:
属性判断
审查爬取的range_audited数据,判断属性“申请递交时间”与“申请时间”是否为重复属性。
如果为重复属性,则删除“申请时间”,并输出前10条数据记录;
如果不是重复属性,请输出数据集中数值不相同的记录条数。
并将答案复制粘贴至对应报告中。
任务四:
数据探索
针对爬取的grey_value数据,利用DataFrame.describe方法探索数据基本情况,将输出结果复制粘贴至对应报告中。
任务五:
缺失值统计
针对缺失值较多的属性“推单数-8日”,“有效完成率-8日”,“超时率-8日”,请分别计算下列任务,并将正确答案复制粘贴至对应报告中。
(1)属性“推单数-8日”空值记录条数为:
,中位数为:
。
(2)属性“有效完成率-8日”空值记录条数为:
,平均值为:
(3)属性“超时率-8日”空值记录条数为:
。
任务六:
缺失值处理
请根据任务5中计算的结果,对数据集中存在空值的字段使用均值进行填充。
查看填充后的数据集前5条记录,将查看结果复制粘贴至对应报告中。
模块C:
数据清洗与挖掘分析(25分)
餐饮外卖平台的核心价值体现在配送,而配送的价值则依赖于商家与客户的双向选择。
外卖平台通常会通过内容激活消费者和商家两个群体的活跃度。
消费者会参考平台展示的内容选择商家,商家也会以消费者评价与平台统计数据为依据调整策略,由此再吸引更多的用户下单、评论、形成正向循环。
保证配送的时效与品质是从优化用户体验的角度,吸引更多的用户参与,进而带动商家不断入驻。
由此,商家、消费者、骑手在平台上形成越来越多的真实可靠的数据,帮助消费者更好的做出消费决策,同时促进商家提高服务质量。
而平台通过数据,不断调整优化服务,从而不断提升这种多边网络效应。
提升网络效应的直接结果就是用户和商家规模大幅提升,进而形成规模效应——降低获客成本、提高效益,并且不断提升自己的行业壁垒。
为探索各大外卖平台的市场策略与经营模式,现已从平台获取到了原始数据集,包含“餐厅id,retailer_id,餐厅名称,城市,商户业务包,配送范围,客单价,推单数,接单数,有效完成单数,投诉率,异常率,欺诈单数,拒单数,商户取消数,客户取消数,系统取消数,配送取消异常数,整体时长,接单时长,到店时长,取餐时长,送达时长,商户投诉数,用户投诉数,差评数,好评数,评价数,最远订单距离,该订单整体时效,该订单接单时效,该订单到店时效,该订单取餐时效,该订单送达时效,该订单评价”字段。
为保障用户隐私和行业敏感信息,已经对数据脱敏。
数据脱敏是指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。
在涉及客户安全数据或一些商业性敏感数据的情况下,对真实数据进行改造并提供测试使用,如身份证号、手机号等个人敏感信息都需要进行数据脱敏。
本题已将脱敏后的数据存放于平台对应任务/chinaskills目录下。
工程所需配置文件pom.xml存放于“C:
\清洗配置文件”。
任务中所有命令务必使用绝对路径。
数据清洗
子任务1
任务背景:
数据源为众多网站及平台的数据汇总,且为多次采集的结果,在整合多来源数据时可能遇到数据冲突,或数据拼接导致的属性列矛盾等情况。
请根据任务具体参数要求,针对原始数据集中不符合业务逻辑的属性列进行清洗,并写入指定的数据库或数据文件,复制并保存结果。
任务描述:
数据源文件存放于平台对应任务/chinaskills目录下,其中属性“推单数”是指外卖平台通过顾客点单向商家推送的订单数量,“接单数”为商家根据自身情况,最终选择接受订单的数量。
一般来说,商家对于平台推送的订单,排除自身原因,例如原材料耗尽、用户下单时店铺已经打烊等特殊情况,都会选择接单。
请按照如下要求编写Spark程序对数据进行清洗,并将结果输出/diliveryoutput1。
1)分析/chinaskills中json数据文件
2)针对属性列“推单数”、“接单数”,排查并删除异常数据条目
3)程序打包并在Spark平台运行,结果输出至HDFS文件系统/diliveryoutput1
具体任务要求:
1、将相关文件上传至HDFS新建目录/platform_data中,编写Spark程序,剔除属性列“推单数”小于“接单数”的异常数据条目,并在程序中以打印语句输出异常条数。
将打印输出结果复制并保存至对应报告中。
(复制内容需包含打印语句输出结果的上下各5行运行日志)。
示例格式:
===“推单数”小于“接单数”的异常数据条数为***条===
2、程序打包并在Spark平台运行,将剔除异常数据后的结果数据集json文件输出至HDFS文件系统/diliveryoutput1(将分区数设置为1)。
并查看输出文件前5条记录,将查看命令与执行结果复制粘贴至对应报告中。
子任务2
客单价是指客户在该商铺