spark如何读取和管理内存中的数据

ldxq2e6h  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(391)

有谁能帮助我理解spark如何读取hdfs数据并在主内存中管理它吗?
换句话说,
如果我从hadoop文件创建3rdd,第一个rdd并对其进行一些转换,然后创建第二个rdd,然后再次对第二个rdd进行一些转换,并创建第三个rdd,然后对第三个rdd调用一些操作。
将从hdfs读取多少次数据?
如果我们不显式地调用缓存或持久化,那么这三个rdd数据都会留在内存中吗?i、 e.当在第三个rdd上执行操作时,此时第一个rdd数据是否仍保留在内存中

j2cgzkjk

j2cgzkjk1#

如果您不缓存rdd3,那么spark将从hdfs读取数据,否则它将从内存读取数据。

mnowg1ta

mnowg1ta2#

如果所有rdd共享一个文件,那么在操作中只读取一次数据,而在任何转换中都不读取。
重新生成第三个rdd的dag将在内存中,因为如前所述,只有rdd#3将包含任何实际数据。

相关问题