[Spark] shuffle 연산 & bucketing 하는 이유
Spark의 셔플링이란데이터 그룹화/집계 위해 클러스터 노드 전체에 데이터 재분배하는 데 사용데이터를 더 작은 청크로 분할 / 네트워크 전체에 데이터 섞음 / 새로운 청크 집합으로 다시 분할셔플 함수 예제Map Side Shuffle데이터 전송 전에 단일 노드에서 데이터 셔플val data = sc.parallelize(Seq(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)) // Sample dataval mappedData = data.map(x => (x % 2, x))mappedData.collect().foreach(println)Reduce Side Shuffle데이터 전송 전에 단일 노드에서 데이터 셔플val reducedData = mappedData.reduceByKey((x, y..
2024. 7. 7.