考试报名
考试报名
考试内容
考试大纲
在线客服
返回顶部

备考刷题,请到

CDA认证小程序

SPARK默认的存储级别是( )
A. MEMORY_ONLY
B. MEMORY_ONLY_SER
C. MEMORY_AND_DISK
D. MEMORY_AND_DISK_SER
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

SPARK默认的存储级别是A: MEMORY_ONLY。

专业分析:

1. **MEMORY_ONLY**:这是Spark的默认存储级别。在这种模式下,RDD(弹性分布式数据集)的各个分区会被存储在内存中。如果内存不足以存储所有的数据分区,那么那些不能被存储的分区将会在每次需要的时候重新计算。这种存储级别适用于内存充足且计算开销相对较低的场景。

2. **MEMORY_ONLY_SER**:与MEMORY_ONLY类似,但在存储之前会对对象进行序列化,这可以减少内存使用,但会增加CPU的开销,因为序列化和反序列化是需要计算资源的。

3. **MEMORY_AND_DISK**:在这种存储级别下,RDD的分区会优先存储在内存中,如果内存不足,则会将无法存储的分区写入磁盘。这种方式适用于内存不足以存储整个数据集,但又希望避免过多的重新计算开销的场景。

4. **MEMORY_AND_DISK_SER**:类似于MEMORY_AND_DISK,但会对对象进行序列化。这种方式进一步减少了内存占用,但增加了CPU的开销。

总结来说,Spark选择MEMORY_ONLY作为默认存储级别是因为在许多情况下,内存访问速度远快于磁盘访问,且很多计算场景下内存是足够的,因此优先使用内存来提高性能。不过,如果内存不够用,开发者可以根据具体需求选择其他存储级别。