Spark 1.3 Пример работы с базой(vertica) на языке Scala с помощью sparkSQL

Ниже приведён код инициализации соединения и выбора данных с базы данных через jdbc DriveManager:
import org.apache.spark._
import org.apache.spark.sql.SQLContext
import java.sql.{Connection, DriverManager, ResultSet}
val conn_str = "jdbc:vertica://127.0.0.1:5433/testdbname?user=testuser&password=testpass"
var conn: java.sql.Connection = null
conn = DriverManager.getConnection(conn_str);
val statement = conn.createStatement()
val resultSet = statement.executeQuery("SELECT * FROM public_chema.users WHERE id=777")
resultSet.next()

println("data from id: " + resultSet.getString(1))
println("data from email: " + resultSet.getString(2))

//make update or insert
val sql_update = "UPDATE public_chema.test_table SET email = '" + resultSet.getString(2) + "' WHERE id=" + resultSet.getString(1)
//val sql_update = "INSERT INTO public_chema.test_table (email, id) VALUES ('" + resultSet.getString(2) + "', '" + resultSet.getString(1) + "')"
st
statement.executeUpdate(sql_update)

При возникновении ошибки "java.sql.SQLException: No suitable driver found for jdbc:vertica..." нужно cкачать jdbc драйвер для работы с базой данных Vertica и указать при запуске путь к jdbc драйверу.
Пример:
spark-shell --master "local[2]" --driver-class-path /home/cloudera/parcels/CDH/jars/vertica-jdbc-7.1.2-0.jar


Полезные ссылки:

Коментарі

Популярні дописи з цього блогу

Минимальные требование для кластера Hadoop(with Spark)

Apache Spark - основные команды

Apache Spark Resource Management и модель приложений от YARN