pyspark collect操作究竟collect了什么到driver

求指教
pyspark初学者,最近编写了这样一行代码

res=df.agg({"price": "min"}).collect()[0][0]

当数据量增大的时候,这一步骤的速度也会降低,这是可以预见的,正常的。我好奇的是这一步到底是collect了什么,我的猜测是
1.将每个node上所有的df都collect到driver上进行min的计算
2.在每个node上计算出min再将各个node上min的结果collect到driver上进行最后计算
比较倾向于2但是并没有在网上找到有力支撑的文章

希望有友友帮我解答解答哈哈☺️感谢!