domingo, 6 de mayo de 2018

Apache Spark Sql - JDBC Data Source


Spark sql contiene un origen de datos jdbc. Con él podemos leer una base de datos relacional. Este enfoque es preferible al uso de JdbcRDD porque el origen de datos devuelve los resultados como un DataFrame que puede procesarse en Spark SQL o mezclarse con datos de otras fuentes de datos.

Veamos un ejemplo:

import org.apache.spark.sql.SQLContext

val sqlContext = new org.apache.spark.sql.SQLContext(sc)

val url = "jdbc:mysql://127.0.0.1:3306/amarokdb"

val df = spark.read.format("jdbc").option("url", url).option("dbtable", "albums").option("user", "root").option("password","pass").load()

df.printSchema() // Looks the schema of this DataFrame.
df.show()
df.count()