以下是本人做的测试,如果有错误请及时指正,有问题欢迎一起讨论。

情景:

需要读取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相关推荐

  1. scrapy 保存到mysql_Scrapy保存数据到mysql

    scrapy pipeline 文件如下:class JianshuPipeline(object): def __init__(self): data = { 'host':'localhost', ...

  2. spark从hbase读取写入数据

    将RDD写入hbase 注意点: 依赖: 将lib目录下的hadoop开头jar包.hbase开头jar包添加至classpath 此外还有lib目录下的:zookeeper-3.4.6.jar.me ...

  3. halcon 将数据保存到excel_halcon保存数据到excel表格-怎样把图像里面的数据提取到excel表格里面去?...

    mt4如何将自定义数据保存到excel表格 这种方式嵌入的,目的就是让你没有办法简单复制粘贴.即使通过OCR之类的软件,由于存在底色.水印等,错误率也相当高,意义不是很大. 怎样把图像里面的数据提取到 ...

  4. halcon 将数据保存到excel_Python保存数据到Excel文件的多个sheet

    SEO高手是如何分析竞争对手的一文中的方法,除了可以用于分析竞争对手,还可以每天监控竞争对手的数据动向. 如果想提取出主要竞争对手的排名情况,即排在首页的关键词,对应的着陆页和排名,并将结果保存在Ex ...

  5. mysql数据写入不到数据库_主机无法写入数据到Mysql数据库

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 -- phpMyAdmin SQL Dump -- version 3.3.8.1 -- http://www.phpmyadmin.net -- -- ...

  6. SparkStreaming读取Kafka的Json数据然后保存到MySQL

    一般我们使用SparkStreaming消费kafka数据,获取到数据后解析,使用JDBC的方式写入数据库,如下所示. 以上的方式没什么毛病,但是当我们消费的kafka数据类型比较多样的时候,我们需要 ...

  7. Spark 把RDD数据保存到hdfs单个文件中,而不是目录

    相比于Hadoop,Spark在数据的处理方面更加灵活方便.然而在最近的使用中遇到了一点小麻烦:Spark保存文件的的函数(如saveAsTextFile)在保存数据时都需要新建一个目录,然后在这个目 ...

  8. mysql 查询 系统字段 自然日_吴裕雄--天生自然python数据清洗与数据可视化:MYSQL、MongoDB数据库连接与查询、爬取天猫连衣裙数据保存到MongoDB...

    本博文使用的数据库是MySQL和MongoDB数据库.安装MySQL可以参照我的这篇博文:https://www.cnblogs.com/tszr/p/12112777.html 其中操作Mysql使 ...

  9. 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对 ...

最新文章

  1. 人人都能看懂的 Python 装饰器入门教程
  2. 特斯拉撞了警车:Autopilot全程开启,连撞两车还没自动停下
  3. [导入]浅谈VB.NET中的接口
  4. docker pull 下载一半_Docker 从入门到掉坑
  5. idea配置tomcat必坑指南
  6. Winfrom 弹出窗体位置设定
  7. 教你11 周打造全能Python工程师!
  8. python opencv直方图_【python opencv】直方图均衡
  9. CodeForces 895 B. XK Segments 二分查找
  10. Unity StartCoroutine 和 yield return 深入研究
  11. 判断类型是否继承_【Java学习 | Javase】继承与多态
  12. LTE学习:传输块大小的计算
  13. 计算机组成原理—cpu于主存的连接(例题)
  14. 6. C 语言预处理
  15. 如何下载酷家乐的3D全景图效果图,并生成本地离线版vr全景漫游
  16. Linux并非无毒 十五年病毒简史
  17. java spi 热插拔_利用SPI机制实现责任链模式中的处理类热插拔
  18. Google Dapper,大规模分布式系统的跟踪系统
  19. Android图形图像处理:马赛克(Mosaic)效果【直接可用】
  20. VMware扩展Ubuntu分区容量大小

热门文章

  1. 数据结构实验之图论十:判断给定图是否存在合法拓扑序列
  2. [Google Guava] 排序: Guava强大的”流畅风格比较器”
  3. Dubbo 源码分析 - 服务引用
  4. Vue.js 组件 处理边界情况
  5. git revert改写提交
  6. 浅谈代码的执行效率(3):缓存与局部性
  7. 浅谈线程池(上):线程池的作用及CLR线程池
  8. 【OpenCV3】OpenCV3.0 在WIN8+VS2012环境下的配置
  9. 华为fussioncompute上添加nexentastor作为IPSAN
  10. 文件操作---with语句