我无法在spark 3.2.0 中的数组列中进行筛选
查询:
df.filter(col("src").getItem(0).equalTo("uid2")).show(false)
但它返回异常:
WARN scheduler.TaskSetManager: Lost task 0.0 in stage 12.0 (TID 36) (hadoop4964 executor 2): java.lang.IllegalArgumentException: FilterPredicates do not currently support repeated columns. Column src is repeated.
谁能帮我修?
可能是Spark 3.2.X中的一个问题。
请参见此处:https://www.mail-archive.com/dev@spark.apache.org/msg29086.html
降级将解决这个问题,你也可以尝试升级到3.3.X,看看问题是否持续存在(我相信会的(
同时,一个变通方法是禁用镶木地板的谓词下推
spark.sql.parquet.filterPushdown=false