'Hadoop - Infomation' 카테고리의 다른 글
[Hadoop] 하둡이란? (2) | 2017.07.21 |
---|---|
[Hadoop] 빅데이터란? (0) | 2017.07.17 |
[Hadoop] 하둡이란? (2) | 2017.07.21 |
---|---|
[Hadoop] 빅데이터란? (0) | 2017.07.17 |
[Hadoop]
"시작하세요! 하둡 프로그래밍 - 위키북스"를 기준으로 작성된 글 입니다.
- 간략 목차
1. 하둡이란?
2. 왜 하둡인가?
3. 하둡 에코시스템
4. 하둡에 대한 오해
1. 하둡이란?
: 구글이 논문으로 발표한 GFS(Google File System)와 맵리듀스(MapReduce)를 2005년에 더그 커팅(Doug Cutting)이 구현한 결과물이다.
: 자바 기반의 오픈소스 프레임워크
: 분산 파일 시스템인 HDFS(Hadoop Distributed File System)에 데이터를 저장하고, 분산 처리 시스템인 맵리듀스를 이용해 처리한다.
2. 왜 하둡인가?
: 정형 데이터의 경우 기존의 관계형 데이터베이스(RDBMS)에 저장할 수 있지만 웹 로그 같은 비정형 데이터를 RDBMS에 저장하기에는 데이터 크기가 너무 크다.
상용 RDBMS가 설치되는 곳은 대부분 고가의 장비인데, 데이터를 감당하기 위해 무한정 스토리지를 늘릴 수도 없다.
: 이에 반해 하둡은 오픈소스 프로젝트이기에 소프트웨어 라이선스 비용에 대한 부담이 없다.
: 또한 값비싼 유닉스 장비를 사용하지 않고, 리눅스 서버면 얼마든지 하둡을 설치해서 운영할 수 있다. 데이터 저장 용량이 부족할 경우, 필요한 만큼 리눅스 서버만 추가 하면 된다.
: 하둡은 여러 대의 서버에 데이터의 복제본을 저장하고, 데이터가 저장된 각 서버에서 동시에 데이터를 처리하기 때문에
데이터의 유실이나 장애가 발생했을 때도 데이터 복구가 가능하다.
3. 하둡 에코시스템
- 코디네이터
: Zookeeper
- 리소스 관리
: YARN
: Mesos
- 데이터 저장
: HBase
: Kudu
- 데이터 수집
: Chukwa
: Flume
: Scribe
: Sqoop
: Hiho
: Kafka
- 데이터 처리
: Pig
: Mahout
: Spark
: Impala
: Presto
: Hive
: Tajo
- 워크플로우 관리
: Oozie
: Airflow
: Azkaban
: Nifi
- 데이터 시각화
: Zeppelin
- 데이터 직렬화
: Avro
: Thrift
4. 하둡에 대한 오해
- RDBMS를 대체 할 수 있다 !?
: 하둡은 기존 RDBMS를 대체하지 않는다. 오히려 RDBMS와 상호보완적인 특성을 띠고 있다.
: BI(Business Intelligence)나 OLAP(On-line Analytical Processing) 시스템을 사용하는 기업은 분석을 위한 데이터를 처리하기 위해 ETL 과정을 거치게 된다.
: ETL(Extraction, Transformation, Loading)이란 RDBMS나 로그 파일 등 다양한 데이터 소스로부터 필요한 데이터를 추출(Extraction)하고, 변환(Transformation)한 후 DW(Data Warehouse) 혹은 DM(Data Mart)에 전송과 적재(Loading)하는 과정을 의미한다.
: ETL은 자체적으로 셸 스크립트나 SQL 문을 이용해 진행하거나, DataStage 같은 상용 솔루션을 이용해 진행한다. 하둡은 이러한 ETL 과정에 도움을 줄 수 있다.
: 하지만 하둡은 트랜잭션이나 무결성이 반드시 보장돼야 하는 데이터를 처리하는 데 적합하지 않다.
그 이유는 하둡은 배치성으로 데이터를 저장하거나 처리하는 데 적합한 시스템으로 구성돼 있기 때문이다.
그래서 데이터 무결성이 중요한 데이터는 트랜잭션 별로 무결성을 보장하는 기존 RDBMS에서 처리하고, 하둡은 배치성으로 데이터를 저장하고, 처리해야 한다.
: 하둡이 실시간 처리가 절대로 불가능한 것은 아니다. 스크라이브나 플럼 같은 솔루션을 통해 데이터를 실시간으로 HDFS에 저장하고, H베이스를 이용해 HDFS에 저장된 데이터를 실시간으로 접근하면 된다.
- 하둡은 NoSQL이다 !?
: 하둡이 RDBMS에 속하는 것은 아니지만 NoSQL의 핵심 기능인 데이터베이스 시스템의 역할을 수행하는 것도 아니다.
[Hadoop] 하둡 실습 (0) | 2017.09.01 |
---|---|
[Hadoop] 빅데이터란? (0) | 2017.07.17 |
[빅 데이터 - BigData]
"시작하세요! 하둡 프로그래밍 - 위키북스"를 기준으로 작성된 글 입니다.
간략 목차
1. 빅데이터의 개념
2. 빅데이터의 3대 요소
1. 빅데이터의 개념
- 데이터의 규모에 초점을 맞춘 정의
: 기존 데이터베이스 관리도구의 데이터 수집, 저장, 관리, 분석하는 역량을 넘어서는 데이터
"맥킨지 2011년 5월"
- 업무 수행 방식에 초점을 맞춘 정의
: 다양한 종류의 대규모 데이터로부터 저렴한 비용으로 가치를 추출하고, 데이터의 빠른 수집, 발굴, 분석을 지원하도록 고안된 차세대 기술 및 아키텍처
" IDC 2011년 6월"
2. 빅데이터의 3대 요소
- 크기(Volume)
: 비즈니스 특성에 따라 다를 수 있지만 일반적으로 수십 테라바이트 혹은 수십 페타바이트 이상이 빅데이터에 해당한다.
: 이러한 빅데이터는 기존 파일 시스템에 저장하기 어려울뿐더러 데이터 분석을 위해 사용하는 기존 데이터웨어하우스(DW; Data warehouse)
같은 솔루션에서 소화하기 어려울 정도로 급격하게 데이터의 양이 증가하고 있다.
: 이러한 문제를 극복하려면 확장 가능한 방식으로 데이터를 저장하고 분석하는 분산 컴퓨터 기법으로 접근해야 한다.
: 현재 분산 컴퓨팅 솔루션으로는 구글의 GFS와 아파치의 하둡이 있고,
대용량 병렬 처리 데이터베이스로는 EMC의 GreenPlum, HP의 Vertica, IBM의 Netezza, 테라데이터의 Kickfire 등이 있다.
- 속도(Velocity)
: 데이터의 생산, 저장, 유통, 수집, 분석이 실시간으로 처리
: 수집된 대량의 데이터를 다양한 분석 기법과 표현 기술로 분석해야 하고, 장기적으로 전략적인 차원에서의 접근을 위해
데이터 마이닝, 기계 학습, 자연어 처리, 패턴 인식을 사용한 분석 처리
- 다양성(Variety)
: 데이터 정형화의 종류에 따라 정형(structed), 반정형(semi-structured), 비정형(unstructured)으로 나눌 수 있다.
: 정형 데이터는 정형화된 데이터로, 고정된 필드에 저장되는 데이터 (일정한 형식을 갖추고 저장되는 데이터)
: 반정형 데이터는 고정된 필드로 저장돼 있지는 않지만 XML이나 HTML 같이 메타데이터나 스키마 등을 포함하는 데이터
: 비정형 데이터는 고정된 필드에 저장돼 있지 않은 데이터
유튜브 업로드 동영상 데이터, SNS나 블로그에 저장하는 데이터, 유무선 전화기에서 발생하는 통화 내용 등 다양한 비정형 데이터
∴ 빅데이터는 이러한 비정형 데이터도 처리할 수 있는 능력을 갖춰야 한다.
[Hadoop] 하둡 실습 (0) | 2017.09.01 |
---|---|
[Hadoop] 하둡이란? (2) | 2017.07.21 |