IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 大数据技术基础综合项目——牛客网招聘岗位统计分析 -> 正文阅读

[大数据]大数据技术基础综合项目——牛客网招聘岗位统计分析



大数据技术基础综合项目——牛客网招聘岗位统计分析


在这里插入图片描述


零、实验环境说明

1. 操作系统:Ubuntu 16.04

2. Hadoop:Hadoop 2.7.1

3. Sqoop:Sqoop 1.4.6

4. Hbase:Hbase 1.1.5

5. Hive:Hive 1.2.1

6. MySQL:MySQL 5.7.16

7. IDE:

  • Eclipse 3.8
  • IntelliJ IDEA 2019.2

8. 可视化工具:Echarts


一、数据爬取及说明

1、数据来源:牛客网

2、数据量:18000条左右

3、数据字段:岗位名称、工作地点、学历要求、薪资、公司名称、反馈率、反馈时长、岗位发布时间等。

4、部分原始数据如下:

在这里插入图片描述


二、数据预处理阶段

2.1 删除空行的数据

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bU5hvNsl-1655643460358)(images/删除空行数据.png)]

2.2 区分实习与非实习岗位

(1)处理详情

若岗位名称含有“实习”、“转正”,在其字段后加入“_0”,作为实习岗位的标识。

其他情况,则在其字段后加入“_1”,作为非实习岗位的标识。

(2)初始数据

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BliCFOfL-1655643460359)(images/初始数据1.jpg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7XvrreGv-1655643460359)(images/初始数据2.jpg)]

(3)处理结果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-V7pNkkL1-1655643460360)(images/结果1.jpg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JYRI6FZi-1655643460361)(images/结果2.jpg)]

(4)所有数据的position字段都区分完毕

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hOlj5nah-1655643460361)(images/区分结果.jpg)]

2.3 岗位预处理

(1)处理详情

包含“数据“的简化成”数据岗“;

包含“运营“的简化成”运营岗“;

包含“算法“的简化成”算法岗“;

包含“开发“、”前端“、”客户“、”测试“、”后端“、”C++“、”Java“的简化成”数据岗“;

包含“工程“的简化成”工程岗“;

包含“设计“的简化成”设计岗“;

包含“策划“的简化成”策划岗“;

包含“培训“的简化成”培训岗“;

其他的岗位名称一律处理成“其他“

(2)处理前

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q7V6Tgae-1655643460362)(images/岗位处理前.jpg)]

(3)处理后

在这里插入图片描述

在这里插入图片描述

2.4 薪资处理

(1)预处理操作

为方便计算,实习岗位的 [薪资面议] 处理为150元/天,非实习岗位的 [薪资面议] 处理为13K*12薪

(2)薪资面议处理前

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YefIP2kf-1655643460365)(images/薪资面议处理前1.jpg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sbgdH3DQ-1655643460366)(images/薪资面议处理前2.jpg)]

(3)薪资面议处理后

在这里插入图片描述

在这里插入图片描述

2.5 薪资平均化处理

(1)处理详情

为了方便统计 薪资取区间的中间值(默认下取整)。例如:

8-10K12薪 --> 9K12薪

15-30K15薪 --> 22K15薪

300-400元/天 --> 350元/天

(2)处理后

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WOjJYaEj-1655643460368)(images/薪资平均化处理后1.jpg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EVYAru0u-1655643460369)(images/薪资平均化处理后2.jpg)]

2.6 薪资处理

处理详情:将薪资处理为万元/年(非实习)和千元/月(实习)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xL2lp2Ig-1655643460369)(images/薪资处理1.jpg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0wzejdlk-1655643460370)(images/薪资处理2.jpg)]

2.7 空反馈率的处理

(1)若反馈率为空,自定义设置为 0.5。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aVpHMfgu-1655643460371)(images/空反馈率处理.jpg)]

(2)处理后:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yyTeQ3qr-1655643460371)(images/空反馈率处理后1.jpg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rYnpxwXZ-1655643460372)(images/空反馈率处理后2.jpg)]

2.8 空反馈时长的处理

(1)若反馈时长为空,自定义为 7天。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vTdkU9aC-1655643460373)(images/空反馈时长处理.jpg)]

(2)处理后:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CgIzdQvq-1655643460373)(images/空反馈时长处理后1.jpg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Cfxi0f25-1655643460374)(images/空反馈时长处理后2.jpg)]

2.9 反馈时长的处理

(1)将反馈时长处理成拥有单个数值的字符串,比如:”7天“ 转换为 ”7“

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eeM047oT-1655643460375)(images/反馈时长处理.jpg)]

(2)处理后:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-20wG2lIW-1655643460375)(images/反馈时长处理后1.jpg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OuXRRxPx-1655643460376)(images/反馈时长处理后2.jpg)]

2.10 数据日期的处理

爬取到的数据(招聘岗位)并没有相应的发布日期,但是可以确定的是爬取的数据(招聘岗位)的日期范围为2022年3月初到5月底,这里采用脚本date.sh 随机为每行数据生成一个日期时间。步骤如下:

提前将数据上传至Linux中

进入到数据的目录,编写脚本 date.sh

node1@node1-VirtualBox:/usr/local/NCJob$ vim date.sh 

(3)执行脚本

node1@node1-VirtualBox:/usr/local/NCJob$ bash ./date.sh job.txt jobdata.txt
#!/bin/bash
infile=$1
outfile=$2
awk -F "\t" 'BEGIN{
srand();
        id=0;
        Date[0]="2022-03-03";Date[1]="2022-03-04";Date[2]="2022-03-05";Date[3]="2022-03-06";Date[4]="2022-03-07";
        Date[5]="2022-03-10";Date[6]="2022-03-12";Date[7]="2022-03-14";Date[8]="2022-03-15";Date[9]="2022-03-18";
        Date[10]="2022-03-19";Date[11]="2022-03-20";Date[12]="2022-03-21";Date[13]="2022-03-23";Date[14]="2022-03-24";
        Date[15]="2022-03-28";Date[16]="2022-03-30";Date[17]="2022-04-06";Date[18]="2022-04-07";Date[19]="2022-04-08";
        Date[20]="2022-04-09";Date[21]="2022-04-10";Date[22]="2022-04-12";Date[23]="2022-04-14"; Date[24]="2022-04-15";
        Date[25]="2022-05-09";Date[26]="2022-05-10";Date[27]="2022-05-12";Date[28]="2022-05-14"; Date[29]="2022-05-15";
        Date[30]="2022-05-19";Date[31]="2022-04-20";Date[32]="2022-04-12";Date[33]="2022-05-24"; Date[34]="2022-05-30";
    }
    {
        id=id+1;
        value=int(rand()*34);       
        print id"\t"$1"\t"$2"\t"$3"\t"$4"\t"$5"\t"$6"\t"$7"\t"Date[value]
    }' $infile> $outfile

查看前5行数据

node1@node1-VirtualBox:/usr/local/NCJob$ head -5 jobdata.txt

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-T6Ud3j0u-1655643460378)(images/初始数据.jpg)]

三、上传数据到HDFS

3.1 上传数据到HDFS

node1@node1-VirtualBox:/usr/local/hadoop-2.7.1$ bin/hdfs dfs -mkdir -p /NCJob/data
node1@node1-VirtualBox:/usr/local/hadoop-2.7.1$ bin/hdfs dfs -put /usr/local/NCJob/jobdata.txt /NCJob/data 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nRruMGh7-1655643460379)(images/hdfs数据.jpg)]

3.2 查看数据

node1@node1-VirtualBox:/usr/local/hadoop-2.7.1$ bin/hdfs dfs -cat   /NCJob/data/jobdata.txt | head -5   

在这里插入图片描述

3.3 在Hive上创建数据库

启动MySQL服务

node1@node1-VirtualBox:/usr/local/NCJob$ service mysql status   

启动Hive

node1@node1-VirtualBox:/usr/local/hive-1.2.1$ ./bin/hive   

创建数据库

  hive> create database NCJob;

创建外部表

create external table NCJob.job (   
id int,   
pub_date string,   
position string,   
adress string,   
education string,   
salary double,   
company string,   
rate double,   
duration int   
)   
row format delimited fields terminated by '\t'   
stored as textfile   location '/NCJob/data';    

查询表

  • 查看表属性
show create table job   

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8AO7o0TP-1655643460379)(images/查看hdfs数据.jpg)]

或者:

desc job;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rqO4zQ9e-1655643460381)(images/表属性2.jpg)]

查看部分数据:

 hive> select * from job limit 5;  

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J4VGtoEP-1655643460381)(images/部分数据.jpg)]

查询反馈时长:

 hive> select duration from job limit   5;  

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qI6etejO-1655643460382)(images/查看反馈时长.jpg)]

四、Hive数据分析

4.1 简单查询分析

查看前10个岗位的反馈时长和对应的公司

 hive> select company, duration from   job limit 5;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5RWmk5wB-1655643460383)(images/前5-1.jpg)]

嵌套语句的使用

hive> select t.pd, t.edu from (select   pub_date as pd,education as edu from job) as t limit 5;   

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xeA2fSyO-1655643460383)(images/前5-2.jpg)]

4.2 查询条数统计分析

聚合函数count()计算job表中有多少行数

hive> select count(*) from job;   

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c0uoTmII-1655643460384)(images/count.jpg)]

使用distinct查看岗位名称(position)不重复的有多少条

   hive> select count(distinct position)   from job;   

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YVkaUWET-1655643460385)(images/distinct.jpg)]

查询不重复的数据有多少条

select count(*) from (   
select id, pub_date, position, adress, education, salary, company, rate, duration   
from job    
group by id, pub_date, position, adress, education, salary, company, rate, duration   
having count(*) = 1   
) t;   

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rFMRhSSO-1655643460386)(images/all.jpg)]

可以看到不存在重复的数据(job表一共有17986条数据)

4.3 关键字条件查询分析

4.3.1 以关键字的存在区间为条件的查询**

使用where关键字查询2022年3月4号到2022年4月1号发布了多少个岗位招聘

 hive> select count(*) from job where   pub_date < '2022-04-01' and pub_date > '2022-03-04';   

执行结果如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DGJqwA2X-1655643460386)(images/month3-4.jpg)]

以月的第n天为统计单位,依次显示第n天发布岗位招聘的个数

hive> select count(distinct position),   day(pub_date) from job group by day(pub_date);   

执行结果如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hBCPL1qX-1655643460387)(images/第N天岗位数量.jpg)]

4.3.2 关键字赋予特定值作为条件,对其他数据进行分析

统计非实习且学历要求为本科的岗位数量

select COUNT(education)   from job   where substr(position, -1, 2) = 1 and   education = '本科'; 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WUTX661n-1655643460388)(images/本科.jpg)]

4.4 根据学历要求分析

查询学历要求为本科占所有岗位的比例

select COUNT(education)   from job   where education = '本科';  

执行结果:

在这里插入图片描述

则比例为 16218/17986 = 90.2%

查询学历要求为硕士占所有岗位的比例

select COUNT(education)   from job   where education = '硕士';   

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8Qq7PkFD-1655643460388)(images/本科比例.jpg)]

则比例为 726/17986 = 4.0%

查询学历要求为博士占所有岗位的比例

select COUNT(education)   from job   where education = '博士';      

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i9V81tJi-1655643460389)(images/硕士比例.jpg)]

则比例为 1042/17986 = 5.8%

统计实习薪资前十(单位:千元/月)

select DISTINCT(salary)   from job   where substr(position, -1, 2) = 0   order by salary desc   limit 10;  

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YJ0yxIAJ-1655643460390)(images/薪资前十.jpg)]

统计非实习薪资前十(单位:万元/月)

select DISTINCT(salary)   from job   where substr(position, -1, 2) = 1   order by salary desc   limit 10;   

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rMBXiCS8-1655643460391)(images/fefei非实习薪资前十.jpg)]

五、Hive、MySQL、Hbase数据互导

5.1 Hive预操作

1. 创建临时表job_tmp

create table NCJob.job_tmp (   
id int,   
pub_date string,   
position string,   
adress string,   
education string,   
salary double,   
company string,   
rate double,   
duration int  
)   
row format delimited fields terminated by '\t'   
stored as   textfile;  

执行结果:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Hk4FL9v3-1655643460392)(images/临时表.jpg)]

2. 将job表的数据插入到job_tmp

?

hive> insert  overwrite table NCjob.job_tmp select * from NCjob.job ;  
  1. 查看数据是否插入成功:
 hive> select *   from job_tmp limit 10; 

执行结果如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NeUEaGNi-1655643460392)(images/前10数据.jpg)]

5.2 Sqoop将数据从Hive导入MySQL

5.2.1 将临时表 job_tmp的数据从Hive导入MySQL中**

(1)登录MySQL

 $mysql –uroot –p   

(2)创建数据库

mysql> show   databases ;   mysql> create   database NCJob ;   mysql> use NCJob;

(3)查看数据库编码:

mysql> show   variables like "char%"; 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-buTakc3b-1655643460393)(images/s数据库编码.jpg)]

(4)创建表

create table job_tmp (   
id varchar(10),   
pub_date DATE,   
position   varchar(30),   
adress   varchar(255),   
education   varchar(30),   
salary   varchar(10),   
company   varchar(50),   
rate varchar(10),   
duration   varchar(10)   
) engine = InnoDB DEFAULT CHARSET = utf8;   

退出MySQL

Mysql>exit;   

(5)导入数据

导入命令:

./bin/sqoop export   --connect jdbc:mysql://localhost:3306/NCJob --username root --password 123456   --table job_tmp --export-dir '/user/hive/warehouse/ncjob.db/job_tmp'   --fields-terminated-by '\t';   

执行结果如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WhOraxuL-1655643460394)(images/hive2mysql.jpg)]

5.2.2 查看MySQL中job_tmp表的数据

 $mysql –u root -p   
 mysql> use   NCJob;   
 mysql> select *   from job_tmp limit 5;

?

执行结果如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PgSoFAcX-1655643460394)(images/msyql.jpg)]

5.3 使用Sqoop将数据从MySQL导入Hbase

(1)启动Hadoop集群、MySQL服务、Hbase服务

node1@node1-VirtualBox:~$ start-dfs.sh   node1@node1-VirtualBox:~$ start-yarn.sh   node1@node1-VirtualBox:~$ service mysql start   node1@node1-VirtualBox:/usr/local/hbase-1.1.5$   ./bin/start-hbase.sh   

(2)启动Hbase Shell

node1@node1-VirtualBox:/usr/local/hbase-1.1.5$ ./bin/hbase shell   

(3)创建表 job_tmp

hbase(main):002:0> create 'job_tmp', {NAME => 'f1',   VERSIONS=> 5}   

(4)导入数据

node1@node1-VirtualBox:~$ cd   /usr/local/sqoop-1.4.6_hadoop-2.0.4-alpha/   node1@node1-VirtualBox:/usr/local/sqoop-1.4.6_hadoop-2.0.4-alpha$   ./bin/sqoop import --connect jdbc:mysql://localhost:3306/NCJob --username   root --password root --table job_tmp --hbase-table job_tmp --column-family f1   --hbase-row-key id --hbase-create-table -m 1   

执行结果如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dOAJVPbj-1655643460395)(images/mysql2hbasewithsqoop.jpg)]

(5)查看Hbase中job_tmp表的数据

hbase(main):005:0> scan ‘job_tmp’,{LIMIT => 5}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vGtMafHW-1655643460396)(file:///C:/Users/浪险人/AppData/Local/Temp/msohtmlclip1/01/clip_image104.jpg)]

5.4 使用Hbase Java API把数据从本地导入到Hbase中

(1)启动Hadoop集群、Hbase服务

node1@node1-VirtualBox:~$ start-dfs.sh   node1@node1-VirtualBox:~$ start-yarn.sh   node1@node1-VirtualBox:/usr/local/hbase-1.1.5$   ./bin/start-hbase.sh

(2)数据准备

  • 复制HDFS上的数据到本地文件系统
node1@node1-VirtualBox:/usr/local/NCJob/data$   /usr/local/hadoop-2.7.1/bin/hdfs dfs -get   /user/hive/warehouse/ncjob.db/job_tmp .   
  • 查看前5行数据:
node1@node1-VirtualBox:/usr/local/NCJob/data$ cat ./job_tmp/* |   head -5   

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-34aBmgKS-1655643460396)(images/前5-3.jpg)]

  • 将00000*文件复制一份并重命名为job_tmp.output
node1@node1-VirtualBox:/usr/local/NCJob/data$ cat   ./job_tmp/00000* > job_tmp.output   

(3)编写数据导入程序

  • 将该程序的Jar包导出到/usr/local/NCJob/data/hbase/路径下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JK0nUsSe-1655643460397)(images/数据导入.jpg)]

(4)数据导入

  • 清空job_tmp表中的数据
hbase(main):007:0> truncate 'job_tmp'   

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ANIszbQh-1655643460397)(images/清空表.jpg)]

  • 运行jar包
node1@node1-VirtualBox:~$ cd /usr/local/hadoop-2.7.1/   node1@node1-VirtualBox:/usr/local/hadoop-2.7.1$ bin/hadoop jar   /usr/local/NCJob/data/hbase/ImportHbase.jar HbaseImport   /usr/local/NCJob/data/job_tmp.output 
  • 运行结果如下:每执行1000条数据打印一条信息

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zQURDNI8-1655643460398)(../../../../%E5%86%99%E4%BD%9C/BigData/%E5%A4%A7%E6%95%B0%E6%8D%AE%E7%BB%BC%E5%90%88%E9%A1%B9%E7%9B%AE/NowCoder%E6%8B%9B%E8%81%98%E5%B2%97%E4%BD%8D%E7%BB%9F%E8%AE%A1%E5%88%86%E6%9E%90/images/print.jpg)]

(5) 查看Hbase中job_tmp表的数据

 hbase(main):008:0> scan 'job_tmp',{LIMIT=>3}   

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-saJIOZ2G-1655643460399)(../../../../%E5%86%99%E4%BD%9C/BigData/%E5%A4%A7%E6%95%B0%E6%8D%AE%E7%BB%BC%E5%90%88%E9%A1%B9%E7%9B%AE/NowCoder%E6%8B%9B%E8%81%98%E5%B2%97%E4%BD%8D%E7%BB%9F%E8%AE%A1%E5%88%86%E6%9E%90/images/addr%E5%AF%BC%E5%87%BA.jpg)]

六、MapReduce编程统计分析

6.1 利用MapReduce统计各个城市的岗位数量

(1)将Hive查询的地址字段(address)结果导出到HDFS中

insert overwrite directory '/input' select adress from job;   

执行结果如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-33L5MmVY-1655643460399)(images/查询结果.jpg)]

(2)运行Jar包

 node1@node1-VirtualBox:/usr/local/hadoop-2.7.1$ ./bin/hadoop jar   ./myapp/NCJob-1.0-SNAPSHOT.jar com.node1.mr.GetAddrDriver /input /output   

(3)查看输出文件:

node1@node1-VirtualBox:/usr/local/hadoop-2.7.1$ ./bin/hdfs dfs   -ls /output   

(4)查看统计结果:

node1@node1-VirtualBox:/usr/local/hadoop-2.7.1$ ./bin/hdfs dfs   -cat /output/part-r-00000   

(5)结果如下:

三亚    476   
三明    3   
上海    11687   
东莞    85   
东营    6   
中山    6  
临沂    6   
丹东    90   
乌海    256   
乌鲁木齐    3   
乐山    3   
九江    9   
云浮    3   
佛山    18   
佳木斯  3   
保定    15   
兰州    15   
内江    3   
凉山彝族自治州  3   
包头    60   
北京    13505   
十堰    3   
南京    5491   
南充    3   
南宁    33   
南昌    15  
南沙开发区  3  
南通    54  
即墨    6  
厦门    5454   
台北    3   
台州    3   
合肥    27   
吉林    3   
哈尔滨  18   
唐山    329   
嘉兴    3  
城阳    6  
大同    281  
大连    24   
天津    73   
太原    84  
威海    6   
孝感    3   
宁波    19   
安顺    6   
宜宾    3   
巴中    3   
常州    39   
常德    3 
平度    6  
广元    3   
广安    3  
广州    7058   
张家口  63   
徐州    9   
德州    6   
德阳    3   
忻州    78   
惠州    6   
成都    7251   
扬州    36   
承德    92   
抚顺    78   
揭阳    6   
攀枝花  3   
无锡    104   
日照    6   
昆明    18   
晋中    30   
晋城    505   
朔州    60   
本溪    105   
杭州    7556   
枣庄    6   
柳州    9  
梅州    6   
武汉    5510  
汕头    12   
汕尾    6  
江门    6   
沈阳    27   
河源    6   
泉州    2   
泰安    9   
泰州    3   
泸州    3  
洛阳    3   
济南    45   
济宁    6   
海口    42   
海阳    6   
淄博    9   
淮南    15  
深圳    8729   
清远    15   
温州    3  
湖州    9   
湛江    6   
滨州 	  6   
潍坊    6   
潮州    6   
烟台    12   
玉林    12   
珠海    204   
甘孜藏族自治州  3  
眉山    3   
石家庄  81   
福州    47   
秦皇岛  533   
绍兴    3   
绵阳    3   
聊城    6  
肇庆    6  
胶南    6   
胶州    6   
自贡    3   
苏州    302  
茂名    3   
荆门    3  
莱芜    6   
莱西    6   
菏泽    6  
衡水    15  
西安    4726   
贵阳    24   
资阳    3   
赤峰    385   
达州    3   
运城    135   
通辽    470   
遂宁    3   
邢台    304   
邯郸    449   郑州    27   
鄂尔多斯    75   
重庆    588   
锦州    18   
长春    36   
长沙    57   
长治    382   
阜新    15   
阳江    6   
阳泉    501   
阿坝藏族羌族自治州  3   
雅安    3   
青岛    208   
韶关    6   
香港    18   
黄冈    3   
黄岛    6   
齐齐哈尔    3  

七、数据可视化分析

数据可视化通过Web端展示

7.1 统计一线大厂岗位情况

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hAf9hgO2-1655643460400)(images/大厂情况.jpg)]

(1) 实习

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9qhEv1pJ-1655643460401)(images/实习大厂情况.jpg)]

(2)非实习

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cBnqBHRn-1655643460402)(images/非实习大厂情况.jpg)]

7.2 岗位数量统计分析

(1)统计岗位数量前十的城市

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OSZmlKuC-1655643460402)(images/前十岗位数量.jpg)]

(2)统计2022年3-5月份的岗位梳数量

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WkGqtUrB-1655643460403)(images/Month3-5.jpg)]

7.3 学历要求统计分析

(1)统计非实习岗位学历要求

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MRufmVJy-1655643460404)(images/实习edu.jpg)]

(2)统计实习岗位学历要求

在这里插入图片描述

7.4 薪资统计分析

(1)统计薪资前十的公司

在这里插入图片描述

(2)统计实习每个岗位的平均薪资

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jGiHQYrY-1655643460405)(images/实习avg(salary)].jpg)

(3)统计非实习每个岗位的平均薪资

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FMpfIKwM-1655643460406)(images/非实习avg(salary)].jpg)

7.5 反馈评估统计分析

(1)统计平均反馈率和平均反馈时长

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PdYvoo7p-1655643460407)(images/评估1.jpg)]

(2) 统计平均反馈时长前十长的公司(实习)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Pi7PUc3t-1655643460407)(images/评估2.jpg)]

(3)统计平均反馈时长前十短的公司(实习)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zEOHyj2t-1655643460408)(images/评估3.jpg)]

(4)统计平均反馈时长前十长的公司(非实习)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-h86AgCaI-1655643460408)(images/评估4.jpg)]

(5)统计平均反馈时长前十短的公司(非实习)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ChqvA6RK-1655643460409)(images/评估5.jpg)]

(6)统计反馈时长前十短的公司(实习)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6nutO9WC-1655643460410)(images/评估6.jpg)]

(7)统计反馈时长前十短的公司(非实习)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1p8XFmBh-1655643460410)(images/评估7.jpg)]

八、参考资料

林子雨《大数据基础编程、实验和案例教程》

顺利完成

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-06-23 00:55:58  更:2022-06-23 00:56:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 20:53:24-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码