2014-10-18 6 views
1

저는 Apache Spark에 익숙하지 않아 Spark와 함께 Scala를 배우기 시작했습니다. 이 코드 스 니펫에서 Spark는 프로그램 완료시 텍스트 파일 닫기를 처리합니까? 당신은 당신이 마지막 - 시도 - 잡을 그것을 닫거나 시도 -과 - 자원해야 파일을 열 때Spark에서 자원 관리를 처리합니까?

val rdd = context.textFile(filePath) 

나는 자바로 알고있다.

이 예제에서는 텍스트 파일을 언급했지만 RDD가 여러 가지 유형의 데이터 세트를 사용할 수 있으므로 Spark이 리소스를 처리 할 때이를 처리하고 있는지 알고 싶습니다.

답변

1

context.textFile()은 실제로 파일을 열지 않고 단지 RDD 객체를 생성합니다. 존재하지 않는 파일에 대해 textFile RDD를 작성하여이 오류를 실험적으로 확인할 수 있습니다. 오류는 발생하지 않습니다. RDD가 참조하는 파일은 action을 호출 할 때만 열리고 읽히고 닫히게됩니다. 그러면 Spark이 지시 한 동작을 초래할 IO 및 데이터 변환을 실행하게됩니다.