Spark 자원 이상 번개가 버그

고장 설명

그 시간에 테스트 Spark 있는 RDD 전환되는 lazy 특성 발견 한 Spark 내부 taskSet 지금 executor 운행 분배가 균등하지 않다 문제에 대해.먼저 위에 두 장 그래프 문제가 시간이 좀 도 모두 아마 곧 어떻게 된 건지:

wKioL1S4tfrgMNIGAAfmOQFoPTE019.jpgwKioL1S4txyQ4YWJAASLVlJb1oU776.jpg

다시 한번 간단한 테스트 코드:

import org.apache.spark._
import org.apache.spark.storage.StorageLevel

/**
 * Created by zhaozhengzeng on 2015/1/5.
 */

import java.util.Random
import org.apache.hadoop.io.compress.CompressionCodec
import org.apache.spark.rdd.RDD
import org.apache.spark.SparkContext._

object JoinTest {
  def main(args: Array[String]) {
    val sparkConf = new SparkConf().setAppName("Spark count test").
      set("spark.kryoserializer.buffer.max.mb", "128").
      set("spark.shuffle.manager", "sort")
    // set("spark.default.parallelism","1000")
    val sc = new SparkContext(sparkConf)

    //연결 리스트 1
    val textFile1 = sc.textFile("/user/hive/warehouse/test1.db/st_pc_lifecycle_list/dt=2014-07-01").map(p => {
      val line = p.split("\\|")
      (line(10), 1)
    }
    ).reduceByKey((x, y) => x + y)
    
    //테스트 RDD 있는 lozy 특성
        val textFile3 = sc.textFile("/user/hive/warehouse/test1.db/st_pc_lifecycle_list/dt=2014-09-*").map(p => {
          val line = p.split("\\|")
          (line(11),"")
        })

    val textFile2 = sc.textFile("/user/hive/warehouse/test1.db/st_pc_lifecycle_list/*").mapPartitions({ it =>
      for {
        line <- it
      } yield (line.split("\\|")(10), "")
    })

    val count = textFile1.join(textFile2).count()

    println("join 후 기록부 데이터: " + count)

    //textFile1.saveAsTextFile("/user/hive/warehouse/test1.db/testRs/rs2")
    sc.stop()
  }
}

설명 아래 위 코드 주요 테스트 RDD 있는 Join 변환 및 테스트 textFile3 있는 translation 있는 lazy 특성. 전체 시험 과정을 통해 관찰 Spark UI 보면 위 이런 TaskSet 분포 불균일하다 상황. 첫 번째 그림에서 보기를 수직으로 Task 위해 0 의 executor 실행 중 첫 번째 stage 있는 taskSet 후 spark 안 하는 두 번째 stage 있는 taskSet 분배 중에 이런 executor 집행했다. 근데 이상한 것은 이런 상황을 결코 자주 나타나, 내가 다시 다음 N 번 다시 뛰어 작업 또 안 나타날 이런 상황을 정확히 무슨 이유 잠시 찾을 수 없습니다. 심지어는 반복 기회가 없어, 하하. 여기 먼저 기록하다 좀 더 두고...

글쓴이 Kang 작성일 2015-01-21 03:31