반응형
Distributed System?
- A collection of scalability
- Independent computers that heterogeneity : 각각의 OS를 가진 컴퓨터들이 같이 묶여있는 것
- Appears to its users as a single coherent system(transparency) : 사용자가 마치 하나의 시스템을 쓰는 것처럼 사용자가 느끼게 하는 것, 즉 시스템의 모든 파일에 대하여 사용자가 동일한 방법으로 접근할 수 있도록 하는 것
Distributed System과 Parallel System의 차이는?
- Distributed System은 OS가 분리되어있고 Parallel System은 하나
-
Distributed System은 동시에 수행되는 여러 프로세스간에 데이터를 주고 받기 위해 message passing을 사용하고 Parallel System은 shared memory를 사용함
Distributed System을 사용하는 이유는?
- 다중 시스템의 경우 시스템이 많을수록 performance는 떨어지기 마련인데 Distributed System은 지수함수적으로 올라감
- 계속해서 시스템을 확장할수록 퍼포먼스가 올라가기 때문에 이것은 Scalbility가 좋다고 할 수 있음
- 독립된 OS들이 모여있는 것이기 때문에 문제가 발생하더라도 다른 machine이 대체할 수 있음
- 또한, 시스템 구성 자체를 flexible하게 할 수 있음
Distributed System 구성
위의 그림에서 보면 Distributed system(이하 DS)은 Middleware에 위치하게 된다. 그림에서 알 수 있듯이, DS는 서로 Machine A, B, C의 독립된 OS를 연결한다. 당연히 발생하는 문제는 Local OS의 Heterogeneity인데 이는 Object Oriented Concept로 해결하였다. 아래 그림을 보면 각 server를 Object Oriented Concept을 이용하여 추상화하여 Heterogeneity를 극복하는 것을 알 수 있다. 이러한 방식으로 DS는 무한 확장성(Scalability)을 가진다.
Transparency를 위해서, 다시 말해 하나의 시스템처럼 보이기 위해서 DS는 다음과 같은 특징들을 숨겨야 한다.
- Access, Location, Migration, Relocation, Replication, Concurrency, Failure, Persistence
여기서 Concurrency는 특정 자원에 여러 사용자가 동시에 접근하는 것을 막아야 한다는 것이고 Persistence는 리소스들이 메모리든 디스크든 어디에 저장되어있는지를 숨겨야 한다는 것이다.
반응형
'IT 기술 > 용어 및 개념' 카테고리의 다른 글
Massively Distributed Database Systems(Transaction Management) (0) | 2014.04.23 |
---|---|
Massively Distributed Database Systems(Replication vs Partitioning) (0) | 2014.04.23 |
핵티비즘(Hacktivism) (0) | 2012.03.05 |
DHCP (0) | 2012.01.25 |
SCADA (0) | 2012.01.25 |