본문 바로가기
Development/Data Engineering

병렬처리와 분산처리

by _KHK 2022. 3. 18.

병렬처리란?

데이터를 여러개로 쪼개고 여러 쓰레드에서 각자 task를 적용한다.

각자 만든 결과값을 합치는 과정

 

분산된 환경에서의 병렬처리?

데이터를 여러개로 쪼개서 여러 노드로 분산한다.

여러 노드에서 각자 독립적으로 task를 적용한다.

각자 만든 결과값을 합친다.

 

but 노드간 분산처리의 경우 노드간 통신같이 신경써야 될 것이 늘어나는데 Spark를 이용하면 분산된 환경에서도 일반적인 병렬 처리를 하듯 코드를 짜는게 가능하다.

 

Spark는 분산된 환경에서 데이터를 병렬 모델로 구현해 추상화 시켜주기 때문이다.

 = RDD

RDD.map(<task>)

 

* 노드간 통신에 걸리는 지연시간을 주의하며 코드를 작성해야 한다.

댓글