티스토리 뷰
빅데이터 프로젝트를 하게되면 항상 마주하게 되는 하둡(Hadoop)에 대한 이야기이다.
빅데이터를 새롭게 구축 하는 일을 마주하게 되면 제일 먼저 큰 데이터를 저장 할 저장소와 저장한 데이터를 처리할 CPU 의 자원이 필요하다.
우리는 Apache Hadoop을 왜 쓰게 되었을까?
- 큰 데이터를 처리하기에 기존 방식은 너무 비싸다.
- 애플리케이션/트랜잭션 로그 정보는 매우 크다.
▶ 대용량 파일을 저장할 수 있는 분산 파일 시스템을 제공한다.
- I/O 집중적이면서 CPU도 많이 사용한다.
▶ 멀티 노드로 부하를 분산시켜 처리한다.
- 데이터베이스는 하드웨어 추가 시 성능 향상이 선형적이지 않다.
▶ 장비를 증가시킬수록 성능이 선형적으로 향상된다.
- 데이터베이스는 소프트웨어와 하드웨어가 비싸다.
▶ Apache Hadoop은 무료이다.
▶ Intel Core 머신과 리눅스는 싸다.
빅데이터 시장은 특이한 시장이다. 소프트웨어를 팔면 안된다. 서비스를 팔고 플랫폼을 구축해야 하는 시장이다.
하둡(Hadoop)의 패러다임의 전환과 적응
로직이 데이터로 접근하지 말고 데이터가 있는 곳으로 로직을 옮겨라.
MapReduce 개발자라면 한 번쯤은 고민해봐야 할 문구이다.
하둡(Hadoop), RDBMS 데이터 처리의 위치
11번가를 예를 들어보자.
하둡(Hadoop)과 DB가 처리하는 데이터는 완전히 다르다.
하둡(Hadoop) - 홈페이지 유입 경로
RDBMS - 고객, 상품, 구매 정보
고객별로 11번가를 이용하는 방법이 다르다.
어떤 고객은 검색어를 활용하고, 어떤 고객은 카테고리별로 상품을 찾아본다.
홈페이지 유입 경로는 기존의 데이터베이스 관점에서는 저장하기에 돈이 많이 들고 쓸모 없는 데이터들 일 수 있다.
하둡(Hadoop)을 사용하면 저렴한 가격으로 데이터를 수집하고 분석하여 고객 별 유입, 구매 패턴을 찾을 수 있다.
고객 별 맞춤 사이트 구조를 제공하면 결국에 기업의 매출 향상에 기여하게 될 것이기에 기업들이 앞다퉈 데이터를 수집하고 분석하기 시작했다.
Traditional RDBMS |
MapReduce |
|
Data size |
Gigabyte |
Petabyte |
Access |
Interactive and batch |
Batch |
Updates |
Read and write many times |
Write once, read many times |
Structure |
Static schema |
Dynamic schema |
Integrity |
High |
Low |
Scaling |
Nonlinear |
Linear |
하둡(Hadoop)은 DB가 아니기 때문에 Integrity를 논하는 것은 무의미 하다.
하둡(Hadoop) 배포판 종류와 특징
빅데이터 분석을 위한 하둡(Hadoop)의 중요성이 커지는 가운데, 하둡(Hadoop) 배포판으로 어떤 것을 활용해야 하는지에 대한 선택이 중요해지고 있다.
현재 하둡(Hadoop) 배포판은 아파치 하둡, 호튼웍스, 클라우데라, 맵알 등 4개로 구성되어 있다.
- 아파치 하둡 - 단순하게 커스터마이징해서 사용하고자 한다면 아파치 하둡을 사용하는 것이 권장된다.
- 호튼웍스 - HDP는 가장 오픈소스 다운 배포판으로 인정받고 있으며, 버전업이 빠른 것이 장점이다. 오픈소스처럼 사용하는 것을 중요하게 생각된다면 HDP를 사용하는 것이 권장된다.
- 클라우데라 - CDH는 관리 시스템이 우월하는 점이 있다. 임팔라, 스파크 등을 전략적으로 포함했다. 관리적인 측면이 중요하게 생각된다면 CDH를 사용하는 것이 권장된다.
- 맵알 - 파일시스템의 성능이 중요하게 생각된다면 맵알을 사용하는 것이 권장된다.
위와 같은 특징들과 운영진의 생각과 기업 또는 조직 상황에 따라 적절하게 선택해야 한다.
'데이터베이스 > Big Data' 카테고리의 다른 글
[Big Data] 자주 사용하는 Hadoop 명령어 (0) | 2019.09.25 |
---|---|
[Big Data] hadoop fs dfs 어떻게 다른가? (0) | 2019.09.25 |
[Big Data] 자주 사용하는 Hive 명령어 (0) | 2019.09.18 |
[Big Data] 하둡(Hadoop) 기본 구성요소 (0) | 2019.02.08 |
[Big Data] 빅데이터 이해하기 (0) | 2019.02.02 |
- 프로그래머
- React
- 성능분석
- 자바
- 소프트웨어공학
- Maven
- 제주도 3박4일 일정
- 경력관리
- 자바스크립트
- Java
- SQL
- spring
- 회고
- 제주도 여행
- 개발환경
- 이직
- javascript
- 오라클
- 리액트 16
- 리액트
- Tomcat
- 정렬 알고리즘
- 프로그래머스
- effective java
- 리눅스 명령어
- 오라클 내장 함수
- Collection
- Linux 명령어
- sort algorithm
- Eclipse
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |