1. 서울 하둡 사용자 모임 발표자료
2014년 1월
최종욱 tchoi@hortonworks.com
2. 오늘의 코스
1. 모든 사용자를 위한 하둡
2. 하둡 2, 무엇이 달라졌나
3. 하이브 0.13 프리뷰 소개
3. 모든 사용자를 위한 하둡
중소기업과 부서, 학술 연구도
상용 하둡 배포판을 사용하려면?
4. 빅데이터의 문턱은 높다
사장님 曰 “빅데이터 우리에
게 적합한지 알아봐”
전문 업체에게 물어보면 수
천만원, 수십 TB, 장비 수십
대, 집단 교육, 검증 기간을
이야기하는데 큰 투자엔 큰
수익이 있어야 하지만 확신
이 없다.
5. 점진적 적용 계획
투자 대비 이익이 크면 다음 단계로,
적으면 이전 단계로
단일 서버
• 무료
• 가상머신
• 낮은 성능
• 1대
• 지원 없음
• HDP
Sandbox
임대 서버
• 수백만원
• 유동/소량
• 낮은 보안
• 4대 이상
• 지원 포함
• HDInsight
내부 서버
• 수천만원
• 고정/대량
• 높은 보안
• 10대 이상
• 지원 별도
• HDP
for
Win/
Linux
6. 빅데이터의 악몽
“김대리,
내일 아침까지 보
고서 준비 해 와”
• 건네받은 자료는 수백GB
• 할 줄 아는 건 오피스 뿐
• 사무실에는 고물 컴퓨터
빅데이터 기술이 김대리를
도울 수 있을까?
야근이다!
7. 빅데이터 맛보기
1. HD인사이트 가입
(24만원 쿠폰 증정,
시간
당 사용료 몇천원)
2. 파일 업로드
3. 엑셀에서 불러오기
4. 파워포인트 자료 만들기
8. 엑셀-‐하이브 연동 기능
하이브 ODBC 드라이버를
설치하면 엑셀에 하이브 쿼
리 창이 추가된다.
가져올 필드, 선택 조건, 통
계 함수 등을 선택하면 자동
으로 하이브 쿼리를 생성하
며 그 결과를 가져온다.
가져온 데이터로 그래프를
만들어 파워포인트에 붙여
넣을 수 있다.
9. 환상 궁합
마이크로소프트
• 기존에 오피스, 서버 담당
• 저렴한 가격의 호스팅
• 소비자에게 익숙한 기술
• 오픈소스 개발에 참여
호튼웍스
• 기존에 하둡 담당
• 강력한 하둡 성능
• 기존 제품과 호환성 담보
• 오픈소스 파트너십을 리딩
10. 문턱 비용
기존 방법
다룰 데이터
준비 기간
-‐-‐-‐-‐
컴퓨터 수십대
전문가
연간 사용료
-‐-‐-‐-‐
총 비용
수TB 이상
몇 주
수천만원
수천만원
수천만원
수천만원
HD인사이트
다룰 데이터
준비 기간
-‐-‐-‐-‐
있는 컴퓨터
있는 직원
월간 사용료
--‐-‐-‐
총 비용
수GB
몇 시간
0원
0원
수백만원
수백만원
11. 엑셀 분석 이상을 원한다면
전용 분석 프로그램
웹사이트,
윈도 프로그램 등
개발자를 재교육하여 추가 개발
하둡 관리 서비스
>
배포판 사업자의 일
범용 분석 프로그램
SAS,
SAP,
MicroStrategy 등
제조사와 협력하여 추가 개발
하둡 관리 서비스
> 배포판 사업자의 일
12. Q.
클라우드 환경에 최적화하는 방법
기본에 충실
• 각 배포판별 권장 사양에 맞추
어 클러스터를 구성.
• 특히 가상 머신을 쓰면 디스크
및 네트워크에서 생각하지 못
한 제약이 생길 수 있음.
또는 전용 서비스 구매
• 이미 각 배포판에 최적화된 사
양을 제공.
• 대개 배포판 사업자의 기술 지
원도 포함됨.
13. 각 배포판별 클라우드 예시 사양
HDP
C 배포판
M 배포판
인스턴스 타입
Azure
A3
AWS
EC2
hs1.8xlarge
물리 서버 기준
vCPU
8
16
8
메모리
14GB
117GB
32GB
저장소
4
x
1TB
24
x
2TB
12
x
2TB
네트워크
1G
10G
2
x
1G
15. 하둡 1의 제한들
• 대안 패러다임과 서비스에 대한 지원 부족
– 모든 것들을 맵리듀스처럼 만든다
– 맵리듀스에서 반복적인 작업은 10배나 느리다
• 확장성
– 최대 클러스터 크기가 5천대 정도
– 최대 동시 작업 수는 4만개 정도
• 가용성
– 실패하면 대기중이거나 진행중인 작업을 중단시킨다
• 자원을 맵과 리듀스 단위로만 할당
– 자원 활용에 있어서 비효율적
16. 하둡 2 다목적 작업 플랫폼
단일 목적 시스템
다목적 플랫폼
배치 응용
배치,
인터랙티브,
온라인,
스트리밍,
…
HADOOP
1.0
HADOOP
2.0
MapReduce
Others
(data
processing)
MapReduce
YARN
(cluster
resource
management
&
data
processing)
(cluster
resource
management)
HDFS
HDFS2
(redundant,
reliable
storage)
(redundant,
highly-‐available
&
reliable
storage)
Page
16
19. HDFS 2.0 고가용성
Monitor and maintain
active lock
ZooKeeper Service
ZooKeeper
ZooKeeper
Monitor and try to take
active lock
ZooKeeper
ZKFC
Monitor
liveness and
health.
Manage HA
state.
ZKFC
Monitor
liveness and
health.
Manage HA
state.
Shared Edits
JournalNode
Write
NameNode
JournalNode
JournalNode
Read
Acave
NameNode
Standby
DataNode
DataNode
.....
DataNode
Page 19
21. 가장 많은 오해
• “스팅어는 하이브랑 다르죠?”
– 스팅어 = 하이브 새 버전을 이끄는 오픈소스 커뮤니티
– 스팅어 1단계 = 하이브 0.11
– 스팅어 2단계 = 하이브 0.12
– 스팅어 3단계 = 하이브 0.13
• “스팅어는 호튼웍스가 따로 만들죠?”
– 여전히 아파치 하이브
– 마이크로소프트,
SAP, 페이스북 등과 함께 제작중
– 오히려 임팔라가 아파치 재단에서 나와서 따로 제작됨
22. 내부 테스트 결과
• hcp://hortonworks.com/blog/
announcing-‐sanger-‐phase-‐3-‐
technical-‐preview/
• 상당한 성능 향상 효과
• 주요 원인
–
–
–
–
–
–
–
맵리듀스 병목 제거
불필요한 기록 최소화
벡터처리 범위 확대
가상머신 미리 대기
네임노드 일부 캐시
압축 성능 향상
…
23. 맵리듀스 병목 제거
• 기존에는 맵리듀스로 작
업하면 불필요하게 맵 작
업을 하기 위해 디스크에
전부 기록해야 해서 느렸
다.
• 맵리듀스를 보다 작은 단
위로 쪼개어 리듀스-‐리듀
스가 가능하도록 만들었
다.
24. 미리 대기 및 네임노드 캐시
• 요청이 올 때 자식 컨테이
너를 만들어서 느렸다.
이
젠 컨테이너를 미리 만들
어서 바로 응답한다.
• 대용량 자료를 처리하면
네임노드에 병목현상이
생긴다. 위치 자료를 캐시
해서 네임노드 병목을 없
앴다.
25. 압축 성능 향상
• ORCFile 에서 압축 성능이
높은 Gzip을 적용,
Parquet
에서는 Snappy가 기본인
것과 대조적이다.
• Gzip은 압축률이 높지만
Snappy는 CPU 점유율이
낮은 것이 특징이다.
• Snappy는 GPL이라서 사용
자가 직접 설치해야 한다.
“Snappy
naave
library
not
loaded”라는 메시지가 나
오면 성능이 떨어진다.
26. 컬럼 단위 저장과 벡터화
• 데이터를 레코드 단위가
아닌,
컬럼 단위로 저장하
여 필요한 컬럼만 읽는다.
• 컬럼 단위로 처리할 때에
벡터화를 적용해서 객체
재활용율을 높여 처리 성
능을 최적화한다.
27. 결론
• 하이브 =
스팅어
• 예전 하이브에서 빠진 기능은 없고, 새 기능은 많
으며,
성능은 훨씬 더 좋다.
• 다른 경쟁 제품들은 조인, 분석 함수 등 핵심 기능
을 없애고 성능을 얻은 뒤에 기능을 추가하는 방
식으로 접근한다.
28. 정리
1. 모든 사용자를 위한 하둡: 샌드박스, 서버 임대와 오
피스 호환 등의 기술로 가볍게 하둡을 써볼 수 있다.
2. 하둡 2, 무엇이 달라졌나:
얀의 도입으로 더 적은 노
드로 더 많은 일을 하고,
HDFS
HA의 도입으로 클러
스터가 더 안전해졌다.
3. 하이브 0.13 프리뷰 소개: 다양한 최적화 기법의 도
입으로 성능이 대폭 향상되었다.