spark笔记之数据源之JDBC

1. JDBC

Spark SQL可以通过JDBC从关系型数据库中读取数据的方式创建DataFrame,通过对DataFrame一系列的计算后,还可以将数据再写回关系型数据库中。

1.1. SparkSql从MySQL中加载数据
1.1.1 通过IDEA编写SparkSql代码

《spark笔记之数据源之JDBC》
《spark笔记之数据源之JDBC》
执行查看效果:
《spark笔记之数据源之JDBC》
1.1.2 通过spark-shell运行

(1)、启动spark-shell(必须指定mysql的连接驱动包)

spark-shell \

 

--master spark://hdp-node-01:7077 \

 

--executor-memory 1g \

 

--total-executor-cores  2 \

 

--jars /opt/bigdata/hive/lib/mysql-connector-java-5.1.35.jar \

 

--driver-class-path /opt/bigdata/hive/lib/mysql-connector-java-5.1.35.jar

(2)、从mysql中加载数据

val mysqlDF = spark.read.format("jdbc").options(Map("url" -> "jdbc:mysql://192.168.200.150:3306/spark", "driver" -> "com.mysql.jdbc.Driver", "dbtable" -> "iplocation", "user" -> "root", "password" -> "123456")).load()

(3)、执行查询
《spark笔记之数据源之JDBC》
1.2. SparkSql将数据写入到MySQL中1.2.1 通过IDEA编写SparkSql代码

(1)编写代码
《spark笔记之数据源之JDBC》
《spark笔记之数据源之JDBC》
(2)用maven将程序打包

通过IDEA工具打包即可

(3)将Jar包提交到spark集群

spark-submit \

 

--class itcast.sql.SparkSqlToMysql \

 

--master spark://hdp-node-01:7077 \

 

--executor-memory 1g \

 

--total-executor-cores 2 \

 

--jars /opt/bigdata/hive/lib/mysql-connector-java-5.1.35.jar  \

 

--driver-class-path /opt/bigdata/hive/lib/mysql-connector-java-5.1.35.jar \

 

/root/original-spark-2.0.2.jar  /person.txt

《spark笔记之数据源之JDBC》
(4)查看mysql中表的数据
《spark笔记之数据源之JDBC》

    原文作者:qq5d3e5bae55f08
    原文地址: https://blog.51cto.com/14473726/2449727
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞