하둡: Difference between revisions
From CS Wiki
No edit summary |
(→Tajo) |
||
Line 1: | Line 1: | ||
[[분류:데이터베이스]] | [[분류:데이터베이스]] | ||
;Hadoop | ;Hadoop | ||
; 다수의 컴퓨터로 분산 구성된 [[빅데이터]]를 병렬로 처리할 수 있는 [[공개 소프트웨어]] 프레임워크 | ;다수의 컴퓨터로 분산 구성된 [[빅데이터]]를 병렬로 처리할 수 있는 [[공개 소프트웨어]] 프레임워크 | ||
==특징== | |||
*'''분산 구조''': 여러개의 서버, 일반 PC 등을 모아 분산된 파일시스템 및 분석 시스템 형성 가능 | |||
*'''[[공개 소프트웨어]]''': 무료로 자유롭게, 필요한 경우 변형하여 사용 가능 | |||
*'''[[결함 허용]] 및 [[확장성]]''': 성능 증강이 필요하면 노드 쉽게 추가 가능, 일부 노드가 죽어도 정상 동작 | |||
== | ==구조== | ||
;크게 [[맵리듀스]]와 하둡 분산 파일 시스템(HDFS)으로 나눌 수 있다. | ;크게 [[맵리듀스]]와 하둡 분산 파일 시스템(HDFS)으로 나눌 수 있다. | ||
[[파일:하둡 클러스터.png]] | [[파일:하둡 클러스터.png]] | ||
=== 하둡 분산 파일 시스템 === | ===하둡 분산 파일 시스템=== | ||
;Hadoop Distributed File System | ;Hadoop Distributed File System | ||
=== 맵리듀스 === | *네임노드(Namenode): 마스터 노드 | ||
*데이터노드(Datanode): 슬레이브 노드 | |||
===맵리듀스=== | |||
;MapReduce | ;MapReduce | ||
== 하둡 에코시스템 == | *잡 트래커 | ||
*태스크 트래커 | |||
==하둡 에코시스템== | |||
[[파일:하둡 에코시스템.png]] | [[파일:하둡 에코시스템.png]] | ||
;하둡 코어 프로젝트(HDFS, 맵리듀스)와 하둡 서브 프로젝트(수집, 분석, 마이닝 등)로 구성 | ;하둡 코어 프로젝트(HDFS, 맵리듀스)와 하둡 서브 프로젝트(수집, 분석, 마이닝 등)로 구성 | ||
=== Zookeeper(주키퍼) === | ===Zookeeper(주키퍼)=== | ||
=== Oozie(우지) === | ===Oozie(우지)=== | ||
=== Avro(에이브로) === | ===Avro(에이브로)=== | ||
=== Parquet(파케이) === | ===Parquet(파케이)=== | ||
=== Flume(플룸) === | ===Flume(플룸)=== | ||
=== Sqoop(스쿱) === | ===Sqoop(스쿱)=== | ||
=== Pig(피그) === | ===Pig(피그)=== | ||
=== Crunch(크런치) === | ===Crunch(크런치)=== | ||
=== HBase === | ===HBase=== | ||
* HDFS를 보다 효율적으로 사용하기 위한 시스템 | |||
* 구조화된 대용량의 데이터에 빠른 [[임의 접근]]을 제공(Latency 감소) | *HDFS를 보다 효율적으로 사용하기 위한 시스템 | ||
* HDFS의 데이터에 대한 실시간 읽기/쓰기 기능 제공 | *구조화된 대용량의 데이터에 빠른 [[임의 접근]]을 제공(Latency 감소) | ||
*HDFS의 데이터에 대한 실시간 읽기/쓰기 기능 제공 | |||
===Hive(하이브)=== | |||
===Impala=== | |||
===Tajo(타조)=== | |||
* 오픈소스 기반 분산 컴퓨터 플랫폼인 아파치 하둡(Apache Hadoop) 기반의 분산 데이터 웨어하우스 프로젝트로 대규모 데이터 처리와 실시간 상호 분석에 모두 사용 가능함. | |||
==하둡 배포판== | |||
*아파치 하둡 | |||
*클라우데라 하둡(CDH) | |||
*호튼웍스 하둡 | |||
*앱알(MAPR) 하둡 | |||
== | ==한계== | ||
*실시간 데이터 처리에는 비효율적 | |||
*비동기적 데이터 처리에 비효율적 | |||
* | *반복 작업이 많은 경우에는 비효율적 | ||
* | |||
* | |||
== | ==참조 문헌== | ||
*[http://www.incodom.kr/hadoop_%EC%B4%9D%EC%A0%95%EB%A6%AC_2%ED%8E%B8 hadoop 총정리 2편] | |||
* [http://www.incodom.kr/hadoop_%EC%B4%9D%EC%A0%95%EB%A6%AC_2%ED%8E%B8 hadoop 총정리 2편] | *[https://www.youtube.com/channel/UCKttG86PDVKdGXHmTxnLD-A Big Data Koo(구자환 교수님 채널)] | ||
* [https://www.youtube.com/channel/UCKttG86PDVKdGXHmTxnLD-A Big Data Koo(구자환 교수님 채널)] |
Revision as of 01:51, 18 May 2022
특징
- 분산 구조: 여러개의 서버, 일반 PC 등을 모아 분산된 파일시스템 및 분석 시스템 형성 가능
- 공개 소프트웨어: 무료로 자유롭게, 필요한 경우 변형하여 사용 가능
- 결함 허용 및 확장성: 성능 증강이 필요하면 노드 쉽게 추가 가능, 일부 노드가 죽어도 정상 동작
구조
- 크게 맵리듀스와 하둡 분산 파일 시스템(HDFS)으로 나눌 수 있다.
하둡 분산 파일 시스템
- Hadoop Distributed File System
- 네임노드(Namenode): 마스터 노드
- 데이터노드(Datanode): 슬레이브 노드
맵리듀스
- MapReduce
- 잡 트래커
- 태스크 트래커
하둡 에코시스템
- 하둡 코어 프로젝트(HDFS, 맵리듀스)와 하둡 서브 프로젝트(수집, 분석, 마이닝 등)로 구성
Zookeeper(주키퍼)
Oozie(우지)
Avro(에이브로)
Parquet(파케이)
Flume(플룸)
Sqoop(스쿱)
Pig(피그)
Crunch(크런치)
HBase
- HDFS를 보다 효율적으로 사용하기 위한 시스템
- 구조화된 대용량의 데이터에 빠른 임의 접근을 제공(Latency 감소)
- HDFS의 데이터에 대한 실시간 읽기/쓰기 기능 제공
Hive(하이브)
Impala
Tajo(타조)
- 오픈소스 기반 분산 컴퓨터 플랫폼인 아파치 하둡(Apache Hadoop) 기반의 분산 데이터 웨어하우스 프로젝트로 대규모 데이터 처리와 실시간 상호 분석에 모두 사용 가능함.
하둡 배포판
- 아파치 하둡
- 클라우데라 하둡(CDH)
- 호튼웍스 하둡
- 앱알(MAPR) 하둡
한계
- 실시간 데이터 처리에는 비효율적
- 비동기적 데이터 처리에 비효율적
- 반복 작업이 많은 경우에는 비효율적