赞
踩
# cd $HIVE_HOME
# bin/hive
hive>create database jobdata;
hive>use jobdata;
- create table ods_jobdata_origin(
- city string COMMENT '城市',
- salary array<String> COMMENT '薪资',
- company array<String> COMMENT '福利',
- kill array<String> COMMENT '技能')
- COMMENT '原始职位数据表'
- ROW FORMAT DELIMITED
- FIELDS TERMINATED BY ','
- COLLECTION ITEMS TERMINATED BY '-'
- STORED AS TEXTFILE;
- hive>load data inpath '/JobData/output/part-r-00000' overwrite into table ods_jobdata_origin ;
-
- hive>select * from ods_jobdata_origin;
- hive>create table ods_jobdata_detail(
- city string COMMENT '城市',
- salary array<String> COMMENT '薪资',
- company array<String> COMMENT '福利',
- kill array<String> COMMENT '技能',
- low_salary int COMMENT '低薪资',
- high_salary int COMMENT '高薪资',
- avg_salary double COMMENT '平均薪资')
- COMMENT '职位数据明细表'
- ROW FORMAT DELIMITED
- FIELDS TERMINATED BY ','
- STORED AS TEXTFILE;
- hive>insert overwrite table ods_jobdata_detail
- select
- city,salary,company,kill,salary[0],salary[1],(
- salary[0]+salary[1])/2
- from ods_jobdata_origin;
- hive>create table t_ods_tmp_salary as
- select explode(ojo.salary) from
- ods_jobdata_origin ojo;
- hive>create table t_ods_tmp_salary_dist as
- select case when col>=0 and col<=5 then '0-5'
- when col>=6 and col<=10 then '6-10'
- when col>=11 and col<=15 then '11-15'
- when col>=16 and col<=20 then '16-20'
- when col>=21 and col<=25 then '21-25'
- when col>=26 and col<=30 then '26-30'
- when col>=31 and col<=35 then '31-35'
- when col>=36 and col<=40 then '36-40'
- when col>=41 and col<=45 then '41-45'
- when col>=46 and col<=50 then '46-50'
- when col>=51 and col<=55 then '51-55'
- when col>=56 and col<=60 then '56-60'
- when col>=61 and col<=65 then '61-65'
- when col>=66 and col<=70 then '66-70'
- when col>=71 and col<=75 then '71-75'
- when col>=76 and col<=80 then '76-80'
- when col>=81 and col<=85 then '81-85'
- when col>=86 and col<=90 then '86-90'
- when col>=91 and col<=95 then '91-95'
- when col>=96 and col<=100 then '96-100'
- when col>=101 then '>101' end from
- t_ods_tmp_salary;

- hive>create table t_ods_tmp_company as
- select explode(ojo.company)
- from ods_jobdata_origin ojo;
- hive>create table t_ods_tmp_kill as
- select explode(ojo.kill)
- from ods_jobdata_origin ojo;
- hive>create table t_ods_kill(
- every_kill String comment '技能标签',
- count int comment '词频')
- COMMENT '技能标签词频统计'
- ROW FORMAT DELIMITED
- fields terminated by ','
- STORED AS TEXTFILE;
- hive>create table t_ods_company(
- every_company String comment '福利标签',
- count int comment '词频')
- COMMENT '福利标签词频统计'
- ROW FORMAT DELIMITED
- fields terminated by ','
- STORED AS TEXTFILE;
- hive>create table t_ods_city(
- every_city String comment '城市',
- count int comment '词频')
- COMMENT '城市统计'
- ROW FORMAT DELIMITED
- fields terminated by ','
- STORED AS TEXTFILE;
- hive>insert overwrite table t_ods_city
- select city,count(1)
- from ods_jobdata_origin group by city;
-
- hive>select * from t_ods_city sort by count desc;
- hive>create table t_ods_salary(
- every_partition String comment '薪资分布',
- count int comment '聚合统计')
- COMMENT '薪资分布聚合统计'
- ROW FORMAT DELIMITED
- fields terminated by ','
- STORED AS TEXTFILE;
- hive>insert overwrite table t_ods_salary
- select `_c0`,count(1)
- from t_ods_tmp_salary_dist group by `_c0`;
-
- hive>select * from t_ods_salary sort by count desc;
- hive>select avg(avg_salary) from ods_jobdata_detail;
-
- hive>select avg_salary,count(1) as cnt from ods_jobdata_detail group by avg_salary order by cnt desc limit 1;
-
- hive>select percentile(cast(avg_salary as BIGINT),0.5) from ods_jobdata_detail;
- hive>select city,count(city),round(avg(avg_salary),2) as cnt
- from ods_jobdata_detail
- group by city order by cnt desc;
- hive>insert overwrite table t_ods_company
- select col,count(1)
- from t_ods_tmp_company group by col;
-
- hive>select every_company,count
- from t_ods_company
- sort by count desc limit 10;
systemctl status mysqld.service 查看状态
- create table t_city_count(
- city varchar(30) DEFAULT NULL,
- count int(5) DEFAULT NULL)
- ENGINE=InnoDB DEFAULT CHARSET=utf8;
- create table t_salary_dist(
- salary varchar(30) DEFAULT NULL,
- count int(5) DEFAULT NULL)
- ENGINE=InnoDB DEFAULT CHARSET=utf8;
- create table t_company_count(
- company varchar(30) DEFAULT NULL,
- count int(5) DEFAULT NULL)
- ENGINE=InnoDB DEFAULT CHARSET=utf8;
- create table t_kill_count(
- kills varchar(30) DEFAULT NULL,
- count int(5) DEFAULT NULL)
- ENGINE=InnoDB DEFAULT CHARSET=utf8;
- bin/sqoop export \
- --connect jdbc:mysql://hadoop101:3306/JobData?characterEncoding=UTF-8 \
- --username root \
- --password 123456 \
- --table t_city_count \
- --columns "city,count" \
- --fields-terminated-by ',' \
- --export-dir /user/hive/warehouse/jobdata.db/t_ods_city;
在这个目录下执行上面的命令
- bin/sqoop export \
- --connect jdbc:mysql://hadoop101:3306/JobData?characterEncoding=UTF-8 \
- --username root \
- --password 123456 \
- --table t_salary_dist \
- --columns "salary,count" \
- --fields-terminated-by ',' \
- --export-dir /user/hive/warehouse/jobdata.db/t_ods_salary;
- bin/sqoop export \
- --connect jdbc:mysql://hadoop101:3306/JobData?characterEncoding=UTF-8 \
- --username root \
- --password 123456 \
- --table t_company_count \
- --columns "company,count" \
- --fields-terminated-by ',' \
- --export-dir /user/hive/warehouse/jobdata.db/t_ods_company;
- bin/sqoop export \
- --connect jdbc:mysql://hadoop101:3306/JobData?characterEncoding=UTF-8 \
- --username root \
- --password 123456 \
- --table t_kill_count \
- --columns "kills,count" \
- --fields-terminated-by ',' \
- --export-dir /user/hive/warehouse/jobdata.db/t_ods_kill;
pom.xml添加内容
- <dependencies>
- <!--1.阿里云json处理jar包-->
- <dependency>
- <groupId>org.codehaus.jettison</groupId>
- <artifactId>jettison</artifactId>
- <version>1.5.4</version>
- </dependency>
-
- <!--2.spring-context-->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-context</artifactId>
- <version>5.2.5.RELEASE</version>
- </dependency>
-
- <!--3.spring-beans-->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-beans</artifactId>
- <version>5.2.5.RELEASE</version>
- </dependency>
-
- <!--4.spring-webmvc 网站设计-->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-webmvc</artifactId>
- <version>5.2.5.RELEASE</version>
- </dependency>
-
- <!--5.spring-jdbc连接数据库-->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-jdbc</artifactId>
- <version>5.2.5.RELEASE</version>
- </dependency>
-
- <!--6.spring-aspects是AOP切面编程-->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-aspects</artifactId>
- <version>5.2.5.RELEASE</version>
- </dependency>
-
- <!--7.spring-jms异步消息通信-->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-jms</artifactId>
- <version>5.2.5.RELEASE</version>
- </dependency>
-
- <!--8.spring-context-support框架扩展模块-->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-context-support</artifactId>
- <version>5.2.5.RELEASE</version>
- </dependency>
-
- <!--9.mybatis框架-->
- <dependency>
- <groupId>org.mybatis</groupId>
- <artifactId>mybatis</artifactId>
- <version>3.5.1</version>
- </dependency>
-
-
- <!--10.mybatis-spring-->
- <dependency>
- <groupId>org.mybatis</groupId>
- <artifactId>mybatis-spring</artifactId>
- <version>1.3.1</version>
- </dependency>
-
- <!--11.mybatis分页插件-->
- <dependency>
- <groupId>com.github.miemiedev</groupId>
- <artifactId>mybatis-paginator</artifactId>
- <version>1.2.15</version>
- </dependency>
-
- <!--12.mysql驱动模块-->
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>5.1.9</version>
- </dependency>
-
- <!--13.阿里巴巴数据库连接池-->
- <dependency>
- <groupId>com.alibaba</groupId>
- <artifactId>druid</artifactId>
- <version>1.2.16</version>
- <exclusions>
- <exclusion>
- <groupId>com.alibaba</groupId>
- <artifactId>jconsole</artifactId>
- </exclusion>
- <exclusion>
- <groupId>com.alibaba</groupId>
- <artifactId>tools</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <!--14.jsp的标准标签库-->
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>jstl</artifactId>
- <version>1.2</version>
- </dependency>
-
- <!--15.servlet的标准API-->
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>servlet-api</artifactId>
- <version>2.5</version>
- </dependency>
-
- <!--16.jsp的标准API-->
- <dependency>
- <groupId>javax.servlet.jsp</groupId>
- <artifactId>jsp-api</artifactId>
- <version>2.1</version>
- </dependency>
-
- <!--17.测试包-->
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.12</version>
- <scope>test</scope>
- </dependency>
- <!--18.处理JSON数据类型-->
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-databind</artifactId>
- <version>2.10.1</version>
- </dependency>
-
- <!--19.面向切面编程的功能模块-->
- <dependency>
- <groupId>org.aspectj</groupId>
- <artifactId>aspectjweaver</artifactId>
- <version>1.9.22</version>
- </dependency>
- </dependencies>

- <build>
- <finalName>JobData-Web</finalName>
- <!--资源搜索设置-->
- <resources>
- <!--1.搜索java文件夹中类型-->
- <resource>
- <directory>src/main/java</directory>
- <includes>
- <include>**/*.properties</include>
- <include>**/*.xml</include>
- </includes>
- <filtering>false</filtering>
- </resource>
- <!--2.搜索resources文件夹的类型-->
- <resource>
- <directory>src/main/resources</directory>
- <includes>
- <include>**/*.properties</include>
- <include>**/*.xml</include>
- </includes>
- </resource>
- </resources>
-
- <!--插件管理-->
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.1</version>
- <configuration>
- <source>1.8</source>
- <target>1.8</target>
- <encoding>UTF-8</encoding>
- </configuration>
- </plugin>
- </plugins>
-
- </build>

- jdbc.driver=com.mysql.jdbc.Driver
- jdbc.url=jdbc:mysql://hadoop101:3306/JobData?characterEncoding=utf8
- jdbc.username=root
- jdbc.password=123456
将其放在根盘符下,解压缩tomcat到其目录E:\apache-tomcat-8.5.61
删除上方红框内容
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cityServiceImpl': Unsatisfied dependency expressed through field 'mapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'cn.aust.mapper.CityMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
出现该问题解决方案
最终效果展示:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。