ps. programming begginer 로써 초급자에 관점에서 앞으로 hadoop 포스팅 해볼 생각입니다^^

 

 

What is Hadoop?

 

 

대용량 데이터를 처리하는 분산 응용 프로그램을 작성하고 실행시키기 위한 오픈 소스 프레임워크(framework)이다.

 

 

- Hadoop simbol - 

 

 

Appearance of Hadoop

 

 

 

오늘날, 고용량의 멀티미디어 데이터 와 페이스북같은 SNS 의 등장으로 인해 데이터는 폭발적으로 으로 증가하고 있고 Big Data, Cloud 등과 같은 대용량의 데이터를 사용하고 관리하는 기술들이 개발되어 지고 있다. 이렇게 방대하게 커져버린 데이터를 현존하는 방식으로 처리하기란 많은 무리가 있다.

 

이런 문제점을 해결하기 위해 구글에서 먼저 MadpReduce를 공개 했는데, Mapreduce는 구굴의 데이터 처리량을 확장하기 위해 사용되는 시스템이다. Doug Cutting은 구글에서 발표한 MapReduce의 논문을 바탕으로 '하둡(Hadoop)'이라는MadpReduce의 오픈 소스 버전을 개발하게 되었고 야후와 다른 기업들의 동참으로 오늘날 하둡은 야후, 페이스북, 링크드인, 트위터와 같은 웹 기반의 회사에서 연산처리를 위한 인프라의 핵심 부분으로 사용되고 있다.

 

 

 

*MapReduce : 다수의 컴퓨터에서 데이터를 분산처리하여, 그 결과를 추려내는 데이터 프로세싱 기법

 

Advantage of Hadoop

 

 


초당 100MB 를 처리할수 있는 값비싼 컴퓨터 한대가 4TB의 데이터를 처리한다고 하였을때 대략 세 시간 정도가 소요된다. 하지만 하둡은 4TB의 데이터를 분산된 여러 컴퓨터가 병렬로 나누어서 동시에 처리하기 때문에 훨씬 빠른 속도로 데이터를 처리 할수 있다. 또 이런한 값싼 범융 컴퓨터들로 이루어진 클러스트를 구축하는것이 비용면에서 성능 좋은 컴퓨터보다 저렴하다.

 

클라이언트는 연산할 데이터를 보내는 대신 연산할 식(MapReduce)을 데이타가 존재 하는 클러스트에 보내는 방식이다. 클라이언트에서 보내는 MapReduce프로그램은 크기가 KB 단위로 매우 작기 때문에 전송이 빠르다. 처리될 데이타는 클러스트에 저장되어 있고 하둡클러스는 클라이언트에서 보낸 작은 코드를 읽어 데이터 연산을 처리한다. 



저작자 표시
신고