我们能否将String列设置为partitionColumn?

时间:2017-10-11 09:31:34

标签: scala apache-spark apache-spark-sql

表只有String列作为主列EMPLOYEE_ID如何对其进行分区。

val destination = spark.read.options(options).jdbc(options("url"), options("dbtable"), "EMPLOYEE_ID", P00100001, P00100005000000, 10, new java.util.Properties()).rdd.map(_.mkString(","))

是否有其他方法可以读取JDBC表并进行处理。

1 个答案:

答案 0 :(得分:2)

这是不可能的。这里只能使用整数列。如果你的数据库支持rowid的一些变体,它是整数或者可以转换为整数,你可以在查询中提取它(伪代码):

 (SELECT CAST(rowid AS INTEGER), * FROM TABLE) AS tmp