[AWS] Amazon DynamoDB CRUD 활동

 AWS CLI를 이용하여 DynamoDB 테이블 생성 , 관리 




1. cloud9 생성 및 연결 

cloud9 생성후 연결 , plus tab을  눌러서 새터미널을 선택한다 . 











2. AWS CLI 업그레이드 

aws --version  명령어로 버전 확인 ( 기본적으로 1.9버전이 설정되어있다 ). 
다음 명령어로 업데이트. 

# curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
# unzip awscliv2.zip
# sudo ./aws/install






3.  DynamoDB 생성 

출력은 다음과 같은 JSON 형식의 테이블 세부 정보를 표시 해야 한다 .
테이블 상태 확인 명령어 .

# aws dynamodb describe-table \

> --table-name movies \

> --query "Table.TableStatus"













4.DynamoDB 테이블 항목 추가 

영화 HarryPotter에 대한 세부 정보가 포함된 테이블을 생성한다 . 
같은 방식으로 2 가지 더 생성 

aws dynamodb put-item \

--table-name movies \

--item '{

    "year": {"N": "2001"},

    "title": {"S": "HarryPotter"},

    "actors": {"SS": ["Daniel Radcliffe", "Emma Watson", "Rupert Grint"]}

    }'

















5. Scan 작업 및 필터로 항목 가져오기 

테이블에 항목을 생성했으므로 get-item , batch-get-item, 쿼리 및 스캔과 같은 다양한 명령을 이용할 수 있다 . 


aws dynamodb scan \
--table-name movie 











  • 스캔 작업을 실행하여 특정 영화를 찾기
    • 테이블을 먼저 스캔하여 모든 항목을 반환하는지 확인
    • 전체 테이블을 스캔하되 제목이 HarryPotter인것을 반환

aws dynamodb scan \
--table-name movies \
--filter-expression "title = :name" \
--expression-attribute-values '{":name": {"S": "HarryPotter"}}'














6. 쿼리 작업으로 항목 가져오기 

2001년에 출시된 영화에 대한 테이블을 쿼리한다 . 

aws dynamodb query \
--table-name movies \
--projection-expression "title" \
--key-condition-expression "#y = :yr" \
--expression-attribute-names '{"#y":"year"}' \
--expression-attribute-values '{":yr":{"N":"2001"}}'













7. 새로운 항목 추가 하기 

각 영화의 평점을 추가 한다 . 

aws dynamodb update-item \
--table-name movies \
--key '{
  "year": {"N": "2001"},
  "title": {"S" :"HarryPotter"}
  }' \
--update-expression 'SET #rating = :rate' \
--expression-attribute-names '{
  "#rating": "rating"
  }' \
--expression-attribute-values '{":rate": {"N": "9.2"}}'













8. 항목 삭제 하기 

  • SpiderMan 영화를 삭제한다 .

aws dynamodb delete-item \
--table-name movies \
--key '{
  "year": {"N": "2002"},
  "title": {"S" :"SpiderMan"}
  }'







  • 삭제되었는지 확인 
aws dynamodb scan \
--table-name movies



















테이블 삭제 

지금까지 만든 movies 테이블을 삭제한다 . 


aws dynamodb delete-table \
--table-name movies










삭제 확인 

aws dynamodb list-tables




댓글