Hadoop 이란?
하둡 소프트웨어 라이브러리는 간단한 프로그래밍 모델을 사용하여 여러대의 컴퓨터 클러스터에서 대규모 데이터 세트를 분산 처리 할 수있게 해주는 프레임워크 이다.
단일 서버에서 수천대의 머신으로 확장 할 수 있도록 설계되었다.
일반적으로 하둡파일시스템(HDFS)과 맵리듀스(MapReduce)프레임워크로 시작되었으나, 여러 데이터저장, 실행엔진, 프로그래밍 및 데이터처리 같은 하둡 생태계 전반을 포함하는 의미로 확장 발전 되었다.
[출처] [빅데이터] 하둡(Hadoop)이란?|작성자 에이콘아카데미
하둡 프레임워크는 중요 구성요소
1. 맵리듀스 데이터처리 프레임워크
- 데이터 처리 및 프로그래밍의 패러다임이라고 표현. 데이터베이스 엔진과 유사하다.
2. 하둡 분산형 파일시스템(Hadoop Distributed Filesystem, HDFS)
- 하둡 네트워크에 연결된 아무 기기에나 데이터를 밀어 넣는 분산형 파일 시스템 개념. 하지만 여기에도 체계가 있어서 그냥 닥치는 대로 배치하는 것은 아니지만, RDBMS의 고도로 엄격한 저장 인프라에 견줘보면 돼지우리나 다름없다.
########################################################
하둡(Hadoop)이란 무엇인가??
대용량 데이터 처리를 위해 컴퓨터 클러스터에서 동작하는 분산 응용 프로그램을 지원하는 오픈 소스 프레임 워크.
구글 파일 시스템(GFS)를 벤치 마킹하여 하둡 분산 파일 시스템
(HDFS:Hadoop Distributed File System)과 맵리듀스(MapReduce)를 구현한 기술.
HDFS란 무엇인가?
- Block 단위(기본 64MB)로 대량의 데이터 저장(GB, TB → PB, EB, ZB)
- Block 복제(Fault-tolerant → 각 Block은Datanode에 3개 이상의 복제)
- 단일 Master(확장성 용이 → 4000+ node,balancing)
- No Caching(대량 데이터의 순차읽기를 통한 Processing)
- Customizing API(기본적으로 JAVA, C++, Python 제공)
MapReduce Programming
- 구글에서 발표한 병렬 처리 모델
- 대용량 데이터로부터 Key-Value Mapping을 통해 Reduction을 하는 프로그래밍 모델
- K-V에 대한 커스터마이징을 지원함으로써 유연한 프로그래밍 제공
- Binary 탐색, Hash 알고리즘 적용 등을 통한 빠른 데이터 처리 가능
- 기존의 병렬 처리 모델은 프로세스가 있는 곳으로 데이터를 모아서 처리
- MapReduce는 데이터가 있는 곳으로 프로그램을 배포하여 처리
하둡이 빅데이터에 적합한 이유
- 대용량 파일을 저장할 수 있는 분산 파일 시스템을 제공
- 클러스터 구성을 통해 멀티 노드로 부하를 분산시켜 처리
- 장비를 증가시킬수록 성능이 Linear에 가깝게 향상
- 오픈 소스, Intel Core 머신과 리눅스는 저렴
출처: https://jmkjb.tistory.com/entry/HadoopPlatform [StartUp]
'임시 저장소(Temperature)' 카테고리의 다른 글
[Kakao API] Javascript 카카오톡 채널 추가하기 (0) | 2019.10.16 |
---|---|
[Kipris] 초보자도 할 수 있는 키프리스 특허 검색/조회 방법 (0) | 2019.10.15 |
[Docker] 윈도우 10 Home 버전에 도커 설치하는 방법 | How to install docker in windows 10 Home version (0) | 2019.10.14 |
[Linux/Ubuntu] 서버 소켓/네트워크 프로그래밍 첫 번째 | Socket programming Network for Server (0) | 2019.10.01 |
[Windows 10] 스케쥴러를 이용한 백그라운드 시스템 기능 구현 | Scheduler for background process system (0) | 2019.10.01 |