吕太之,毕家钦
(江苏海事职业技术学院 信息工程学院,南京 211170)
基于Hadoop平台的岗位分析和推荐系统的构建
吕太之,毕家钦
(江苏海事职业技术学院 信息工程学院,南京 211170)
针对当前学生择业难而学校教学无法满足当前社会实际需求的问题,开发基于Hadoop分布式文件平台的岗位分析和推荐系统,借助大数据相关技术,使教师和学生能及时跟踪就业岗位需要的技能。系统基于大规模数据运算的Hadoop分布式计算平台,使用Spring MVC构建系统架构,综合运用 Webmagic、Map/Reduce、K-means与Canopy算法、相似度推荐算法等技术实现就业岗位的抓取和分析。
大数据;岗位推荐;Hadoop;K-means;Map/Reduce
TP312
A
大数据技术在云计算之后又掀起了一场新的科技革命,现如今已经在医疗、金融、交通、教育等行业中广泛应用[1-2]。
近年来,数字化校园的建设在各大高校已经全面落地,许多高校也在此平台上开发了专属其特点的应用[3]。但是国家和社会高度关注的毕业生就业难的问题依旧普遍存在于各大高校中。就江苏海事职业技术学院而言,建校至今,每年学校推荐来校招聘的企业很多并不符合学生的实际情况,当然也存在学生所学课程和技能无法满足企业需求的问题,学校对此没有建立一套完整的数字化体系。针对学校教学内容和企业招聘无法满足学生就职需求的问题,本文开发了岗位分析与推荐系统,实现了岗位采集、岗位处理、岗位分析与推荐以及岗位展示等功能,为方便教学管理和毕业生择业提供了一种解决方案。
本系统操作员分为管理员和普通用户两类用户。管理员可以对企业中的岗位进行分析来获取岗位发布的数量和对应的技能点,也可以通过学生在校成绩给学生推荐工作。普通用户可以查看发布岗位数量的变化和对应技能点,也可以查看推荐结果。用户用例如图1所示。
图1 用户用例图
本系统分为数据层、逻辑层、表示层,业务流程如下:数据采集、数据处理、分析推荐、数据展示。业务流程如图2所示。
大数据岗位分析与推荐系统的主要功能包括数据采集、数据处理、岗位分析与推荐和数据展 示等。系统的功能模块如图3所示。
图2 业务流程图
图3 普通用户能模块图
首先Map/Reduce模型分为Map任务和Reduce任务,这两个任务都需要交给用户来实现[4-5]。本系统中通过用户定制的Map类来实现岗位的规范化,Map函数对接收到的数据依次进行处理,借助Canopy算法处理产生一组中间键值对,MapReduce框架会将Map函数产生的中间键值对里键相同的值传递给一个Reduce函数。Reduce函数在本系统中不需要用户编写且规模很小,一般为1个或者0个。
K-means算法的实现是通过给定若干个簇心,按照就近原则将待分类的样本点分到各个簇,确定好簇心之后就开始计算点到簇心的距离,将此点聚类到离该点距离最近的簇心[6-7]。最后计算每个聚类中心所有点的坐标平均值,将平均值作为新的聚类中心。
推荐系统通过分析两个成绩,对比向量之间的距离比较相似度,距离越小,相似度越大。首先需要读取文本文件并保存到数组中,然后将数组转化成HDFS中可识别和可执行的序列文件,通过将序列文件转化成可变长度的向量文件之后运行mahout中的相似度推荐算法,计算出距离,分析出结果即可给学生推荐适合的岗位[8]。
系统开发分为数据采集、数据处理、岗位分析与推荐、数据展示等模块。
(1)数据采集模块通过使用Webmagic爬虫框架实现,自定义PageProcesser和Pipeline组件,抓取需要的信息保存到HDFS文件分布式系统中。
(2)数据处理模块通过使用Map/Reduce编程模型对岗位相关信息进行规范化处理,并持久化到数据库,页面效果如图4所示。
(3)岗位分析与推荐模块通过分析在校生成绩文件和毕业生就业文件并转化成向量文件,使用相似度推荐算法比较向量之间的距离,为毕业生推荐合适的就业岗位,推荐结果如图5所示。
(4)数据展示模块基于d3.js可视化技术分别展示了岗位招聘数量变化、岗位对应技能点和推荐结果。岗位数量变化如图6所示。
图4 岗位处理效果图
图5 岗位推荐图
大数据作为一门新的技术,已经在各行各业中得到广泛应用。本系统通过结合运用于大规模数据运算的Hadoop分布式计算平台和大数据技术实现了一个以大学生就业为专题的岗位分析与推荐系统,为解决社会高度关注的大学生择业难问题提供了思路。
基于各种大数据技术,本系统完成了数据采集、数据处理、岗位分析与推荐、数据展示等功能,但是在使用过程中还是有一定的局限性。其中最主要的缺点就是岗位采集过程中只能先把需要采集信息的网站全部下载到本地,有规律地展示到岗位列表之后才能进行采集。课题在后续的研究中会逐步完善和优化系统功能。
图6 岗位数量变化折线图
[1]何清.大数据与云计算[J].科技促进发展,2014,10(1):35-40.
[2]李学龙,龚海刚.大数据系统综述[J].中国科学:信息科学,2015(1):1-44.
[3]范国渠.高校数字化校园整体构建策略与实施[D].济南:山东师范大学,2009.
[4]方少卿,周剑,张明新.基于Map/Reduce的改进选择算法在云计算的Web数据挖掘中的研究[J].计算机应用研究,2013(2):377-379.
[5]毛典辉.基于Map Reduce的Canopy-Kmeans改进算法[J].计算机工程与应用,2012,48(27):22-26.
[6]荣辉桂,火生旭,胡春华,等.基于用户相似度的协同过滤推荐算法[J].通信学报,2014(2):16-24.
[7]王千,王成,冯振元,等.K-means聚类算法研究综述[J].电子设计工程,2012(7):21-24.
[8]贾玉生.基于Hadoop的分布式文本分类研究[D].北京:北京工业大学,2013.
The Construction of Job Analysis and Recommendation System Based on Hadoop Platform
LV Tai-zhi,BI Jia-qin
(School of Information Technology,Jiangsu Maritime Institute,Nanjing 211170,China)
In view of the fact that the current students'job search is difficult,and the school teaching system cannot meet the needs of the current society,an employment analysis and recommendation system based on HDFS distributed file system is developed to realize the informatization management of graduate employment.By big data technology,it is possible for universities to track the latest skills required for posts.The system development is based on HDFS distributed file system,uses the Spring MVC framework,and combines the Webmagic,Map/Reduce programming model,K-means and canopy algorithm,similarity recommendation algorithm in the big data effectively and effectively to realizes the job capture and analysis.
BigData;EmploymentRecommendation;Hadoop;K-means;Map/Reduce
1673-2022(2017)04-0001-04
2017-07-10
第二届江苏省高校中青年骨干教师和校长境外研修项目(苏教师〔2012〕6号);江苏海事职业技术学院千帆团队建设项目(201507);江苏省青蓝工程优秀青年骨干教师(苏教师〔2017〕5号)
吕太之(1979-),男,江苏南京人,高级工程师,研究方向为计算机应用、职业教育;毕家钦(1996-),男,安徽安庆人,研究方向为计算机应用。