Amazon EMR (Elastic MapReduce)는 대규모 데이터 처리 및 분석을 위한 클라우드 기반 빅데이터 처리 서비스입니다.
Hadoop, Apache Spark, HBase, Flink, Presto 등 오픈 소스 빅데이터 프레임워크를 AWS 환경에서 쉽게 실행할 수 있도록 지원합니다.
1️⃣ EMR 기본 개념
✅ EMR이란?
- AWS에서 제공하는 완전 관리형 빅데이터 분석 서비스
- 대량의 데이터를 분산 및 병렬 처리하는데 사용
- Hadoop, Spark, Presto, Hive, HBase, Flink 등 다양한 빅데이터 엔진을 지원
✅ EMR의 주요 특징
- 대량 데이터 처리 최적화 → 수백~수천 개의 노드를 자동 확장 가능
- 관리 부담 최소화 → 클러스터 설정, 패치, 모니터링, 장애 조치 자동화
- 저비용 → 온프레미스 대비 최대 50~80% 비용 절감
- EC2, S3, RDS, DynamoDB 등 AWS 서비스와 통합 → 데이터 처리 최적화
2️⃣ EMR의 주요 구성 요소
EMR은 Master, Core, Task 노드로 구성된 클러스터 형태로 동작합니다.
노드 유형역할
Master Node | 클러스터 제어 및 Job 스케줄링 (YARN, Spark Master) |
Core Node | 데이터 저장 및 처리 (HDFS, Compute Engine 실행) |
Task Node | 데이터 저장 없이 연산 전용으로 사용 (선택적) |
🔹 EMR 클러스터는 EC2 인스턴스에서 실행되며, 필요에 따라 자동 확장 가능
3️⃣ EMR 사용 사례
✅ 1) 데이터 처리 및 분석
- Apache Spark, Hadoop을 사용하여 대용량 로그 분석, ETL(Extract, Transform, Load) 작업 수행
- 데이터 웨어하우스 구축 (S3 → EMR → Athena)
✅ 2) 머신러닝 및 AI
- Spark MLlib, TensorFlow를 활용한 대규모 데이터 모델 학습
- 금융, 헬스케어, 추천 시스템 등의 AI 분석
✅ 3) 실시간 스트리밍 데이터 처리
- Apache Flink, Apache Kafka와 함께 사용하여 실시간 데이터 스트리밍 분석 가능
✅ 4) BI(비즈니스 인텔리전스)
- Presto, Hive, Hue를 사용하여 BI(비즈니스 분석) 쿼리 실행
4️⃣ EMR 아키텍처 & AWS 통합
EMR은 AWS 내 다양한 서비스와 연동하여 최적화된 데이터 분석을 수행합니다.
연동 서비스설명
Amazon S3 | 데이터를 저장하고 EMR이 이를 가져와 처리 |
Amazon RDS | 데이터베이스 분석 및 연동 |
Amazon DynamoDB | NoSQL 데이터 분석 |
AWS Glue | 데이터 카탈로그 관리 및 ETL 작업 자동화 |
Amazon Athena | S3 데이터를 SQL 기반으로 분석 |
5️⃣ EMR 실행 방법
📌 1) AWS 콘솔에서 EMR 클러스터 생성
- AWS 콘솔 접속 → EMR 서비스 선택
- 클러스터 생성 → EMR 버전, 애플리케이션 선택 (Spark, Hadoop 등)
- 클러스터 구성 (인스턴스 유형, 네트워크 설정 등)
- EMR 스크립트 실행 (Spark, Hive 등)
- 결과 저장 (S3, DynamoDB, RDS 등)
📌 2) AWS CLI를 사용한 EMR 실행
aws emr create-cluster \
--name "MyEMRCluster" \
--release-label emr-6.6.0 \
--applications Name=Hadoop Name=Spark \
--instance-type m5.xlarge \
--instance-count 3 \
--use-default-roles \
--log-uri s3://my-emr-logs/
✔ --applications 옵션에서 사용할 빅데이터 프레임워크 선택
✔ --instance-count 에서 클러스터 크기 조정
✔ --log-uri 로 S3에 로그 저장
6️⃣ EMR 비용 절감 방법
✅ Spot Instances 사용 → 최대 90% 절감 가능
✅ EMR 클러스터 자동 종료 설정 (작업 완료 후 자동 종료)
✅ EC2 인스턴스 크기 최적화 (작업 부하에 맞게 조정)
✅ S3에 데이터 저장 후 분석 → HDFS 대신 비용 절감 가능
📌 결론: Amazon EMR 요약
✔ AWS에서 제공하는 완전 관리형 빅데이터 분석 서비스
✔ Hadoop, Spark, Presto 등 다양한 빅데이터 프레임워크 지원
✔ EC2, S3, DynamoDB, RDS 등 AWS 서비스와 통합 가능
✔ 대용량 데이터 처리, 머신러닝, 실시간 데이터 분석, BI에 활용
✔ 비용 절감을 위해 Spot Instances 및 S3 스토리지를 활용 가능
🚀 AWS에서 대규모 데이터를 빠르게 처리하려면 EMR을 적극 활용하세요! 🔥