Вернуть пустое и запустить успешно - скрипт Scala запускается на Qubole
import org.apache.spark.sql._
import org.apache.spark._
import org.apache.spark.sql.SQLContext
import java.util._
import java.text._
import com.databricks.spark.avro._
import java.sql.{Connection, DriverManager, ResultSet}
import org.apache.spark.sql._
import org.apache.spark.sql.{DataFrame, SparkSession}
object test_job {
val sc: SparkContext = new SparkContext(new SparkConf().setMaster("local[*]").setAppName("test_job"))
val sqlc = SparkSession.builder.appName("test_job").getOrCreate()
var ret : DataFrame = null
ret = sqlc.read
.format("com.databricks.spark.redshift")
.option("url", "jdbc:postgresql://**{servername}**.redshift.amazonaws.com:**{portnumber}**/prod")
.option("user", "**username**")
.option("password", "**password**")
.option("query", "select count(1) from datamart.train_ticket")
.option("forward_spark_s3_credentials", "true")
.load
println("Read data from redshift successfully")
ret.show()
}
У меня есть скрипт scala выше и я успешно запускаю в Qubole, но возвращаю пустым, на самом деле он не пуст в этой таблице в redshift select count(1) из datamart.train_ticket
Кто-нибудь может помочь мне взглянуть, почему это произошло?