spark導數據到sqlserver

spark數據處理完後,如果結果需要輸出到sql database,可以使用spark sql dataframe並引入微軟的數據庫jdbc驅動輸出數據,具體步驟如下:

 

1:引入微軟的jdbc jar包

在項目的pom文件加入下面的依賴:

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>8.2.2.jre8</version>
</dependency>

但很多情況下,依賴包無法正常下載,可以採用下面的方法先下載依賴包:

mvn install:install-file -Dfile=sqljdbc4.jar -Dpackaging=jar -DgroupId=com.microsoft.sqlserver -DartifactId=sqljdbc4 -Dversion=4.0

安裝成功後,項目中加上相應的依賴項後就可以正確編譯工程了

 

2:在代碼中通過jdbc驅動輸出數據,sql 認證方式,使用spark sql dataframe

在pom文件中添加依賴項:

    <dependency>
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-sql_2.11</artifactId>
      <version>${spark.version}</version>
    </dependency>

引入spark sql 包,寫入數據到database:

import org.apache.spark.sql._
val url="jdbc:sqlserver://{dbserver}:1433;databaseName={dbname}"
val table="{yourtablename}"
val properties=new Properties()
properties.setProperty("user","xxx")
properties.setProperty("password","yyy")
properties.setProperty("driver","com.microsoft.sqlserver.jdbc.SQLServerDriver")
tableDF.write.mode(SaveMode.Overwrite).jdbc(url,table,properties)
 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章