需求分析
- 引言
1.1. 背景
目前全国范围内的高职院校普遍开设“大数据技术与应用”专业或方向。除大数据技术与应用专业学生外,计算机应用技术、计算机网络技术、软件技术、软件与信息服务、云计算技术与应用、电子商务技术等相关专业的学生,经过短期培训和备赛也可以参加大数据技术与应用赛项竞赛。
大数据技术与应用赛项以国家大数据战略规划为依据进行竞赛内容的设计,服务国家大数据战略,推进大数据相关的技术资源开放共享;通过赛项检验高职院校大数据技术与应用及相关专业的教学水平、人才培养模式,协助高职院校大数据技术与应用等专业及方向的人才培养,缩小大数据人才与行业需求的差距,是响应国家大数据战略实施的具体措施。
参赛选手需要按照赛题要求完成业务需求分析,形成设计文档,考察选手的业务分析能力;基于大数据实训管理系统,综合运用数据抓取工具、Hadoop、HDFS、Hive、Flume、Spark等主流大数据平台及框架,TensorFlow、Scikit-learn机器学习库,numpy 、matplotlib、D3.js、EChart.js、HighChart.js等数据可视化库、Python等开发语言和技术,匹配和链接数据源,完成数据采集、数据提取、清洗、转换、分析等操作,生成分析结果并实现可视化呈现,最终依据项目需求完成数据分析报告。
本赛项是对参赛选手大数据知识、技能和应用能力的综合检验,从实际企业项目出发完成大数据项目各阶段需要掌握的技能的考察,在一定程度上促进了高职院校大数据技术与应用相关专业及课程建设促进学生综合应用能力和职业素质的同步提高,提升毕业生的就业竞争力。
赛题:为完成四合影业的项目,“TMS”公司选用了在业界广泛应用的“Python”语言,作为开发分析程序的基础语言,并综合利用numpy、pandas、matplotlib、scikit 模块和MapReduce技术提高开发效率,由于预计数据量会超过“T”级,“TMS”公司在技术方案中提出在一个高性能工作站集群上利用Hadoop平台提高数据处理能力,并利用Hive以及streaming技术提高效能和简化MapReduce过程。但此技术方案需要较高成本,为向“四合影业”展示该技术方案的合理性并达成与“四合影业”的合作,“TMS”公司先用廉价PC集群,配置了小规模的技术演示环境,并利用网络爬虫抓取了历年来影音娱乐行业的信息,数据量约为4G,随后开发了程序对数据进行清洗、整理、计算、表达、分析,力求展示 “TMS”技术方案的合理性和自身出色的技术能力。
1.2.系统安装和环境配置
- hadoop分布式文件系统
- Python环境以及相对应的各个模块以及组件
- Word及excel等文档分析
设备类别 |
软件类别 |
软件名称 |
服务端 |
竞赛系统运行操作系统 |
Centos7.0 |
客户端 |
桌面操作系统 |
Windows10 |
虚拟环境 |
Virtualbox 5.1 |
|
虚拟操作系统 |
Ubuntu 14.04 LTS |
|
大数据平台软件 |
Hadoop 2.7.1 |
|
开发语言 |
Python2.7.12 |
|
数据分析工具 |
Pandas 0.9.12 |
|
Python集成开发环境 |
pycharm-community-2016.3.2 |
|
浏览器 |
Chrome/firefox |
|
文档编辑器 |
Office 2007及以上版本 |
2. 功能需求
1.完成hadoop平台部署,并根据计算对象进行性能调优
2.完成爬虫的数据抓取
3.根据抓取内容进行数据清洗和分析
4.完成分析报告
3.任务需求
1.部署Hadoop平台,并根据计算对象调优Hadoop平台的性能
要求:根据要求完成hadoop平台的配置,完成后运行jps命令
- 按步骤存入用户目录,并导入存于竞赛平台arg目录中的数据文件dat0102.dat,完成hadoop平台性能测试。
要求:创建用户hadoop,并且上传数据文件,使用hadoop-mapreduce-examples-2.7.3.jar测试文件来运行命令
- Hadoop系统性能调优
- 数据抓取
要求:
1.从spider.log筛选出有效数据,并以规定格式保存于ans0201.csv文件中
- 编写程序抓取网页(网页样本保存于task0202目录中)上电影的评分信息并计算其统计信息(统计方法指对某部电影的评分求极值或求平均值)
- 向Hadoop平台提交日志文件dat0203.log,并使用streaming和MapReduce机制编制程序,统计日志文件dat0203.log的数据中一共包含多少部电影
- 根据给定的数据文件dat0204.log编写Hive命令建立数据表,并将dat0204.log导入所建立的数据表,然后编写Hive查询语句获取2014全年上映电影的数据记录,并将查询结果导入Hadoop平台的result目录
5.数据清洗以及数据分析
要求:
- 编程统计并输出影片A的上映天数和日平均票房(文件中的所有涉及地区总平均),程序源代码保存成ans0301.py,并将结果保存于ans0301.dat,要求ans0301.dat只包含1个long型数据和一个1个浮点型数据,浮点数据以万元为单位,保留6位小数,2个数以英文逗号分隔,不换行
- 编程绘制一个直方图,在图中输出影片A、B、C的周平均票房(文件中的所有涉及地区周票房总平均),Y轴表示票房收入,单位万元;X轴表示电影名称,电影名称的排列从左至右以A、B、C为准,要求将输出的直方图保存成图像文件ans0302.jpg,程序源代码保存成ans0302.py,另外,将三部电影各自的票房总收入按自高到低的顺序存入ans0302.dat文件中,要求ans0302.dat中只包含3个浮点型票房数据,以万元为单位,保留6位小数,数据以英文逗号分隔,不换行
- 编程,在一个折线图中,画出影片A、B、C各自的周票房(文件中的所有涉及地区总周票房)收入变化,要求将输出的折线图保存成图像文件ans0303.jpg,程序源代码保存成ans0303.py,Y轴表示票房收入,单位为“万元”;X轴表示时间,以“0、1、2、3…n”的非负整数作为刻度值,单位为“周”
- 编程,在一个子图系统中,用两个水平排列的折线型子图画出M市和N市2016年1至3月的上映电影的票房总收入趋势,要求将输出的完整子图保存成图像文件ans0304.jpg;程序源代码保存成ans0304.py
6.从arg04子目录中选取需要的数据文件,依据观影俱乐部的观众评分(评分为10分制),利用统计图表分析说明影片类型、导演等因素对观众的影响,以及导演擅长的电影类型,最后预测某观影俱乐部中的5位会员对于《青春的竞赛》的评分范围,本赛题需要提交分析报告和相关程序
工作量估算
模块 |
任务 |
工作量 |
Hadoop系统调优 |
Hadoop完全分布式搭建 |
|
Hadoop系统调优 |
||
Hadoop总结 |
||
爬取数据 |
Spider.log数据清洗 |
1周 |
网页信息爬取 |
||
Spark streaming,mapreduce数据计算 |
||
Hive数据分析 |
||
爬虫总结 |
||
数据分析 |
票房统计 |
|
直方图绘制 |
1周 |
|
折线图 |
||
票房收入趋势图 |
||
数据分析以及可视化总结 |
||
报告编写 |
系统分析报告以及程序源码 |
1周 |