복붙노트

[HADOOP] Apache Spark 비대칭 데이터 처리

HADOOP

Apache Spark 비대칭 데이터 처리

나는 함께 참여하고 싶은 두 개의 테이블을 가지고있다. 그 중 하나는 매우 나쁜 데이터 왜곡이 있습니다. 이것은 작업의 대부분이 하나의 파티션에서 이루어지기 때문에 스파크 작업이 병렬로 실행되지 않게합니다.

나는 그 내용을 듣고 읽었고, 분배를 증가시키기 위해 나의 열쇠를 소금으로 바르는 것을 구현하려고 노력했다. 12:45 초에 https://www.youtube.com/watch?v=WyfHUNnMutg을하고 싶습니다.

어떤 도움이나 조언을 부탁드립니다. 감사!

해결법

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

    1.예, 무작위 화를 통해 더 큰 테이블에서 소금에 절인 키를 사용한 다음 작은 하나의 / 카티 션을 복제하여 새로운 소금에 절인 키와 결합해야합니다.

    예, 무작위 화를 통해 더 큰 테이블에서 소금에 절인 키를 사용한 다음 작은 하나의 / 카티 션을 복제하여 새로운 소금에 절인 키와 결합해야합니다.

    다음은 몇 가지 제안 사항입니다.

    tresata 라이브러리는 다음과 같습니다.

    import com.tresata.spark.skewjoin.Dsl._  // for the implicits   
    
    // skewjoin() method pulled in by the implicits
    rdd1.skewJoin(rdd2, defaultPartitioner(rdd1, rdd2),   
    DefaultSkewReplication(1)).sortByKey(true).collect.toLis
    
  2. from https://stackoverflow.com/questions/38960599/apache-spark-handling-skewed-data by cc-by-sa and MIT license