Amazon EMR의 Apache Hive로 DynamoDB 데이터 처리 - Amazon DynamoDB

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon EMR의 Apache Hive로 DynamoDB 데이터 처리

Amazon DynamoDB는 Amazon EMR에서 실행되는 데이터 웨어하우징 애플리케이션인 Apache Hive와 통합됩니다. Hive는 DynamoDB 테이블에서 데이터를 읽고 쓸 수 있으므로 다음과 같은 작업이 가능합니다.

  • 유사 SQL 언어(HiveQL)를 사용한 실시간 DynamoDB 데이터 쿼리

  • 데이터를 DynamoDB 테이블에서 Amazon S3 버킷으로, 그리고 그 반대 방향으로 복사

  • 데이터를 DynamoDB 테이블에서 Hadoop 분산 파일 시스템(HDFS)으로, 그리고 그 반대 방향으로 복사

  • DynamoDB 테이블에서 조인 작업을 수행

개요

Amazon EMR은 대량의 데이터를 쉽고 빠르고 경제적으로 처리할 수 있도록 지원하는 서비스입니다. Amazon EMR을 사용하려면 Hadoop 오픈 소스 프레임워크를 실행하는 Amazon EC2 인스턴스의 관리형 클러스터를 시작합니다. Hadoop은 MapReduce 알고리즘을 구현하는 분산 애플리케이션입니다. 이 알고리즘에서는 단일 작업이 클러스터 안의 여러 노드로 매핑됩니다. 각 코드는 지정된 작업을 다른 노드와 병렬로 처리합니다. 최종적으로 출력이 단일 노드로 환원되어 최종 결과를 생성합니다.

Amazon EMR 클러스터를 지속적으로 또는 일시적으로 실행하도록 선택할 수 있습니다.

  • 지속적 클러스터는 사용자가 종료할 때까지 실행됩니다. 지속적 클러스터는 데이터 분석, 데이터 웨어하우징 또는 기타 대화식 용도에 적합합니다.

  • 일시적 클러스터는 한 작업 플로우를 실행하는 데 필요한 시간 동안 실행된 후 자동으로 종료합니다. 일시적 클러스터는 스크립트 실행과 같은 주기적인 처리 작업에 적합합니다.

Amazon EMR 아키텍처 및 관리에 대한 자세한 내용은 Amazon EMR 관리 가이드를 참조하세요.

Amazon EMR 클러스터를 시작할 때 Amazon EC2 인스턴스의 초기 수와 유형을 지정합니다. 또한 해당 클러스터에서 실행할 (Hadoop 이외의) 다른 분산 애플리케이션도 지정합니다. 이러한 애플리케이션으로는 Hue, Mahout, Pig, Spark 등이 있습니다.

Amazon EMR용 애플리케이션에 대한 자세한 내용은 Amazon EMR 릴리즈 가이드를 참조하세요.

클러스터 구성에 따라 다음 유형의 노드가 하나 이상 존재합니다.

  • 리더 노드 - 클러스터를 관리하여 코어 및 태스크 인스턴스 그룹으로 MapReduce 실행 파일 및 원시 데이터 하위 집합의 배포를 조정합니다. 또한 수행되는 각 작업의 상태를 추적하고 인스턴스 그룹의 상태를 모니터링합니다. 클러스터에는 리더 노드가 한 개만 있습니다.

  • 코어 노드 - MapReduce 작업을 실행하고 Hadoop 분산 파일 시스템(HDFS)을 사용하여 데이터를 저장합니다.

  • 작업 노드(선택 사항) - MapReduce 작업을 실행합니다.