그리드 컴퓨팅 & 병렬 컴퓨팅 & 분산 컴퓨팅

Nammm·2022년 1월 19일
0

그리드 컴퓨팅 (출처: 나무위키 그리드 컴퓨팅)

Grid Computing. 네트워크로 연결된 컴퓨터들이 서로 정보를 처리 & 공유할 수 있는 점을 이용한 컴퓨터의 자원들 - CPU와 RAM의 연산.처리능력, 하드디스크의 저장공간, 유.무선 인터넷 망의 활용 등 - 을 서로 공유하여 컴퓨팅 능력을 향상시키기 위해 사용되는 병렬 분산 시스템의 한 종류이다.

기본적인 개념은 주변에 전력망(Power Grid)이 구축되어 있으면 전력선을 따오는 것만으로도 전기를 쉽게 공급받을 수 있는 것처럼, 구축된 컴퓨팅 망(Grid)에 연결하는 것만으로도 언제 어디서나 쉽게 컴퓨팅 능력을 공급받을 수 있도록 하자는 것이었다. 한국에서 그리드 컴퓨팅을 설명할 때 격자란 표현에 집착하는 경향이 있는데 집착할 이유가 없다. 오히려 격자보다 Web이나 Net으로 이해하는 것이 낫다.

개념적으론 그리드 컴퓨팅은 분산 컴퓨팅의 한 종류이나 어감상 차이가 있는데, 분산 컴퓨팅은 서버가 병렬 연결된 다수의 클라이언트를 다수의 독립된 연산코어처럼 활용하는 쪽에 초점을 두고 클라이언트는 단지 자신이 지닌 연산 및 처리능력을 제공하기만 한다면, 그리드 컴퓨팅은 이들을 무지막지한 능력을 지닌 가상의 컴퓨터로 재구성하는 쪽에 초점이 맞춰져 있으며, 병렬로 연결된 컴퓨터들은 서로 연산 및 처리능력을 제공하기도 하고 제공받기도 하는 관계이다. 비유하자면 그리드 컴퓨팅은 인수합병이고, 분산컴퓨팅은 하청업체 내지 아웃소싱 정도.

분산 컴퓨팅과 그리드 컴퓨팅의 차이들은 아래에서 더 알아본다.

한국의 그리드 컴퓨팅

한편, 한국에서는 인터넷 콘텐츠 서비스 업자들 가운데 상당수가 애용하는 개념이기도 하다. 동영상 서비스로 말하자면

  1. 사용자 A가 동영상을 재생한다.
  2. 동영상의 내용이 사용자 A의 컴퓨터에 잠시 저장된다.
  3. 사용자 B가 동영상 을 재생한다.
  4. 동영상의 내용이 사용자 B의 컴퓨터에 잠시 저장된다. 이 때, 동영상의 내용은 서버가 아닌 사용자 A의 컴퓨터에서 가져온다.
  5. 사용자 C가 동영상을 재생한다.
  6. 동영상의 내용이 사용자 C의 컴퓨터에 잠시 저장된다. 이 때, 동영상의 내용은 서버가 아닌 사용자 A와 사용자 B의 컴퓨터에서 가져온다.

간단히 사용자에게 원 서버 관리자의 짐을 나누어 지게 하는 것이라고 생각하면 된다. 즉 원 서버를 관리하는 업자 입장에서는 원 서버 관리 및 망 사용료의 지출을 줄이거나 사용자에 떠넘길 수 있다는 유리함이 있는 것이다. 사실상 토렌트와 거의 비슷한 것이라 봐도 된다.

하지만 타인의 컴퓨터 자원과 전기요금을 서버의 용도로 사용하는 것이기 때문에, 이를 약관 등으로 사전에 고지하지 않으면 불법이다.

인터넷을 통한 그리드 컴퓨팅은 크래킹에 악용될 위험성이 있으며, 대체로 사용자의 명시적 동의를 받지 않은 채 이루어진다는 점에서 논란의 소지가 있다. 또한 한국에서 이 기술을 사용하는 인터넷 콘텐츠 서비스 업자들 대부분이 사용자의 컴퓨터 자원을 쓰기 위해 특정 소프트웨어의 설치를 요구하는데, 이러한 소프트웨어가 대부분 액티브X 기반이다 보니 한국 인터넷 환경의 Internet Explorer를 위시한 마이크로소프트 제품군에의 의존을 심화하고 다양한 플랫폼에 대한 접근성 향상의 발목을 잡는 주범이 되기도 했다.

병렬 컴퓨팅

병렬 컴퓨팅은 여러개의 복잡한 연산을 여러 컴퓨터가 병렬적으로 동시에 처리하여, 서로 독립된 결과를 얻는 처리 단계다.

이를 변화하여 문제를 해결하는 방식이 병렬 컴퓨팅이다.

좀 더 쉬운말로는 여러대의 컴퓨터가 여러개의 문제를 동시에 연산한다. 연산 후에는, 여러개의 독립된 결과를 얻는다.

이보다도 더 쉬운 예로는, 주변에 전력망(Power Grid)가 구축되어 있으면, 전력선을 따오는 것 만으로도 전기를 쉽게 공급받을 수 있는 것과 같다.

즉, 구축된 컴퓨팅 망(Grid)에 연결하는 것만으로도 언제 어디서나 쉽게 컴퓨팅 능력을 공급받을 수 있도록 하자는 것이었다. 한국에서 그리드 컴퓨팅을 설명할 때 격자란 표현에 집착하는 경향이 있는데 집착할 이유가 없다. 오히려 격자보다 Web이나 Net으로 이해하는 것이 낫다. (그리드 컴퓨팅 내용 인용 반복)

분산 컴퓨팅

분산 컴퓨팅은 네트워크로 이뤄진 컴퓨터들의 그룹이며, 한가지 공통의 목표를 처리한다. 병행 컴퓨팅, 병렬 컴퓨팅과 유사하며, 이들 중 분명한 차이가 존재하지는 않는다.

결론

"분명한 차이가 존재하지 않는다" 하었으나, 나는 이렇게 정리하고 싶다.

  • 그리드 컴퓨팅: 연결된 그 모든 클라이언트를 가상의 서버로 재구성, 통합하여 병렬로 연결된 컴퓨터들이 서로 함께 연산 및 처리능력을 제공받는다.

  • 병렬 컴퓨팅: n대의 device가 각각 n개의 서로 다른 작업을 동시에 수행 -> 다수가 동시에 다수의 일을 처리

  • 분산 컴퓨팅: 여러대의 디바이스가 공통된 한개의 목표를 지향하며 작업을 수행 -> 다수가 한개의 공통 목표를 처리

그리드 컴퓨팅 예시

0개의 댓글