Spark使用JDBC连接MySQL的Java实现方式
spark 的 jdbc 连接代码写法,Java 版本其实也不算复杂,关键是几个参数得写清楚。你要连 MySQL,配置url
、user
、password
这些少不了,加载驱动也别忘了。不用太花哨,一段read.format("jdbc")
就能搞定,还挺稳。
用 Java 写 Spark 连接 MySQL 的场景还蛮常见的,比如大批量离线数据、跑清洗任务之类的。有时候 Hive 不方便,JDBC 倒挺灵活。数据源那块,用option()
方法塞参数就行,像这样:
Dataset df = spark.read()
.format("jdbc")
.option("url", "jdbc:mysql://localhost:3306/dbname")
.option("driver", "com.mysql.cj.jdbc.Driver")
.option("dbtable", "table_name")
.option("user", "root")
.option("password", "123456")
.load();
嗯,驱动这块建议你装个稳定版的,比如mysql-connector-java 8.0.28,不容易出幺蛾子。如果你对驱动细节感兴趣,可以看看这个MySQL JDBC 连接驱动详解,挺详细。
你要是想了解下相关源码和底层实现,也可以翻翻Spark 核心思想与源码解析这篇,虽然是偏源码向的文章,但看完你会更踏实。
哦对了,还有一点,别忘了加mysql-connector-java
的jar
包,不然加载驱动就会报错。可以去这个页面看看有哪些常用 jar 包:Java 连接 MySQL 所需 jar 包,也挺实用的。
如果你在实际项目里用 SparkMySQL 数据,建议搞个配置类统一管理这些 JDBC 参数,代码更清爽,维护起来也方便。
2.31KB
文件大小:
评论区