spark 系列之四 Spark查詢關係型資料庫
阿新 • • 發佈:2020-12-31
spark是一套資料處理框架,資料分為靜態資料和實時資料(sparkStreaming)
因為spark本身是一個數據處理的框架,本身不負責生產資料和儲存資料。
所以需要一些資料來源的接入。本文主要說的是把關係型資料庫mysql作為資料來源。
測試環境是在本地的mysql資料,需要本地已經安裝了mysql資料庫,並且根據本地mysql的版本,下載相應的驅動。
import org.apache.spark.sql.SparkSession object SparkJDBC { def main(args: Array[String]): Unit = { val sparkSession= SparkSession.builder() .appName("TextFile") .master("local") .getOrCreate() /** * 成功連線mysql資料庫 */ val jdbcDF = sparkSession.read.format("jdbc") .option("url", "jdbc:mysql://localhost:3306/spark?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT") .option("driver","com.mysql.cj.jdbc.Driver") .option("dbtable", "student") .option("user", "root") .option("password", "123456").load() jdbcDF.show() } }
本地mysql資料庫的驅動pom.xml 檔案如下
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.21</version> </dependency>