import java.sql.{ResultSet, DriverManager}
import org.apache.spark.rdd.JdbcRDD
import org.apache.spark.{SparkConf, SparkContext}
/**
* Created by neko32 on 2016/01/13.
*/
object MySQLSpark {
def getConn() = {
Class.forName("com.mysql.jdbc.Driver").newInstance
DriverManager.getConnection("jdbc:mysql://localhost/neko32?user=takoneko888&password=XXXX")
}
def main(args:Array[String]):Unit = {
val conf = new SparkConf().setMaster("local").setAppName("MySql")
val sc = new SparkContext(conf)
val data = new JdbcRDD(sc, getConn, "select * from test where id >= ? and id <= ?",
upperBound = 2,
lowerBound = 1,
numPartitions = 1,
mapRow = (r:ResultSet) => (r.getInt("id"), r.getString("name")))
println(data.collect.toList)
}
}
水曜日, 1月 13, 2016
Spark - JDBC経由でデータを取得
以下の例はSparkJDBCを使ってRDB(ここではMySQL. MySQLは使いやすくていいね!)からデータを取得しJDBCRDDを構築する.
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿