我正在尝试将Spark版本2.2.1更改为2.4.0 在Spark 2.2中,“跟随”效果很好。
val query = "(select id, myPartitionColumnString from myTable) query"
val splitColumn = "CHECKSUM(myPartitionColumnString)"
spark.read.jdbc(jdbcUrl, query, splitColumn, lowerBound, upperBound, numPartitions, connectionProperties)
但是在spark 2.4中,它会导致这样的错误
User-defined partition column CHECKSUM(myPartitionColumnString) not found in the JDBC relation: struct<id: int, myPartitionColumnString: string>
我确定CheckSum已定义。
答案 0 :(得分:2)
他们在引入“传递直接SQL查询”功能期间将其删除。重大更改在2.4.0中引入。这更像是骇客,目前无法实现。您仍然可以在2.3 tho
中获得它PS:如果有人找到另一种方法来实现相同的行为,请与我联系,我很感兴趣