2023_Spark_实验十七:导入招聘大数据(项目)

news2024/11/26 4:48:41

一、爬虫爬取的招聘网站数据

二、在MySQL中创建空表

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for jd_jobs
-- ----------------------------
DROP TABLE IF EXISTS `jd_jobs`;
CREATE TABLE `jd_jobs` (
  `job_name` text,
  `job_date` text,
  `minSale` text,
  `maxSale` text,
  `job_city` text,
  `job_area` text,
  `company_nature` text,
  `company_size_min` text,
  `company_size_max` text,
  `company_Industry` text
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

三、通过Spark导入招聘数据到MySQL中

以下是完整代码:


import java.util.Properties



import com.niit.util.{LoggerLevel, SparkUnit}



object SparkSQL_MySQL extends LoggerLevel {

def main(args: Array[String]): Unit = {

/**

* 读取数据,写入MySQL

*

* 实现:

* 1. 读取文件

* 2. 转为table操作对象

* 3. 写SQL查询

* 4. 保存查询SQL的对象

**/



val ss = SparkUnit.getLocalSparkSession("OffLine")



// 读取两个文件

val path = "D:\\temp\\"

val jd_jobs = ss.read

.option("header", false)

.option("encoding","gbk")

.option("delimiter", ",")

.csv(path + "51_jobs_data.csv").toDF("job_name", "job_date", "minSale","maxSale","job_city","job_area","company_nature","company_size_min","company_size_max","company_Industry")

jd_jobs.show()

// SQL式编程需要转为table结构

jd_jobs.createTempView("jd_jobs")



// select

val jobs = ss.sql(

"""

| SELECT job_name, job_date, minSale, maxSale,job_city,job_area,

| company_nature,company_size_min,company_size_max,company_Industry

| from jd_jobs

|""".stripMargin)



// JDBC

val url = "jdbc:mysql://localhost:3306/bigdata?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&serverTimezone=UTC"

val tb = "jd_jobs"

val properties = new Properties()

properties.setProperty("user", "root")

properties.setProperty("password", "123456")

properties.setProperty("driverClass", "com.mysql.jdbc.Driver")



// save

jobs.write.mode("overwrite").jdbc(url, tb, properties)



// tips :除了查询SQL返回对象,然后保存对象

// 还可以直接create table as select ... 一步到位

}

}

四、导入MySQL

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1097402.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【无标题】markdow 模板

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…

Springboot项目中加载Groovy脚本并调用其内部方代码实现

前言 项目中部署到多个煤矿的上,每一种煤矿的情况都相同,涉及到支架的算法得写好几套,于是想到用脚本实现差异变化多的算法!一开始想到用java调用js脚本去实现,因为这个不需要引入格外的包,js对我来说也没…

【Java基础面试一】、为什么Java代码可以实现一次编写、到处运行?

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:为什么Java代码可以实现…

uniapp(uncloud) 使用生态开发接口详情(1简单的创建)

开发接口对比时间: 用java开发接口周期太长, 大概5-6个月左右 用php 开发接口周期同样太长, 大概3-4个月左右 用node.js 开发接口周期相对短一点, 大概1-2个月左右 用uniapp 开发接口, 可以不到 1-2周的时间 这里我使用 uniapp 开发接口, 废话不多说了,直接开干 HBuilder官网(…

头像Css

现有如下的图标,他这外层的白色圆圈是border,你敢信 .top-bar__img {margin: 0 8px 0 5px;padding: 2px;width: 30px;height: 30px;border-radius: 100%;box-sizing: border-box;border: 1px solid #eee;vertical-align: middle; }

《软件方法》2023版第1章(08)使用UML的理由,挑破乱七八糟图的脓包

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 1.3 UML 1.3.2 使用UML的理由 在开发团队中,不乏刻意排斥UML的人。这些人如果只是不使用UML,改为使用其他标准的图形表示法(如BPMN)&a…

城市综合管廊运维的系统集成方案

摘 要:从网络拓扑结构、开放式实时以太网协议、控制层系统配置方面介绍了综合管廊的系统网络架构设计,分析了无线网络特性,阐述了基于HTML5架构所能实现的功能的初步构想,以便于综合管廊运维人员巡检,确保管廊本体安全…

NodeMCU ESP8266 基于Arduino IDE的串口图形化调试教程(超详细)

NodeMCU ESP8266 基于Arduino IDE的串口图形化调试教程 文章目录 NodeMCU ESP8266 基于Arduino IDE的串口图形化调试教程前言Serial Plotter测试前期准备打开工具方法 1方法 2 测试代码 总结 前言 在嵌入式的开发过程中,我们经常会采集一些传感器的数据&#xff0c…

MVCC与BufferPool缓存机制

MVCC多版本并发控制机制 Mysql在可重复读隔离级别下如何保证事务较高的隔离性,我们上节课给大家演示过,同样的sql查询语句在一个事务里多次执行查询结果相同,就算其它事务对数据有修改也不会影响当前事务sql语句的查询结果。 这个隔离性就是…

游戏开发年度报告 | 2023年游戏开发团队最流行的制作和发行的方式

近期,Perforce发布了《2023游戏开发与设计现状报告》。此报告调查了来自全球各地的游戏开发专业人士,了解他们面临的主要开发挑战、使用的工具和流程,以及目前最让他们对这个行业感到兴奋的方面。 龙智作为Perforce授权合作伙伴,将…

wifi指纹室内定位系统 计算机竞赛

简介 今天来介绍一下室内定位相关的原理以及实现方法; WIFI全称WirelessFidelity,在中文里又称作“行动热点”,是Wi-Fi联盟制造商的商标做为产品的品牌认证,是一个创建于IEEE 802.11标准的无线局域网技术。基于两套系统的密切相关&#xff…

MBR10100CT-ASEMI肖特基二极管MBR10100CT

编辑:ll MBR10100CT-ASEMI肖特基二极管MBR10100CT 型号:MBR10100CT 品牌:ASEMI 芯片个数:2 封装:TO-220 恢复时间:>50ns 工作温度:-65C~175C 浪涌电流:150A 正向…

【微前端】single-spa 到底是个什么鬼

前言 说起微前端框架,很多人第一反应就是 single-spa。但是再问深入一点:它是干嘛的,它有什么用,可能就回答不出来了。 一方面没多少人研究和使用微前端。可能还没来得及用微前端扩展项目,公司就已经倒闭了。 另一方…

关于京东API数据接口业务的详细介绍

参数说明 通用参数说明 url说明 https://…….cn/平台/API类型/ 平台:淘宝,京东等, API类型:[item_search,item_get,item_search_shop等]version:API版本key:调用key,测试key:test_api_keysecret:调用secret,测试secret:(不用填写)cache:[ye…

长沙上市公司董秘联谊会,来啦!

上市公司的数量,是判断一座城市经济实力的重要指标。 在当前复杂的竞争环境中,提升上市公司的数量和质量,以产业思维促进城市内外的上市公司合作交流,是城市提升经济综合实力的有效举措。 10月13日,在由长沙市委统战…

2023年中国电信运营商IT支撑系统市场规模及销量、均价分析[图]

电信运营商IT支撑系统能够为最终用户管理服务,并且管理与底层网络功能有关的服务――涵盖跨众多网络的服务设计、履行和保证,针对各个客户群。电信运营商IT支撑系统有助于跨不同类型的网络(包括物理网络、虚拟网络和混合网络)交付…

代理现货白银有什么手续

成为现货白银代理商的好处有很多,一方面打理依然可以像普通投资者那样,采用平台的交易服务,直接在市场上通过交易,赚取高杠杆所带来的高回报,另一方面还可以根据自己客户的交易量,从平台获得一定的返佣&…

Linux下企业级夜莺监控分析工具的远程访问设置【内网穿透】

文章目录 前言1. Linux 部署Nightingale2. 本地访问测试3. Linux 安装cpolar4. 配置Nightingale公网访问地址5. 公网远程访问Nightingale管理界面6. 固定Nightingale公网地址 前言 夜莺监控是一款开源云原生观测分析工具,采用 All-in-One 的设计理念,集…

【计算机毕设选题推荐】蛋糕甜品店管理系统SpringBoot+SSM+Vue

前言:我是IT源码社,从事计算机开发行业数年,专注Java领域,专业提供程序设计开发、源码分享、技术指导讲解、定制和毕业设计服务 项目名 基于SpringBoot的蛋糕甜品店管理系统 技术栈 SpringBootSSMVueMySQLMaven 文章目录 一、蛋糕…

java springboot VUE美术外包平台系统前后端分离开发mysql数据库web结构java编程计算机网页源码maven项目

一、源码特点 springboot VUE 美术外包平台系统是一套完善的完整信息管理类型系统,结合springboot框架和VUE完成本系统,对理解JSP java编程开发语言有帮助系统采用springboot框架(MVC模式开发),系统具有完整的源代码…