2015年10月1日 星期四

在Spark-shell 上使用 sqlContext 取回資料庫資料

今天要練習的項目是使用 sqlContext 取回資料庫的資料
今天的範例程式是使用 spark-shell cmd,想當然爾是使用 Scala 語法

步驟(一)
由於我連線的資料庫是使用 Oracle,所以請先至官網 download ojdbc6.jar
如果您使用的是Oracle 12c,那麼請使用 ojdbc7.jar
如果資料庫是其它(mysql,mssql...)等請使用合適的Driver,程式碼上需做修改
我將 ojdbc6.jar放在我即將執行 spark-shell的目錄下
執行命令
#spark-shell -–driver-class-path ojdbc6.jar
#注意 --driver-class-path 很重要!指定Driver所在位置

執行以下範例程式

請依照您的環境做必要的修改(帳密以及連線位置,您的TableName,及搜尋欄位)
    import sqlContext.implicits._
    val commits = sqlContext.load("jdbc", Map(
      "url" -> "jdbc:oracle:thin:user/password@localhost:1521:orcl",
      "dbtable" -> "ams_user",
      "driver" -> "oracle.jdbc.driver.OracleDriver"))
    commits.select("USER_LOGIN_NAME").show(8)

我的執行結果如下
這個範例程式僅顯示前8筆資料







沒有留言:

張貼留言