저는 아파치 스파크를 배우고 스파크에서 RDD의 캐싱과 지속성과 관련된 개념을 없애려하고 있습니다.왜 기본 persist()는 직렬화되지 않은 객체로 JVM 힙의 데이터를 저장합니까?
그래서 책의 지속성의 문서 "스파크 학습"에 따라 :
는 RDD 여러 번 계산을 방지하기 위해, 우리는 데이터를 유지하기 위해 불꽃을 요청할 수 있습니다. RDD를 지속하도록 Spark에 요청하면 RDD를 계산하는 노드는 파티션을 저장합니다. 스파크는 목표가 무엇인지에 따라 선택할 수있는 많은 수준의 지속성을 제공합니다.
스칼라 및 Java에서 기본값 인 persist()는 의 데이터를 JVM 힙의 데이터를 병합되지 않은 객체으로 저장합니다. 파이썬에서 우리는 항상 저장소가 지속되는 데이터 인 을 직렬화하므로 기본값은 절체 된 개체로 JVM 힙에 저장됩니다. 디스크 나 힙 (off-heap) 스토리지에 데이터를 쓸 때 해당 데이터는 항상 으로 직렬화됩니다.
왜 is-- 기본이 지속() 것이다 저장 일렬 화를 푼 객체으로 JVM 힙의 데이터.