上下文
我使用一个docker容器,在那里我使用客户端模式连接到pyspark。在启动上下文之后,我对一个 DataFrame
包括使用 .replace()
用一条Python- dict
.
df = 'some pySpark Dataframe'
# The dict I will use for .replace()
mapping = {
'a': 1,
'b': 2,
...
}
df = df.replace(to_replace=mapping, subset["..."])
在实际应用中 df
相当大,Mapdict包含~100个键。
问题
我使用的集群有足够的能力来处理计算,并且我为spark上下文提供了足够的资源。
无论如何,docker容器在执行 .replace()
暗示内存不足。然而,我认为这不应该是一个问题,因为我认为 .replace()
是在集群内部处理的,而不是驱动程序-显然不是这样;它必须在本地处理(否则容器不会由于驱动程序而崩溃)。
我的问题是:
是 .replace()
由于使用python- dict
?
是否有一个选项来实际处理 .replace()
而不是司机?
暂无答案!
目前还没有任何答案,快来回答吧!