수업을 듣고 배운 내용과 연습한 내용을 정리하였습니다
개인 공부 후 자료를 남기기 위한 목적임으로 내용 상에 오류가 있을 수 있습니다.
잘못된 부분이 있거나 질문사항은 댓글로 남겨주시면 성심성의껏 답변해드리겠습니다. 감사합니다!
* Amazon RDS
아마존 관계형 데이터베이스 서비스(Amazon Relational Database Service) 또는 아마존 RDS(Amazon RDS)는 아마존 웹 서비스(AWS)가 서비스하는 분산 관계형 데이터베이스이다. 애플리케이션 내에서 관계형 데이터베이스의 설정, 운영, 스케일링을 단순케 하도록 설계된 클라우드 내에서 동작하는 웹 서비스이다. 데이터베이스 소프트웨어를 패치하거나 데이터베이스를 백업하거나 시점 복구를 활성화하는 것과 같은 복잡한 관리 프로세스들은 자동으로 관리된다. 스토리지와 연산 자원들을 스케일링하는 것은 하나의 API 호출로 수행할 수 있다.
- 출처 : 위키백과 -
* NoSQL
NoSQL(원래 의미: non SQL 또는 non relational) 데이터베이스는 전통적인 관계형 데이터베이스 보다 덜 제한적인 일관성 모델을 이용하는 데이터의 저장 및 검색을 위한 매커니즘을 제공한다. 이러한 접근에 대한 동기에는 디자인의 단순화, 수평적 확장성, 세세한 통제를 포함한다. NoSQL 데이터베이스는 단순 검색 및 추가 작업을 위한 매우 최적화된 키 값 저장 공간으로, 레이턴시와 스루풋과 관련하여 상당한 성능 이익을 내는 것이 목적이다. NoSQL 데이터베이스는 빅데이터와 실시간 웹 애플리케이션의 상업적 이용에 널리 쓰인다. 또, NoSQL 시스템은 SQL 계열 쿼리 언어를 사용할 수 있다는 사실을 강조한다는 면에서 "Not only SQL"로 불리기도 한다.
- 출처 : 위키백과 -
* DynamoDB
DynamooDB는 키 벨류 형태의 대표적인 NoSQL 데이터베이스입니다. 스키마가 따로 결정되어 있지 않으며, 확장성 높은 고성능의 데이터베이스를 제공합니다. 또한 완전 관리형 다중 리전, 다중 마스터 데이터베이스이며, 대규모 애플리케이션을 위한 보안 기능, 백업 및 복원, 인메모리 캐싱을 기본 제공합니다. 다이나모 DB는 하루 10조 개 이상의 요청을 처리할 수 있고, 초당 2,000만 개 이상의 급증하는 요청을 지원합니다. 아무리 큰 규모라도 가동 중지나 성능 저하 없이 데이터를 저장하고 처리하면서, JSON 형태로 데이터를 저장합니다.
* 구성요소
- 테이블 : 항목 및 속성
- 기본키 ---> 상황에 따라 정렬키를 추가하기도 함
- 글로벌 보조 인덱스 ---> 테이블을 만든 후 추가할 수 있고 현재 테이블과 동기화되는 똑같은 테이블을 만들어 원하는 속성을 기본키로 설정할 수 있음. 인덱싱하기 때문에 개별적인 읽기 용량과 쓰기 용량이 필요함
- 쿼리와 스캔 ---> 쿼리란 삽입된 기본키를 기준으로 데이터를 찾는 방법이고, 스캔은 조건 값과 맞는 데이터를 찾을 때까지 모든 데이터를 검색하는 방식. 당연히 스캔 방법은 모든 데이터를 기준으로 찾아 많은 처리 용량이 필요하기 때문에 비용이 발생함.
* DynamoDB 사용으로 NoSQL 테이블 생성 및 쿼리
간단한 예제 실습은 AWS의 '시작하기 리소스센터'를 통해 진행하였습니다.
* 실습요약
1. DynamoDB 테이블 만들기
A. 테이블 이름 : Music
B. 기본키 : Artist
2. 테이블 데이터 추가
3. 데이터 스캔과 쿼리
4. 데이터 수정 및 삭제
5. 테이블 삭제
aws.amazon.com/ko/getting-started/hands-on/create-nosql-table/
1) DynamoDB 테이블 만들기
테이블 설정에서 기본 설정 사용을 해제하여 테이블에 대해 DynamoDB auto scaling을 활성화합니다.
Auto Scaling 섹션에서 DynamoDB가 사용자를 위해 AWSServiceRoleForApplicationAutoScaling_DynamoDBTable 역할을 생성하는 것을 볼 수 있습니다.
설정은 기본값으로 두고 테이블을 만들어줍니다.
2) 테이블 데이터 추가
아래와 같이 "항목 만들기"를 클릭해서 테이블에 데이터를 추가해줍니다.
3) 데이터 스캔과 쿼리
쿼리로 설정한 후, Artist 에 No One You Know 로 입력하여 검색했더니
Artist 가 No One You Know인 목록이 출력되는 것을 확인할 수 있습니다.
이번에는 Artist = The Acme Band로 입력하고, SongTitle 에 Begins with "S" 를 추가하여 검색하여 검색 결과를 좁혀보았습니다.
4) 데이터 수정 및 삭제
수정 및 삭제하고자 하는 항목을 선택한 후, "작업"을 클릭하여 실행합니다.
저는 하나의 항목을 삭제하고 하나는 Artist를 "Edit" 으로 수정하였습니다.
5) 테이블 삭제
좌측상단에 "테이블 삭제"를 클릭하여 테이블을 삭제합니다.
'클라우드 > AWS' 카테고리의 다른 글
Lambda 함수 기반 AWS 지출 요금 모니터링 (0) | 2021.02.17 |
---|---|
Lambda 함수 기반 문자 알림 서비스 (0) | 2021.02.17 |
AWS Lambda 이해 및 생성 (0) | 2021.02.16 |
S3 : 부트스트랩을 이용한 반응형 페이지 생성 (2) | 2021.02.16 |
S3 구성 및 이해 + 간단한 파일업로드 실습 (0) | 2021.02.16 |
댓글