存储级别 | 说明 |
MEMORY_ONLY | 它将RDD作为反序列化的Java对象存储在JVM中。这是默认级别。如果RDD不能容纳在内存中,则某些分区将不会在每次需要时进行缓存和重新计算。 |
MEMORY_AND_DISK | 它将RDD作为反序列化的Java对象存储在JVM中。如果RDD不能容纳在内存中,请存储磁盘上不适合的分区,并在需要时从那里读取。 |
MEMORY_ONLY_SER (Java和Scala) |
它将RDD存储为序列化的Java对象(即每个分区一个字节数组)。通常,这比反序列化的对象更节省空间。 |
MEMORY_AND_DISK_SER (Java和Scala) |
它类似于MEMORY_ONLY_SER,但是将不适合内存的分区溢出到磁盘上,而不是重新计算它们。 |
DISK_ONLY | 它仅将RDD分区存储在磁盘上。 |
MEMORY_ONLY_2,MEMORY_AND_DISK_2等 | 与上面的级别相同,但是在两个群集节点上复制每个分区。 |
OFF_HEAP(experimental) | 它类似于MEMORY_ONLY_SER,但是将数据存储在堆外存储器中。必须启用堆外内存。 |