【问题标题】:Spark JDBC predicate pushdown disable doesn't workSpark JDBC 谓词下推禁用不起作用
【发布时间】:2019-07-18 10:23:21
【问题描述】:

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 除外)仍被推送到第 3 方数据库。在这种情况下,它的 Oracle 无法处理其中的一些。

我怎样才能从 Spark 查询 Oracle,而无需将任何谓词向下推,也不会跳出 DataFrame 上下文来收集数据?

【问题讨论】:

    标签: scala apache-spark


    【解决方案1】:

    我发现的唯一选择是使用 Cache(),这反过来又会强制查询在当前状态下进行评估

    【讨论】:

      猜你喜欢
      • 2015-12-10
      • 1970-01-01
      • 1970-01-01
      • 2019-01-21
      • 2020-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-27
      相关资源
      最近更新 更多