spark保存到mysql_Spark写入数据到MySQL
以下是本人做的测试,如果有错误请及时指正,有问题欢迎一起讨论。
情景:
需要读取HDFS上的数据,处理之后,写入到MySQL数据库里面去。
实现:
1、版本
spark版本:1.2.1
MySQL版本:5.6.21
2、数据准备
HDFS上:
MySQL里:
3、spark代码
package sparkTest
import java.sql.{DriverManager, PreparedStatement, Connection}
import org.apache.spark.{SparkContext, SparkConf}
object sparkToMysql {
case class info(info1: String, info2: Int)
def toMySQL(iterator: Iterator[(String, Int)]): Unit = {
var conn: Connection = null
var ps: PreparedStatement = null
val sql = "insert into info(info1, info2) values (?, ?)"
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/spark_test", "root", "111111")
iterator.foreach(dataIn => {
ps = conn.prepareStatement(sql)
ps.setString(1, dataIn._1)
ps.setInt(2, dataIn._2)
ps.executeUpdate()
}
)
} catch {
case e: Exception => e.printStackTrace()
} finally {
if (ps != null) {
ps.close()
}
if (conn != null) {
conn.close()
}
}
}
def main(args: Array[String]) {
val conf = new SparkConf().setAppName("sparkToMysql").setMaster("local")
val sc = new SparkContext(conf)
val dataFromHDFS=sc.textFile(args(0)).map(_.split("\\^")).map(line => (line(0),line(1).toInt))
dataFromHDFS.foreachPartition(toMySQL)
}
}
4、运行
/home/lenovo/spark-1.2.1/bin/spark-submit \
--class sparkTest.sparkToMysql \
--driver-class-path /home/lenovo/mysql-connector-java-5.0.8.jar \
/home/lenovo/sparkTest/sparkToMysql.jar \
hdfs://master:9000/sparkToMysql
5、结果
spark保存到mysql_Spark写入数据到MySQL相关推荐
- scrapy 保存到mysql_Scrapy保存数据到mysql
scrapy pipeline 文件如下:class JianshuPipeline(object): def __init__(self): data = { 'host':'localhost', ...
- spark从hbase读取写入数据
将RDD写入hbase 注意点: 依赖: 将lib目录下的hadoop开头jar包.hbase开头jar包添加至classpath 此外还有lib目录下的:zookeeper-3.4.6.jar.me ...
- halcon 将数据保存到excel_halcon保存数据到excel表格-怎样把图像里面的数据提取到excel表格里面去?...
mt4如何将自定义数据保存到excel表格 这种方式嵌入的,目的就是让你没有办法简单复制粘贴.即使通过OCR之类的软件,由于存在底色.水印等,错误率也相当高,意义不是很大. 怎样把图像里面的数据提取到 ...
- halcon 将数据保存到excel_Python保存数据到Excel文件的多个sheet
SEO高手是如何分析竞争对手的一文中的方法,除了可以用于分析竞争对手,还可以每天监控竞争对手的数据动向. 如果想提取出主要竞争对手的排名情况,即排在首页的关键词,对应的着陆页和排名,并将结果保存在Ex ...
- mysql数据写入不到数据库_主机无法写入数据到Mysql数据库
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 -- phpMyAdmin SQL Dump -- version 3.3.8.1 -- http://www.phpmyadmin.net -- -- ...
- SparkStreaming读取Kafka的Json数据然后保存到MySQL
一般我们使用SparkStreaming消费kafka数据,获取到数据后解析,使用JDBC的方式写入数据库,如下所示. 以上的方式没什么毛病,但是当我们消费的kafka数据类型比较多样的时候,我们需要 ...
- Spark 把RDD数据保存到hdfs单个文件中,而不是目录
相比于Hadoop,Spark在数据的处理方面更加灵活方便.然而在最近的使用中遇到了一点小麻烦:Spark保存文件的的函数(如saveAsTextFile)在保存数据时都需要新建一个目录,然后在这个目 ...
- mysql 查询 系统字段 自然日_吴裕雄--天生自然python数据清洗与数据可视化:MYSQL、MongoDB数据库连接与查询、爬取天猫连衣裙数据保存到MongoDB...
本博文使用的数据库是MySQL和MongoDB数据库.安装MySQL可以参照我的这篇博文:https://www.cnblogs.com/tszr/p/12112777.html 其中操作Mysql使 ...
- Scrapy中将数据保存到Excel和MySQL中
目录标题 1. Excel 1.1 openpyxl 1.1.1 代码说明 1.1.2 注意 1.2 pandas 1.2.1 代码说明 1.2.2 常见错误 1.3 openpyxl和pandas对 ...
最新文章
- 人人都能看懂的 Python 装饰器入门教程
- 特斯拉撞了警车:Autopilot全程开启,连撞两车还没自动停下
- [导入]浅谈VB.NET中的接口
- docker pull 下载一半_Docker 从入门到掉坑
- idea配置tomcat必坑指南
- Winfrom 弹出窗体位置设定
- 教你11 周打造全能Python工程师!
- python opencv直方图_【python opencv】直方图均衡
- CodeForces 895 B. XK Segments 二分查找
- Unity StartCoroutine 和 yield return 深入研究
- 判断类型是否继承_【Java学习 | Javase】继承与多态
- LTE学习:传输块大小的计算
- 计算机组成原理—cpu于主存的连接(例题)
- 6. C 语言预处理
- 如何下载酷家乐的3D全景图效果图,并生成本地离线版vr全景漫游
- Linux并非无毒 十五年病毒简史
- java spi 热插拔_利用SPI机制实现责任链模式中的处理类热插拔
- Google Dapper,大规模分布式系统的跟踪系统
- Android图形图像处理:马赛克(Mosaic)效果【直接可用】
- VMware扩展Ubuntu分区容量大小