Amazon EMR을 사용하면 필요한 용량을 신속하고 손쉽게 프로비저닝할 수 있고 자동이나 수동으로 용량을 추가 및 제거할 수 있습니다. 따라서 처리 요구 사항이 일정하지 않거나 예측 불가능한 경우에 매우 유용합니다. 예를 들어, 야간에 대용량의 처리 작업이 발생할 경우 주간에 100개의 인스턴스가 필요하고 야간에 500개의 인스턴스가 필요할 수 있습니다. 또는 단기간 상당한 용량이 필요할 수도 있습니다. Amazon EMR을 사용하면 신속하게 수백 개 또는 수천 개의 인스턴스를 프로비저닝하고, 컴퓨팅 요구 사항에 맞춰 자동으로 확장하며, 유휴 용량에 대한 비용이 더 이상 청구되지 않도록 작업 완료 시 클러스터를 종료할 수 있습니다.

elastic

용량을 추가하거나 제거할 수 있는 두 가지 메인 옵션이 있습니다.

여러 클러스터 배포: 용량이 더 필요한 경우 손쉽게 새 클러스터를 시작하고 더 이상 필요하지 않게 되면 종료할 수 있습니다. 사용할 수 있는 클러스터 수에는 제한이 없습니다. 사용자나 애플리케이션이 다수인 경우 여러 클러스터를 사용할 수 있습니다. 예를 들어, 입력 데이터를 Amazon S3에 저장하고 해당 데이터를 처리해야 하는 각 애플리케이션에 대해 한 개의 클러스터를 시작할 수 있습니다. 첫 번째 클러스터는 CPU에 최적화될 수 있고, 두 번째 클러스터는 스토리지에 최적화될 수 있습니다.

실행 중인 클러스터의 크기 조정: Amazon EMR을 사용하면 실행 중인 클러스터의 크기를 자동으로 확장하거나 수동으로 조정할 수 있습니다. 클러스터의 처리 성능을 일시적으로 높이기 위해 클러스터를 확장하거나 유휴 용량이 있을 경우 비용을 절약하기 위해 클러스터를 축소하길 원할 수 있습니다. 예를 들어, 일부 고객은 배치 처리가 발생하면 클러스터에 수백 개의 인스턴스를 추가하고 처리가 완료되면 남는 인스턴스를 제거합니다. 클러스터에 인스턴스를 추가하는 경우 이제 EMR에서는 프로비저닝된 용량이 제공되는 대로 이를 활용할 수 있습니다. 축소를 진행하는 동안 EMR은 사전에 유휴 노드를 선택하여 실행 중인 작업에 대한 영향을 줄입니다.

Amazon EMR은 대량의 데이터를 처리하는 비용을 줄일 수 있도록 설계되었습니다. 비용을 줄이는 몇 가지 기능으로는 저렴한 초당 요금, Amazon EC2 스팟 인스턴스 통합, Amazon EC2 예약 인스턴스 통합, 탄력성, Amazon S3 통합 등을 들 수 있습니다.

저렴한 초당 요금: Amazon EMR 요금은 초당 부과되며 최소 요금은 1분이고 스몰 인스턴스의 경우 인스턴스 시간당 최저 0.015 USD입니다(연간 131.40 USD). 자세한 내용은 요금 섹션을 참조하십시오.

Amazon EC2 스팟 인스턴스 통합: Amazon EC2 스팟 인스턴스를 사용하면 Amazon EC2 용량에 부과되는 요금을 지정할 수 있습니다. 특정 인스턴스 유형을 실행하기 위해 지불할 의사가 있는 시간당 최고 가격을 지정하면 됩니다. 입찰 가격이 스팟 시장 가격을 초과할 경우 사용자는 해당 인스턴스를 유지하며, 일반적으로 온디맨드 가격의 몇 분의 일에 불과한 가격을 지불합니다. 스팟 가격은 인스턴스의 수요 및 공급에 따라 변동되지만 고객이 지정한 최고 가격보다 더 많이 지불하는 상황은 발생하지 않습니다. Amazon EMR을 사용하면 손쉽게 스팟 인스턴스를 사용할 수 있으므로 시간과 비용을 모두 절약할 수 있습니다. Amazon EMR 클러스터에는 HDFS를 실행하는 '코어 노드'와 HDFS를 실행하지 않는 ‘작업 노드’가 포함되어 있습니다. 스팟 가격이 상승할 경우 해당 인스턴스를 종료해도 HDFS에 저장된 데이터는 손실되지 않으므로 작업 노드는 스팟 인스턴스에 적합합니다. (코어 노드와 작업 노드에 대해 자세히 알아보십시오.)

Amazon EC2 예약 인스턴스 통합: Amazon EC2 예약 인스턴스를 통해 탄력적인 컴퓨팅의 장점을 그대로 살리면서 비용을 절감하고 용량을 확보할 수 있습니다. 예약 인스턴스에서는 저렴한 일회성 요금을 지불하고 해당 인스턴스에 대해 초당 요금을 대폭 할인받을 수 있습니다. Amazon EMR을 사용하면 손쉽게 예약 인스턴스를 활용할 수 있으므로 온디맨드 가격 대비 최대 65%까지 절약할 수 있습니다.

탄력성: Amazon EMR을 사용하면 손쉽게 클러스터를 자동으로 조정할 수 있으므로 용량을 과도하게 프로비저닝할 필요가 없습니다. 예를 들어, 클러스터가 6개월 동안 처리하는 데이터의 양을 모르거나 처리 요구가 들쑥날쑥할 수 있습니다. Amazon EMR을 사용하면 언제든지 간편하게 용량을 추가하거나 제거할 수 있으므로 향후 요구 사항을 어림짐작하거나 피크 수요에 대비한 용량을 프로비저닝하지 않아도 됩니다.

Amazon S3 통합: EMR 파일 시스템(EMRFS)을 사용하면 EMR 클러스터가 하둡을 위한 효율적이고 안전한 객체 스토어로서 Amazon S3를 사용할 수 있습니다. Amazon S3에 데이터를 저장하고 여러 개의 Amazon EMR 클러스터를 사용하여 동일한 데이터 세트를 처리할 수 있습니다. 각 클러스터는 특정 워크로드에 최적화될 수 있으므로 요구 사항이 각기 다른 여러 워크로드를 처리하는 단일 클러스터보다 더 효율적일 수 있습니다. 예를 들어, I/O에 최적화된 하나의 클러스터와 CPU에 최적화된 또다른 클러스터를 사용할 수 있습니다. 각 클러스터는 Amazon S3에서 동일한 데이터 집합을 처리합니다. 또한 입력 및 출력 데이터를 Amazon S3에 저장하여 더는 필요하지 않을 경우 클러스터를 종료할 수 있습니다. 

EMRFS는 강력한 Amazon S3에서 읽기 및 쓰기 성능을 제공하며, AWS Key Management Service(KMS)나 고객 관리 키를 통해 S3 서버 측 또는 S3 클라이언트 측 암호화를 지원하며, 메타데이터에서 추적하는 객체에 대한 목록 및 쓰기 후 읽기 일관성을 확인할 수 있는 일관된 보기를 선택적으로 제공합니다. 또한, Amazon EMR 클러스터는 EMRFS 및 HDFS를 모두 사용할 수 있으므로 클러스터 상 스토리지와 Amazon S3 중 하나를 선택할 필요가 없습니다.

AWS Glue 데이터 카탈로그 통합AWS Glue 데이터 카탈로그를 Apache Spark 및 Apache Hive의 외부 테이블 메타데이터를 저장하는 관리형 메타데이터 리포지토리로 사용할 수 있습니다. 또한, 자동 스키마 검색 및 스키마 버전 기록을 제공합니다. 따라서 클러스터 외에 Amazon S3에 외부 테이블의 메타데이터를 손쉽게 보관할 수 있습니다.

Amazon EMR을 사용하면 Amazon S3, 하둡 분산 파일 시스템(HDFS) 및 Amazon DynamoDB 등의 여러 데이터 스토어를 활용할 수 있습니다.

DetailsPage_EMR-Diagram

Amazon S3: Amazon S3는 내구성, 확장성, 안전성 및 속도가 뛰어나면서도 요금은 저렴한 스토리지 서비스입니다. EMR 파일 시스템(EMRFS)을 통해 Amazon EMR은 효율적이고 안전한 하둡용 객체 스토어로서 Amazon S3를 사용할 수 있습니다. Amazon EMR은 하둡과 관련한 사항을 여러 가지 측면에서 개선한 서비스이므로 Amazon S3에 저장된 대량의 데이터를 원활하게 처리할 수 있습니다. 또한, EMRFS는 Amazon S3 내 객체에 대한 목록 및 읽기 후 쓰기 일관성을 확인할 수 있는 일관적인 보기가 가능합니다. EMRFS는 암호화된 Amazon S3 객체를 처리할 수 있도록 S3 서버 측 또는 S3 클라이언트 측 암호화를 지원하며, AWS Key Management Service(KMS)나 사용자 지정 키 공급업체를 사용할 수도 있습니다.

클러스터를 시작하면 Amazon EMR이 Amazon S3에서 사용자 클러스터의 각 인스턴스로 데이터를 스트리밍하고 즉시 데이터 처리를 시작합니다. Amazon S3에 데이터를 저장하고 Amazon EMR을 사용해 데이터를 처리할 경우 얻을 수 있는 한 가지 이점은 여러 클러스터를 이용해 동일한 데이터를 처리할 수 있다는 것입니다. 예를 들어 동일한 입력 데이터 세트를 사용하는, 메모리에 대해 최적화된 Hive 개발 클러스터와 CPU에 대해 최적화된 Pig 프로덕션 클러스터를 보유할 수 있습니다.

하둡 분산 파일 시스템(HDFS): HDFS는 하둡 파일 시스템입니다. Amazon EMR의 현재 토폴로지에서는 인스턴스를 3개의 논리적 인스턴스 그룹으로 분류합니다. 마스터 그룹은 YARN Resource Manager와 HDFS Name Node Service를 실행하고, 코어 그룹은 HDFS DataNode Daemon과 YARN Node Manager 서비스를 실행하며, 태스크 그룹은 YARN Node Manager 서비스를 실행합니다. Amazon EMR은 코어 그룹의 인스턴스와 연결된 스토리지에 HDFS를 설치합니다.  

각 EC2 인스턴스에는 인스턴스에 부착된, "인스턴스 스토어"라고 부르는 고정 용량의 스토리지가 있습니다. 또한, 사용자는 Amazon EBS 볼륨을 인스턴스에 추가하여 인스턴스의 스토리지를 사용자 정의할 수 있습니다. Amazon EMR을 사용하면 범용(SSD), 프로비저닝된(SSD) 및 마그네틱 볼륨 유형을 추가할 수 있습니다. EMR 클러스터에 추가된 EBS 볼륨은 클러스터가 종료된 후에는 데이터를 유지하지 않습니다. 클러스터를 종료하면, EMR에서 볼륨을 자동으로 정리합니다.

또한, Amazon EMR 보안 구성을 사용하여 HDFS에 대한 완벽한 암호화를 지원하거나 하둡 Key Management Server를 사용하여 수동으로 HDFS 암호화 영역을 생성할 수 있습니다. 

Amazon DynamoDB: Amazon DynamoDB는 완전관리형의 빠른 NoSQL 데이터베이스 서비스입니다. Amazon EMR은 Amazon DynamoDB와 직접 통합되므로 Amazon DynamoDB에 저장된 데이터를 빠르고 효율적으로 처리하고 Amazon DynamoDB, Amazon S3 및 Amazon EMR의 HDFS 간에 데이터를 전송할 수 있습니다.

기타 AWS 데이터 스토어: Amazon EMR 고객은 Amazon Relational Database Service(클라우드에서 관계형 데이터베이스를 손쉽게 설정, 운영 및 확장할 수 있는 웹 서비스), Amazon Glacier(데이터 보관 및 백업을 위한 안전하고 내구성 높은 스토리지를 제공하는 매우 저렴한 스토리지 서비스), Amazon Redshift(페타바이트급의 빠른 완전관리형 데이터 웨어하우스 서비스)도 사용할 수 있습니다. AWS Data Pipeline은 고객이 온프레미스 데이터 소스뿐 아니라 여러 AWS 컴퓨팅 및 스토리지 서비스(Amazon EMR 포함) 간에 데이터를 안정적으로 처리하고 지정된 간격으로 이동할 수 있게 해 주는 웹 서비스입니다.

Amazon EMR은 Hive, Pig, HBase, Impala 같은 강력하고 입증된 하둡 도구를 지원합니다. 또한 부트스트랩 작업을 사용해 Hadoop MapReduce 이외의 분산 컴퓨팅 프레임워크(예: Spark, Presto)를 실행할 수 있습니다. 또한, Hue 및 Zeppelin을 클러스터상의 애플리케이션과 상호 작용하기 위한 GUI로 사용할 수 있습니다.

Hive는 오픈 소스 데이터 웨어하우스이자 하둡에서 실행되는 분석 패키지입니다. Hive는 SQL 기반 언어인 Hive QL로 작동되므로 사용자가 데이터를 정리, 요약 및 쿼리할 수 있습니다. Hive QL은 표준 SQL을 능가하며, map/reduce 함수와 복잡하고 확장 가능한 사용자 정의 데이터 유형(예: JSON 및 Thrift)에 대해 최고의 지원을 제공합니다. 이 기능을 통해 텍스트 문서 및 로그 파일과 같은 복잡한 비정형 데이터 소스도 처리할 수 있습니다. Hive는 사용자가 Java로 작성된 사용자 정의 함수를 통해 확장할 수 있도록 지원합니다. Amazon EMR은 Amazon DynamoDB 및 Amazon S3와의 직접 통합 등 Hive의 여러 측면을 개선한 서비스입니다. 예를 들어, Amazon EMR을 사용하면 Amazon S3에서 자동으로 테이블 파티션을 로드하고, 임시 파일을 사용하지 않고 Amazon S3의 테이블에 데이터를 쓰며, 사용자 정의 map/reduce 작업을 위한 스크립트 및 추가 라이브러리 등 Amazon S3의 리소스에 액세스할 수 있습니다. Hive 및 Amazon EMR에 대해 자세히 알아보십시오.

Pig는 하둡에서 실행하는 오픈 소스 분석 패키지입니다. Pig는 SQL과 비슷한 언어인 Pig Latin으로 작동되므로 사용자가 데이터를 정리, 요약 및 쿼리할 수 있습니다. SQL과 유사한 작업뿐만 아니라 Pig Latin은 또한 map/reduce 함수와 복잡하고 확장 가능한 사용자 정의 데이터 유형에 최고의 지원을 제공합니다. 이 기능을 통해 텍스트 문서 및 로그 파일과 같은 복잡한 비정형 데이터 소스도 처리할 수 있습니다. Pig는 사용자가 Java로 작성된 사용자 정의 함수를 통해 확장할 수 있도록 지원합니다. Amazon EMR은 여러 파일 시스템을 사용할 수 있는 기능(일반적으로 Pig는 한 개의 원격 파일 시스템에만 액세스할 수 있음), Amazon S3에서 고객 JAR과 스크립트를 로드할 수 있는 기능(예: “REGISTER s3:///my-bucket/piggybank.jar”), 문자열과 DateTime 처리를 위한 추가 기능 등 Pig의 여러 측면을 개선한 서비스입니다. Pig 및 Amazon EMR에 대해 자세히 알아보십시오.

HBase는 Google의 BigTable을 본떠서 만든 비관계형 분산 오픈 소스 데이터베이스입니다. 이 데이터베이스는 Apache Software Foundation의 하둡 프로젝트의 일부로 개발되었으며, 하둡 분산 파일 시스템(HDFS)에서 실행되어 하둡에 BigTable과 같은 기능을 제공합니다. HBase는 열 기반 압축 및 저장을 사용하여 다량의 스파스 데이터를 결함 없이 효율적으로 저장할 수 있도록 지원합니다. 또한, HBase는 데이터를 인 메모리에 캐시하므로 데이터 조회를 빠르게 조회할 수 있습니다. HBase는 순차 쓰기 작업에 최적화되어 있으며 배치 처리 삽입, 업데이트 및 삭제에 매우 유용합니다. HBase는 파일 시스템을 공유하고 하둡 작업에 직접 입력 및 출력하는 역할을 하는 등 하둡과 함께 원활하게 작동합니다. HBase는 또한 Apache Hive와 통합하여 HBase 테이블을 통해 SQL과 같은 쿼리를 작성하고 Hive 기반 테이블과 결합하고 Java Database Connectivity(JDBC)에 대한 지원을 할 수 있습니다. Amazon EMR에서는 Amazon S3를 Apache HBase용 데이터 스토어로 사용할 수 있으므로 비용을 절감하고 운영 복잡성을 줄일 수 있습니다. HDFS를 데이터 스토어로 사용하는 경우 HBase를 Amazon S3로 백업하고 이전에 생성한 백업에서 복원할 수 있습니다. HBase 및 Amazon EMR에 대해 자세히 알아보십시오.

Phoenix는 Apache HBase에 저장된 데이터에 대해 ACID 트랜잭션 기능과 함께 지연 시간이 짧은 SQL을 지원합니다. 성능 개선을 위한 보조 인덱스를 손쉽게 생성하고 동일한 기본 HBase 테이블에 대해 다른 보기를 생성할 수 있습니다. Amazon EMR에서 Phoenix를 사용하는 방법에 대해 자세히 알아보십시오.

Impala는 SQL 구문을 사용하는 대화형 임시 쿼리를 위한 하둡 에코시스템의 오픈 소스 도구입니다. Impala는 MapReduce를 사용하지 않고 전통적 RDBMS(관계형 데이터베이스 관리 시스템)의 엔진과 비슷한 MPP(대량 병렬 처리) 엔진을 사용합니다. Impala 및 Amazon EMR에 대해 자세히 알아보십시오.

하둡용 오픈 소스 사용자 인터페이스인 Hue를 사용하면 더욱 손쉬운 Hive 쿼리 실행 및 개발, HDFS의 파일 관리, Pig 스크립트 실행 및 개발, 테이블 관리가 가능합니다. Amazon EMR의 Hue는 Amazon S3와 통합되어 있으므로 Amazon S3에 바로 쿼리할 수 있으며, HDFS와 Amazon S3 간에 파일 전송도 더욱 편리합니다. Hue와 Amazon EMR에 대해 자세히 알아보십시오.

Spark는 대용량 데이터 세트의 빠른 처리를 위한 하둡 에코시스템의 엔진입니다. Spark는 인 메모리, 내결함성의 RDD(Resilient Distributed Dataset) 및 DAG(방향성 비순환 그래프)를 사용해 데이터 변환을 정의합니다. 또한, Spark는 Spark SQL, Spark Streaming, MLlib 및 GraphX를 포함합니다. Spark가 무엇인지 배우고 Amazon EMR 기반 Spark에 대해 자세히 알아보십시오.

Presto는 짧은 지연 시간의 임시 데이터 분석에 최적화된 오픈 소스 분산 SQL 쿼리 엔진입니다. Presto는 복잡한 쿼리, 집계, 조인, 윈도우 함수 등 ANSI SQL 표준을 지원합니다. Presto는 하둡 분산 파일 시스템(HDFS)과 Amazon S3를 비롯한 여러 데이터 소스에서 데이터를 처리할 수 있습니다. Presto가 무엇인지 배우고 Amazon EMR 기반 Presto에 대해 자세히 알아보십시오.

Zeppelin은 Spark를 사용하여 데이터 탐색을 위한 대화형 협업 노트를 생성하는 오픈 소스 GUI입니다. Scala, Python, SQL(Spark SQL 사용) 또는 HiveQL을 사용하여 데이터를 조작하고 신속하게 결과를 시각화할 수 있습니다. Zeppelin 노트는 여러 사용자가 공유할 수 있으며, 시각화는 외부 대시보드로 게시될 수 있습니다. Amazon EMR에서 Zeppelin을 사용하는 방법에 대해 자세히 알아보십시오.

Oozie는 하둡용 워크플로 스케줄러로서, DAG(방향성 비순환 그래프) 작업을 생성할 수 있습니다. 또한, 작업 또는 시간별로 하둡 워크플로를 간편하게 트리거할 수 있습니다. Amazon EMR에서 Oozie를 사용하는 방법에 대해 자세히 알아보십시오.

Tez는 하둡 YARN상의 실행 프레임워크로서 최적화된 쿼리 플랜과 향상된 리소스 관리를 통해 빠른 성능을 제공합니다. 하둡 MapReduce 대신 Tez를 Apache Hive 및 Apache Pig와 함께 사용할 수 있으며, Tez UI를 사용하여 실행 계획을 시각화할 수 있습니다. Amazon EMR에서 Tez를 사용하는 방법에 대해 자세히 알아보십시오.

Flink는 스트리밍 데이터플로우 엔진으로 이를 사용하면 처리량이 높은 데이터 소스에 대해 실시간 스트림 처리를 손쉽게 실행할 수 있습니다. 비순차 이벤트에 대한 이벤트 시간 의미 체계, 정확하게 한 번 의미 체계, 배압 제어, 스트리밍 및 배치 애플리케이션 둘 다 작성하는 데 최적화된 API를 지원합니다. EMR에서 Flink를 사용하는 방법에 대해 자세히 알아보십시오.

기타: Amazon EMR은 R, Apache MXNet(딥 러닝), Mahout(기계 학습), Ganglia(모니터링), Accumulo(보안 NoSQL 데이터베이스), Sqoop(관계형 데이터베이스 커넥터), HCatalog(테이블 및 스토리지 관리) 등 널리 사용되는 다양한 다른 애플리케이션과 도구도 지원합니다. Amazon EMR 팀은 추가 소프트웨어 설치 또는 클러스터 구성에 사용하거나, 자체 부트스트랩 작업 작성용 예제로 활용할 수 있는 부트스트랩 작업의 오픈 소스 리포지토리를 운영하고 있습니다.

클러스터 튜닝: 사용 중인 애플리케이션의 요구 사항에 따라 클러스터에서 프로비저닝할 EC2 인스턴스의 유형(표준, 고용량 메모리, 고성능 CPU, 고성능 I/O 등)을 애플리케이션의 요구사항에 따라 선택할 수 있습니다. 사용자는 모든 인스턴스에 대한 루트 액세스 권한을 보유하며 요구 사항에 맞춰 클러스터를 모두 사용자 정의할 수 있습니다. 지원되는 Amazon EC2 인스턴스 유형에 대해 자세히 알아보십시오.

애플리케이션 디버깅: 클러스터에서 디버깅을 활성화하면 Amazon EMR이 로그 파일을 Amazon S3에 보관한 다음 인덱싱합니다. 그런 다음 콘솔의 그래픽 인터페이스를 사용하여 직관적인 방식으로 로그를 탐색하고 작업 기록을 볼 수 있습니다. Amazon EMR 작업 디버깅에 대해 자세히 알아보십시오.

클러스터 모니터링: 실행 중인 맵의 평균 개수 등 23개의 사용자 지정 Amazon EMR 메트릭을 모니터링하고 작업을 줄이려면 Amazon CloudWatch를 사용할 수 있습니다. 이러한 지표에 대한 경보를 설정할 수도 있습니다. Amazon EMR 클러스터 모니터링에 대해 자세히 알아보십시오.

이벤트에 대응: Amazon CloudWatch Events에서 Amazon EMR 이벤트 유형을 사용하여 Amazon EMR 클러스터의 상태 변화에 대응할 수 있습니다. 빠르게 설정할 수 있는 간단한 규칙을 사용하면 이벤트를 매칭하여 Amazon SNS 주제, AWS Lambda 함수, Amazon SQS 대기열 등으로 라우팅할 수 있습니다. Amazon EMR 클러스터의 이벤트에 대해 자세히 알아보십시오.

반복 워크플로 일정 조정: Amazon EMR과 관련된 반복 워크플로의 일정을 조정하려면 AWS Data Pipeline을 사용할 수 있습니다. AWS Data Pipeline은 온프레미스 데이터 소스뿐 아니라 여러 AWS 컴퓨팅 및 스토리지 서비스 간에 데이터를 안정적으로 처리하고 지정된 주기로 이동할 수 있게 해 주는 웹 서비스입니다. Amazon EMR 및 Data Pipeline에 대해 자세히 알아보십시오.

Cascading: Cascading은 Hadoop MapReduce 애플리케이션을 만들고 실행하는 데 필요한 쿼리 API, 쿼리 플래너 및 작업 스케줄러를 제공하는 오픈 소스 Java 라이브러리입니다. Cascading으로 개발된 애플리케이션은 다른 기본 하둡 애플리케이션과 유사한 표준 하둡 호환 JAR 파일로 컴파일 및 패키지됩니다. Cascading 및 Amazon EMR에 대해 자세히 알아보십시오.

딥 러닝: Apache MXNet과 같은 널리 사용되는 딥 러닝 프레임워크를 사용하여 딥신경망을 정의, 교육 및 배포하십시오. 이러한 프레임워크를 GPU 인스턴스로 구성된 Amazon EMR 클러스터에서 사용할 수 있습니다. Amazon EMR에서 MXNet을 사용하는 방법에 대해 자세히 알아보십시오.

클러스터에 대한 네트워크 액세스 제어: AWS 클라우드의 논리적으로 격리된 섹션인 Amazon Virtual Private Cloud(VPC)에서 클러스터를 시작할 수 있습니다. IP 주소 범위, 서브넷 생성, 라우팅 테이블 및 네트워크 게이트웨이 구성 선택 등 가상 네트워킹 환경을 완벽하게 제어할 수 있습니다. Amazon EMR 및 Amazon VPC에 대해 자세히 알아보십시오.

사용자, 권한 및 암호화 관리: IAM 사용자 및 역할과 같은 AWS Identity and Access Management(IAM) 도구를 사용하여 액세스와 권한을 제어할 수 있습니다. 예를 들어, 특정 사용자에게 클러스터에 대한 읽기 액세스는 허용하되, 쓰기 액세스는 허용하지 않을 수 있습니다. 또한, Amazon EMR 보안 구성을 사용하여 다양한 저장 및 전송 암호화 옵션(Amazon S3 암호화에 대한 지원 등)과 Kerberos 인증을 설정할 수 있습니다. 클러스터에 대한 액세스 제어Amazon EMR 암호화 옵션에 대해 자세히 알아보십시오.

추가 소프트웨어 설치: 부트스트랩 작업 또는 Amazon Linux 구동 사용자 정의 Amazon 머신 이미지(AMI)를 사용하여 클러스터에 추가 소프트웨어를 설치할 수 있습니다. 부트스트랩 작업은 Amazon EMR이 클러스터를 시작할 때 클러스터 노드에서 실행되는 스크립트입니다. 이 작업은 하둡이 시작되기 전과 노드가 데이터 처리를 시작하기 전에 실행됩니다. 또한, 사용자 정의 Amazon Linux AMI에 소프트웨어를 미리 로드하여 사용할 수도 있습니다. Amazon EMR 부트스트랩 작업사용자 정의 Amazon Linux AMI에 대해 자세히 알아보십시오.

효율적인 데이터 복사: 오픈 소스 도구인 Distcp의 확장 버전이자, MapReduce를 사용하여 대량의 데이터를 효율적으로 이동하는 Amazon EMR의 S3DistCp를 이용해 Amazon S3에서 HDFS로, HDFS에서 Amazon S3로, Amazon S3 버킷 사이에서 대량의 데이터를 빠르게 이동할 수 있습니다. S3DistCp에 대해 자세히 알아보십시오.

Hadoop Streaming: Hadoop Streaming은 Hadoop과 함께 제공되는 유틸리티로, 사용자는 이 유틸리티를 이용해 Java 이외의 언어로 MapReduce 실행 파일을 개발할 수 있습니다. 스트리밍은 JAR 파일의 형태로 구현됩니다. Amazon EMR을 사용하는 하둡 스트리밍에 대해 자세히 알아보십시오.

사용자 지정 Jar: Java 프로그램을 작성하고, 사용할 Hadoop 버전으로 컴파일한 다음 Amazon S3에 업로드하십시오. 그런 다음 하둡 JobClient 인터페이스를 사용해 하둡 작업을 클러스터에 제출할 수 있습니다. Amazon EMR을 이용한 사용자 정의 Jar 처리에 대해 자세히 알아보십시오.

Amazon EMR은 다음과 같은 다양한 타사 소프트웨어 도구와 함께 사용할 수 있습니다.

데이터 전송

모니터링

성능 튜닝

그래픽 IDE

하둡 배포

BI/시각화

비즈니스 인텔리전스

데이터 탐색

BI/시각화

그래픽 IDE

BI/시각화