brunch

598. EMR, S3, DynamoDB 사용

이론, 개념잡기

by Master Seo


EMR로 S3와 DynamoDB 데이터 내보내기 및 가져오기

EMR로 S3와 DynamoDB 간 데이터를 업로드해보자~


20 emr s3 dynamodb.png




<1> 결과 s3 생성

<2> EMR Hive 생성, 다이나모 DB 생성

<3> command-host ec2 생성과 emr master 접속

<4> 참조 테이블 생성

<5> Hive 이용하여 DynamoDB에 업로드

<6> 쿼리 해보기

<7> DynamoDB 데이터를 S3에 업로드

<8> S3에서 업로드된 데이트 확인



<1> 결과 s3 생성


dynamodb-bucket-seo1234



<2> EMR Hive 생성, 다이나모 DB 생성


1

EMR Hive 생성

https://brunch.co.kr/@topasvga/2009


EMR Master 보안그룹에 ssh 허용 필요

0.0.0.0/0 22


2

다이나모 DB 생성


테이블 이름

table1

파티션 키 지정

id1

Customize setting으로 변경

Read off 100

Write off 100

생성


참고

다이나모 디비 생성 시 읽기와 쓰기를 지정해야 한다.

RI구매 시에도 읽기와 쓰기 별도 구매를 해야 한다.




<3> command-host ec2 생성과 emr master 접속


EMR Master에 접속하기


1

테스트emr을 public에 설치한 경우 직접 접속

or


2

테스트 emr은 private에 설치한 경우, command-host ec2 접속후 emr master 접속


export ID=$(aws emr list-clusters | jq '.Clusters[0].Id' | tr -d '"')

export HOST=$(aws emr describe-cluster --cluster-id $ID | jq '.Cluster.MasterPublicDnsName' | tr -d '"')

ssh -i ~/EMRKey.pem hadoop@$HOST

yes


1 emr.png


<4> 참조 테이블 생성


1

sudo chown hadoop -R /var/log/hive

mkdir /var/log/hive/user/Hadoop

hive


2

SET

dynamodb.throughput.read.percent=1.0

;


3

S3 외부 테이블 생성

DynamoDB 외부 테이블 생성



<5> Hive 이용하여 DynamoDB에 업로드



<6> 쿼리 해보기



<7> DynamoDB 데이터를 S3에 업로드



<8> S3에서 업로드된 데이트 확인




https://brunch.co.kr/@topasvga/1766


감사합니다.







keyword
매거진의 이전글(몰아보기) Amazon EMR 실습