메모장
빅데이터 분산 컴퓨팅 정리(1~2강 분산처리시스템과 하둡컨셉) 본문
하둡의 역사
- 1990~2000년 사이 구글에서 연구
기존 분산 컴퓨팅의 문제점을 해결할 수 있는 새로운 접근 방법
- reliability와 scalability 문제를 모두 해결
- Core concept: 초기 데이터를 시스템에 분산하여 저장
- 클러스터의 각 노드가 로컬 데이터에 대한 작업을 처리
- initial processing을 위해 네트워크를 통해 데이터가 전송되지 않음
분산처리 시스템
문제점
1. 복잡한 프로그래밍(데이터와 프로세스의 sync 유지)
2. Partial failures: 수많은 컴퓨터를 사용하는 경우 일부의 컴퓨터가 고장나는 경우
파셜 페일러 대처
(컴퓨터의 스토리지)
데이터 리커버리: 시스템의 컴포넌트가 fail 하더라도 시스템을 통해 작업은 지속적으로 수행 되어야 함
- failure로 인해 데이터 손실 발생하면 안됨
- 구글방법: 3개의 copy를 기본으로 일부컴퓨터가 고장날 경우 복사해둔 다른 컴퓨터의 정보로 사용
컴포넌트 리커버리: 시스템의 컴포넌트가 fail되고 다시 recover된 경우, 시스템에 rejoin하는 것이 가능해야 함
- 전체 시스템의 재 시작없이 수행
Scalability
- 데이터의 양이 증가하면, 각 작업의 성능이 감소함(시스템은 fail되지 않음)
하둡 컨셉(easy to use 쉽게 사용하자)
1. 애플리케이션을 high-level코드로 작성
- 개발자에게 네트워크 프로그래밍, 의존성, low-level인프라 구조에 대한 고려가 요구되지 않음
2. 각 노드들은 가급적 최소한의 데이터를 주고 받음
- 개발자는 노드들 사이의 통신에 대한 코드 작성이 필요없음
3. 데이터는 여러 노드에 미리 분산되어 저장
-데이터가 저장된 위치에서 연산을 수행
- availability와 reliability를 향상시키기 위해 데이터는 여러개의 복제본을 두고 사용
- 시스템이 데이터를 로드할 때 'block'으로 나누어짐
- 파일을 기본적으로 64mb또는 128mb 크기로 잘라서 사용
Node(컴퓨터를 노드로 지칭함)
'교육(KOCW, 오프라인) > 빅데이터분산컴퓨팅(하둡에코시스템)' 카테고리의 다른 글
빅데이터 분산 컴퓨팅 정리(19~23강 python spark 관련) (0) | 2017.09.05 |
---|---|
빅데이터 분산 컴퓨팅 정리(9~14강 HIVE관련) (0) | 2017.09.05 |
빅데이터 분산 컴퓨팅 정리(5~8강 HDFS와 맵리듀스) (0) | 2017.08.30 |
빅데이터 분산 컴퓨팅 정리(3~4강 하둡설치 및 기본 명령어) (0) | 2017.08.30 |