분산 및 병렬 처리 시스템

Previous

들어가기 전에

분산 시스템은 PC가 보급되고 인터넷이 활성화되면서 개념이 생겨났다.



네트워크 컴퓨터 구성(프로세서의 결합도)


1. 강결합 시스템(병렬 처리 시스템)

Tightly Coupled System



프로세싱 기법에 따른 구분

Asymmetric multiprocessing


Symmetric multiprocessing (SMP)

스크린샷 2022-09-20 오전 1 43 16



메모리 접근에 따른 구분

Uniform Memory Access


Non-Uniform Memory Access (NUMA)


Processor Affinity

프로세스 스케줄링 시에, 특정 프로세서에 지정을 해주는것.

프로세스는 특정 프로세서에서만 실행되게 된다.

이전에 이 프로세스를 이 CPU에서 실행한 적이 있다면 해당 코드의 일부가 캐시에 담겨져 있을 가능성이 높으니 이전에 실행했던 CPU를 선택하게 된다.


Load balancing

특정 프로세서(CPU)가 너무 많은 프로세스를 돌린다 싶으면, 스케줄러가 적절히 분배해주는 행위.
CPU마다 utilization을 체크해서 바쁜 쪽의 일을 덜 바쁜 쪽으로 가지고 와 수행하게 된다.


장단점

  장점 단점
1 경제적이다 프로세서 수가 많아질수록 프로세서 간 데이터 교환에 따른 오버헤드도 증가
2 처리량이 높다(High Throughput)  
3 신뢰성이 높다. 하나의 CPU가 고장나더라도 다른 CPU가 일을 수행할 수 있다  


2. 약결합 시스템(분산 처리 시스템)

Loosely Coupled System

DistributedSys2



특징


스크린샷 2022-09-19 오후 10 37 13



분산 시스템의 고려 사항




장점/단점

  장점 단점
1 분산 처리를 통한 빠른 데이터 처리 속도(연산 속도 향상) 보안/통신 관리가 복잡
  동시에 수행 가능한 시스템 환경이 제공되므로 연산 속도 향상  
2 한 사이트에 있는 자원을 다른 사이트가 이용할 수 있어서 자원 활용도 향상(자원 공유) 네트워크 리소스가 많이 필요
3 데이터 손실에 대비한 장애 허용성 증가(신뢰성이 높다)  
  하나의 시스템에 오류가 발생해도 시스템 전체의 성능에는 크게 영향을 주지 않는 신뢰성 제공  
4 다수의 사이트 간에 의견 교환 가능(통신)  
5 서버가 물리적으로 떨어져 있어도 사용할 수 있다. (은행 서버의 경우 하나는 서울에, 다른 하나는 부산에) 유지 보수가 어려울 수 있다.




추가

HADOOP




References