월곡동로봇팔 2019. 12. 19. 15:38

Dependency

Dependency

Narrow-Dependencies

좁은 곳에서 파생됬다는 의미로, 하나의 파티션이 하나의 파티션에서만 사용한다.

narrow dependency는 손실된 상위 파티션만 recompute하고, 서로 다른 노드 에서 병렬로 recompute 할 수 있다.

 

Wide-Dependencies

넒은 범위에서 파생됬다는 의미로, 하나의 파티션이 여러 파티션에서 쓰인다.

wide dependency를 가진 lineage 그래프에서 단일 node가 손상되면 RDD의 모든 부모 노드로부터 일부 파티션이 손실 될 수 있어 복구하는데 많은 excution이 발생한다. 

 

-> 이러한 이유는 부모 노드로부터 연산된 중간 결과값을 받아서 wide dependencies한 연산을 진행하다가 fail이 나면, narrow dependencies 부터 다시 해야하기 때문이다.

 

Example