이론, 개념잡기
EMR로 S3와 DynamoDB 데이터 내보내기 및 가져오기
EMR로 S3와 DynamoDB 간 데이터를 업로드해보자~
<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
<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
감사합니다.