메모장

빅데이터 분산 컴퓨팅 정리(1~2강 분산처리시스템과 하둡컨셉) 본문

교육(KOCW, 오프라인)/빅데이터분산컴퓨팅(하둡에코시스템)

빅데이터 분산 컴퓨팅 정리(1~2강 분산처리시스템과 하둡컨셉)

hiandroid 2017. 8. 30. 15:12
반응형

하둡의 역사

- 1990~2000년 사이 구글에서 연구


기존 분산 컴퓨팅의 문제점을 해결할 수 있는 새로운 접근 방법

- reliability와 scalability 문제를 모두 해결

- Core concept: 초기 데이터를 시스템에 분산하여 저장

- 클러스터의 각 노드가 로컬 데이터에 대한 작업을 처리

- initial processing을 위해 네트워크를 통해 데이터가 전송되지 않음


분산처리 시스템

문제점

1. 복잡한 프로그래밍(데이터와 프로세스의 sync 유지)

2. Partial failures: 수많은 컴퓨터를 사용하는 경우 일부의 컴퓨터가 고장나는 경우


파셜 페일러 대처

(컴퓨터의 스토리지)

데이터 리커버리: 시스템의 컴포넌트가 fail 하더라도 시스템을 통해 작업은 지속적으로 수행 되어야 함

- failure로 인해 데이터 손실 발생하면 안됨

- 구글방법: 3개의 copy를 기본으로 일부컴퓨터가 고장날 경우 복사해둔 다른 컴퓨터의 정보로 사용


(컴퓨터의 CPU)

컴포넌트 리커버리: 시스템의 컴포넌트가 fail되고 다시 recover된 경우, 시스템에 rejoin하는 것이 가능해야 함

- 전체 시스템의 재 시작없이 수행


Scalability

- 데이터의 양이 증가하면, 각 작업의 성능이 감소함(시스템은 fail되지 않음)


하둡 컨셉(easy to use 쉽게 사용하자)

1. 애플리케이션을 high-level코드로 작성

- 개발자에게 네트워크 프로그래밍, 의존성, low-level인프라 구조에 대한 고려가 요구되지 않음

2. 각 노드들은 가급적 최소한의 데이터를 주고 받음

- 개발자는 노드들 사이의 통신에 대한 코드 작성이 필요없음

3. 데이터는 여러 노드에 미리 분산되어 저장

-데이터가 저장된 위치에서 연산을 수행

- availability와 reliability를 향상시키기 위해 데이터는 여러개의 복제본을 두고 사용



- 시스템이 데이터를 로드할 때 'block'으로 나누어짐

- 파일을 기본적으로 64mb또는 128mb 크기로 잘라서 사용



Node(컴퓨터를 노드로 지칭함)




반응형