Spark JDBC谓词下推禁用不起作用。
sparkVersion =“ 2.4.2”
尝试:
properties.setProperty(JDBCOptions.JDBC_PUSHDOWN_PREDICATE, "false")
val dataFrame = sqlContext.read.jdbc(endpoint.connectionString, dbTableName, strictPredicates.get, properties)
dataFrame.createOrReplaceTempView(tableName)
谓词(strictPredicates除外)仍被下推到第三方数据库。在这种情况下,它是Oracle,它无法处理其中的一些。
我如何从Spark查询Oracle而又不将任何谓词推入行列并且不跳出DataFrame上下文来收集数据?
答案 0 :(得分:0)
我发现的唯一选择是使用Cache(),这又将强制查询在当前状态下进行评估