大数据项目实战
第一章 项目概述
文章目录
- 大数据项目实战
- 第一章 项目概述
- 学习目标
- 一、项目需求和目标
- 二、预备知识
- 三、项目架构设计及技术选取
- 四、开发环境和开发工具介绍
- 五、项目开发流程
- 总结
学习目标
掌握项目需求和目标
了解项目架构设计和技术选型
了解项目环境和相关开发工具
理解项目开发流程
在人力资源管理领域,网络招聘近年来早已凭借其范围广、信息量大、时效性强、流程简单而效果显著等优势,成为企业招聘的核心方式。随着大数据渐渐融入人类社会生活的各个领域,如何使用大数据优化企业招聘管理,提升企业招聘有效性,是值得深入探讨的现实课题。文章通过一个招聘网站分析项目,完整演示如何使用大数据平台对国内大数据职位进行分析。
一、项目需求和目标
本项目是以国内某互联网招聘网站全球范围内的大数据相关招聘信息作为基础数据,其招聘信息能较大程度地反映出市场对大数据相关职位的需求情况及能力要求,利用这些招聘信息数据通过大数据分析平台重点分析以下几点。
(1)分析大数据职位的区域分布情况。
(2)分析大数据职位薪资区间分布情况。
(3)分析大数据职位相关公司的福利情况。
(4)分析大数据职位相关技能要求情况。
通过本次项目的实践,可以锻炼以下方面的能力。
(1)掌握 Linux 操作系统的安装和基本操作。
(2)掌握 Hadoop 完全分布式集群的安装部署。
(3)掌握 HDFS Shell 基础操作命令。
(4)掌握基于 Java 语言开发 MapReduce程序的方法。
(5)掌握使用 Eclipse 开发 Maven程序的方法。
(6)掌握使用 Eclipse 开发 Maven 程序的方法。
(7)了解数据预处理的含义。
(8)了解 HTTP 相关概念。
(9)掌握 Sqoop 安装及数据迁移的使用方法。
(10)掌握关系型数据库 MySQL 的安装及使用。
(11)掌握基于 SSM 框架进行网站开发的方法。
(12)掌握利用 ECharts 进行数据可视化开发的方法。
(13)熟悉数据分析系统的架构。
(14)掌握数据分析系统的业务流程。
二、预备知识
(1)熟悉 Java 相面对象编程思想。
(2)熟悉大数据相关技术,如 Hadoop Hive Sqoop 的基本理论概念及原理。
(3)掌握 HDFS 与 MapReduce 的 Java API 程序开发。
(4)熟悉 Linux 操作系统 Shell 命令的使用。
(5)掌握 Hadoop Hive Sqoop 在 Linux 环境下的基本操作。
(6)熟悉关系型数据库 MySQL 的原理,掌握 SQL 语句的编写。
(7)了解网站前端开发相关技术,例如 HTML JSP JQuery CSS 等。
(8)了解网站后端开发框架 Spring + Spring MVC + MyBatis 整合使用。
(9)熟悉 Eclipse 开发工具的应用。
(10)熟悉 Maven 项目管理工具的使用。
三、项目架构设计及技术选取
在大数据开发中,通常首要任务是明确分析目的,即想要从大量数据中得到什么样的结果,并且进行展示说明。只有在明确了分析目的后,开发人员才能准确地根据具体的需求去过滤数据,并且通过大数据技术进行数据分析和处理,最终处理结果以图表等可视化形式发展出来。本项目架构设计如图所示。
四、开发环境和开发工具介绍
系统环境:Win10、Win7、Linux(CentOs 6.7)
开发工具:Eclipse(jee-neon-3)、JDK(1.8)、Maven(3.3.9)、VMware Workstation(12)
集群环境:Hadoop(2.7.4)、Hive(1.2.1)、Sqoop(1.4.6)、MySQL(5.7.25)
Web环境:Tomcat(7.0.47)、Spring(4.2.4)、Spring MVC(4.2.4)、MyBatis(3.2.8)、ECharts(4.2.1)
五、项目开发流程
1、搭建大数据实验环境
(1)Linux系统虚拟机的安装与克隆
(2)配置虚拟机网络与SSH服务
(3)搭建Hadoop集群
(4)安装MySQL数据库
(5)安装Hive
(6)安装Sqoop
2、编写网络爬虫程序进行数据采集
(1)准备爬虫环境
(2)编写爬虫程序
(3)将爬取的数据存储到HDFS
3、数据预处理
(1)分析预处理数据
(2)准备预处理环境
(3)实现MapReduce预处理程序进行数据集成和数据转换操作
(4)实现MapReduce预处理程序的两种运行模式
4、数据分析
(1)构建数据仓库
(2)通过HiveQL进行职位区域分析
(3)通过HiveQL进行职位薪资分析
(4)通过HiveQL进行公司福利标签分析
(5)通过HiveQL进行技能标签分析
5、数据可视化
(1)构建关系型数据库
(2)通过Sqoop实现数据迁移
(3)创建Maven项目配置项目依赖
(4)编辑配置文件整合SSM框架
(5)完善项目组织框架
(6)编写程序实现薪资分布展示
(7)编写程序实现职位区域分布展示
(8)编写程序实现福利标签词云图
(9)编写程序实现技能标签词云图
(10)预览平台展示内容
总结
本篇主要介绍了项目开发的基本情况,包括项目需求、项目目标、项目预备知识、项目架构设计、技术选取、开发环境、开发工具以及开发流程。通过本篇的学习,可以明确项目需求、了解项目开发相关环境以及流程,后续将基于本次介绍的项目情况进行项目的开发。