【发布时间】:2023-03-18 03:15:01
【问题描述】:
我们正在尝试获取 Spark 为给定查询生成的 逻辑 计划(不要与 物理 计划混淆)。根据 Spark 文档here,您应该能够使用 scala 命令检索它:
df.explain(true)
或在 sparklyr 中使用示例代码:
spark_version <- "2.4.3"
sc <- spark_connect(master = "local", version = spark_version)
iris_sdf <- copy_to(sc, iris)
iris_sdf %>%
spark_dataframe %>%
invoke("explain", T)
此命令运行,但只是在 RStudio 中返回 NULL。我的猜测是 sparklyr 不会检索打印到控制台的内容。有没有办法解决这个或另一种方法来使用 sparklyr 检索逻辑计划?使用dplyr::explain([your_sdf]) 很容易获得物理计划,但不会返回用于创建它的逻辑计划。
【问题讨论】:
-
sdf_debug_string()有帮助吗?
标签: r apache-spark apache-spark-sql sparklyr