我正在使用
spark_session._jsparkSession.sessionState().executePlan(
df._jdf.queryExecution().logical()).optimizedPlan().stats().sizeInBytes()
字符串
和pyspark与version<3.2
,以获得我的DF的大小(字节),但在3.2中,似乎executePlan
的签名已经改变,我得到以下错误
py4j.Py4JException: Method executePlan([class org.apache.spark.sql.catalyst.plans.logical.Filter]) does not exist
型
有什么办法能让它工作吗?我试着加上
spark_session._jsparkSession.CommandExecutionMode
型
函数调用,但它产生了以下错误:
{AttributeError}'JavaMember' object has no attribute '_get_object_id'
型
2条答案
按热度按时间oprakyz71#
我不确定你尝试的方法
她是解决你的问题的另一种方法。
df.rdd.mapPartitionsWithIndex(lambda x,it:[(x,sum(1 for _ in it))]).collect()
xoshrz7s2#
字符串
信用:https://stackoverflow.com/a/77174735/5421064