복붙노트

[HADOOP] Spark가 HDFS 데이터를 읽고 동시에 계산을 수행 할 수 있습니까?

HADOOP

Spark가 HDFS 데이터를 읽고 동시에 계산을 수행 할 수 있습니까?

예를 들어, Spark 플랫폼에서 다음과 같은 작업 계산 응용 프로그램을 실행합니다.

val textFile = sc.textFile("hdfs://...")
val counts = textFile.flatMap(line => line.split(" "))
             .map(word => (word, 1))
             .reduceByKey(_ + _)
counts.saveAsTextFile("hdfs://...")

그리고 한 명의 작업자가 1Gb 데이터를 처리해야한다고 가정하면이 작업자가 모든 1Gb 데이터를 가져 오기 전에 flatMap과 같은 계산을 시작할 가능성이 있습니까?

해결법

  1. ==============================

    1.일반적으로 그렇습니다. 그렇지만 질문은 조금 넓습니다. 그래서 당신이 특정 사건에 대한 답을 찾고 있는지 알지 못합니다.

    일반적으로 그렇습니다. 그렇지만 질문은 조금 넓습니다. 그래서 당신이 특정 사건에 대한 답을 찾고 있는지 알지 못합니다.

    때로는 여러 사용자간에 자원을 공유해야 할 때도 있습니다.

    보통 모든 것은 사용하는 스케줄러와 의도에 따라 다릅니다.

    Ref. 공식 문서> 작업 일정> 응용 프로그램 내 일정.

  2. ==============================

    2.Spark는 saveAsTextFile과 같은 작업을 호출 할 때까지 RDD 작업을 느리게 평가합니다 (결과가 요청 될 때까지). 따라서 데이터를 읽거나 읽지 않습니다.

    Spark는 saveAsTextFile과 같은 작업을 호출 할 때까지 RDD 작업을 느리게 평가합니다 (결과가 요청 될 때까지). 따라서 데이터를 읽거나 읽지 않습니다.

  3. from https://stackoverflow.com/questions/36880832/is-it-possible-that-spark-read-hdfs-data-and-do-some-computation-at-the-same-tim by cc-by-sa and MIT license