我在工作中使用pyspark。在本文https://unraveldata.com/to-cache-or-not-to-cache/中,它表示缓存不是一个操作。但是,当我在RDD上运行缓存功能时,需要花费很多时间。并且spark UI显示有一些名为cache at NativeMethodAccessorImpl.java:0
的激活作业。缓存动作是什么?
答案 0 :(得分:2)
缓存是一种懒惰的操作。这意味着当访问从缓存构造的变量时,它将计算它。所以它显示需要时间。
当调用计算时,所有数据都移动到ram。一旦数据在ram计算中可用,就会执行。