假设我们有一个谓词列表,我们想构建一个过滤器链。当谓词列表超过~20时,驱动程序将挂起,而spark ui中永远不会出现作业。你知道吗
例如:
df = spark.table('test.test')
for predicate in predicates_list:
positive_case = df.filter(predicate)
negative_case = df.filter(~predicate)
#some changes are made to negative and positive case
df = positive_case.union(negative_case)
df.show()
我能想到的唯一替代方法是用python函数编写所有代码,然后跳转到rdd领域。然而,对于一个看似微不足道的问题,这似乎是一个非常粗糙的解决方案。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐