Hadoop - 작동 원리, 장단점

2023. 8. 29. 10:03학습/Data Engineering

간단요약)

Hadoop

 1. 데이터 파일을 여러 컴퓨터에 나누어 저장,

 2. 이것을 병렬 처리하는 구조 -> 데이터 양이 방대해도 유연하게 다룰 수 있음.

 

 

 

하둡(Hadoop)은 Apache Software Foundation에서 개발한 오픈 소스 프레임워크로, 대용량 데이터를 분산된 환경에서 처리할 수 있도록 설계되었다.

 

 

작동원리

HDFS(Hadoop Distributed File System)

HDFS는 하둡의 핵심 구성 요소 중 하나로, 대용량 파일을 여러 노드에 걸쳐 분산 저장합니다.

각 데이터는 블록 단위로 나누어지고, 이 블록들은 네트워크상의 다른 컴퓨터에 분산 저장된다.


MapReduce

MapReduce는 하둡이 대규모 데이터를 처리하는 방식입니다.

'Map' 단계에서 각 노드는 자신에게 할당된 데이터를 독립적으로 처리하고, 'Reduce' 단계에서는 모든 결과를 합쳐 최종 결과를 도출한다.

 

 

장점

확장성: 새로운 노드 추가가 용이하여 시스템의 저장 용량과 계산력을 증가시키기 쉽다.


내고장성(Fault-tolerance): 데이터 복제 기능을 통해 한 또는 여러 노드가 고장나더라도 원래의 데이터를 잃지 않는다.


비용 효율성: 오픈 소스 소프트웨어이며 일반적인 컴퓨터 하드웨어에서 실행될 수 있어 비싼 전용 장비가 필요 없다.

 

 

단점

Latency(지연 시간): 하둡은 배치 처리에 최적화되어 있으므로 실시간처리나 인터랙티브한 작업에 부적합하다.


복잡성: Hadoop 환경을 설정하고 관리하는 것은 상당한 기술적 지식을 요구하며 복잡할 수 있다.

 ( 개인 경험 : 환경을 설정하는데에도 무지 힘들었음 - 1. AWS  2. 세션  3. 구조)

 

보안 문제: 초기 버전의 Hadoop은 보안 기능이 제한적이었지만, 최근에는 Kerberos 인증을 통해 이 문제를 어느 정도 해결하였다. 그러나 여전히 보안이 중요한 기업 환경에서는 추가적인 보안 솔루션을 필요로 할 수 있다.


데이터 무결성: 하둡은 데이터를 여러 블록으로 분산 저장하므로, 한 번에 전체 데이터 세트를 수정하는 것이 어렵다.

따라서 실시간으로 변경되는 데이터에 대해서는 무결성을 유지하는 데 어려움이 있을 수 있다.

 

 

활용

대용량 로그 분석

웹사이트 방문자 로그, 서버 로그 등 대규모의 로그 파일을 분석하여 사용자 행동 패턴 파악, 시스템 성능 모니터링 등에 활용


추천 시스템

E-commerce, 영화 추천 등 다양한 추천 시스템에서 사용자의 과거 행동 데이터를 기반으로 개인화된 추천 목록을 생성하는데 사용


과학 연구

유전체 학습, 단백질 구조 예측 등 생명과학 연구에서 대규모의 생물 정보 데이터를 처리하고 분석하는데 활용

 

 

여담

 

단점 항목에서 실시간 처리에 적합하지 않다고 하였는데, 이는 다른 프레임워크등을 활용해서 실시간처리, 다른 활용도 가능해진다.

(Spark, Hive 등등)

 

728x90