我是 Spark 新手,我发现文档说 Spark 会将数据加载到内存中以使迭代算法更快。
但是如果我有 10GB 的日志文件而只有 2GB 内存怎么办? Spark 会像往常一样将日志文件加载到内存中吗?
我认为这个问题在 Spark 网站的 FAQ 面板中已经得到了很好的回答(https://spark.apache.org/faq.html https://spark.apache.org/faq.html):
-
如果我的数据集不适合内存,会发生什么情况?通常,每个数据分区都很小并且适合内存,并且这些分区一次只能处理几个。对于无法容纳在内存中的非常大的分区,Spark 的内置运算符对数据集执行外部操作。
-
当缓存的数据集不适合内存时会发生什么?Spark 可以将其溢出到磁盘,或者在每次请求时重新计算不适合 RAM 的分区。默认情况下,它使用重新计算,但您可以将数据集的存储级别设置为 MEMORY_AND_DISK 以避免这种情况。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)