본문 바로가기
AWS 공부

AWS 데이터베이스_3

by 돈 되는 정보 공유하기 2022. 6. 1.
반응형

Amazon Redshift
Amazon Redshift는 관리형 데이터 웨어하우스 서비스로 PostgreSQL 기반이다. Redshift는 칼럼 단위로 데이터를 저장하는 칼럼형 스토리지로서 저장 속도가 빠르고 효율적이며, 개별 칼럼에서 신속하게 질의 작업을 수행한다. Redshift는 스토리지에서 소요되는 칼럼의 수를 줄이기 위해 압축 
인코딩 기법을 사용하고 사용자가 수동으로 칼럼 단위로 압축할 수도 있다. 파일에서 COPY 명령을 이용해 Redshift 데이터베이스에 데이터를 Import 하는 경우 Redshift는 어떤 칼럼을 압축할지 결정한다. Redshift ODBCOpen Database Connectivity, JDBCJava Database Connectivity 데이터베이스 커넥터를 지원하고 하나 이상의 컴퓨트 노드를 지닌다컴퓨트 노드는 덴스와 리더 두 가지 종류가 있는데 덴스 컴퓨트 노드는 SSD에는 8,192TB의 데이터를 저장할 수 있고 마그네틱 스토리지는 326TB의 데이터를 저장할 수 있다. 클러스터에 하나 이상의 컴퓨트 노드가 있는 경우 리더 노드를 추가해 컴퓨트 노드 간의 커뮤니케이션을 조정하고 클라이언트와 소통하도록 할 수 있다. 리더 노드를 추가해 컴퓨트 노드 간의 커뮤니케이션을 조정하고 클라이언트와 소통하도록 할 수 있다리더 노드에 대한 이용료는 없다. Redshift 데이터베이스의 행은 다수의 컴퓨트 노드에 분산 저장되며, 데이터 분산 방식으로는 EVEN, KEY, ALL 등의 유형이 있다. 기본 분산 유형인 EVEN 분산의 경우 리더 노드가 모든 컴퓨트 노드에 균일하게 분산된다. KEY 분산의 경우 단일 칼럼 내 값에 따라 데이터가 분산되며, 동일한 값의 칼럼은 동일한 노드에 저장된다ALL 분산의 경우 각각의 테이블이 모든 컴퓨트 노드에 분산 저장된다. Redshift Spectrum S3에 저장된 파일에서 데이터를 질의할 수 있는 서비스로서 클러스터로 데이터를 Import  필요가 없다는 장점이 있다. 사용자는 간단하게 데이터의 구조를 정의하고 원하는 내용으로 질의 명령을 실행하면 된다질의를 실행하려는 버킷은 클러스터와 동일한 Region에 있어야 한다.


비 관계형 데이터베이스(NoSQL)
비 관계형 데이터베이스는 초당 수만 회 이상의 데이터 트랜잭션을 일관되게 처리할 수 있고 비구조화 데이터를 저장하는 데이터베이스 모델이다비 관계형 데이터베이스는 다양한 구조의 데이터들이 존재하고 이러한 다양한 데이터 구조는 바뀔 수 있다. NoSQL 데이터베이스는 컬렉션이라는 요소로 구성되고 이는 테이블이라고 부른다. 사용자는 테이블을 이용해 아이템을 저장하고 이는 관계형 데이터베이스의 행과 유사하다. 각 아이템은 하나 이상의 속성으로 구성되고 이는 SQL 데이터베이스의 칼럼과 비슷하다. 속성은 유일한 이름인 키, 데이터 타입, 값으로 구성되므로 속성을 간단히 key/value pairs라고 한다비 관계형 데이터베이스는 관계형 데이터베이스와 달리 스키마가 없고 테이블 내 모든 아이템이 같은 속성을 가질 필요가 없다. 각 아이템은 테이블 내에서 유일한 값을 지닌 기본 키 속성을 지닌다. 기본 키는 아이템을 식별하고 아이템 정렬 시 값을 부여하는 데 사용된다비 관계형 데이터베이스는 저장할 수 있는 데이터 타입이 다양한데 기본 키 속성을 제외하고는 테이블 생성 시 속성을 정의할 필요가 없고 아이템 생성이나 변경 시 속성을 추가하면 된다. 이들 속성은 무순위이며, 서로 별도의 관계성을 지니지 않으므로 비 관계형으로 부른다. 비 관계형 데이터베이스는 애플리케이션이 테이블 내에서 데이터의 변경 내용을 지속해서 추적해야 한다비 관계형 데이터베이스는 비구조화 데이터를 저장할 수 있는 유연성을 갖추고 있지만 이러한 유연성이 사용자의 질의 가능 영역을 제한하는 원인이 되기도 한다비 관계형 데이터베이스는 기본 키를 기준으로 한 질의 작업에 최적화됐으며, 다른 속성으로 질의 작업을 수행하면 속도가 느려지게 된다. 이런 이유로 비 관계형 데이터베이스는 복잡한 질의 작업이나 임의의 질의 작업에는 적합하지 않다. 사용자는 테이블 생성 전, 데이터에서 어떤 속성을 질의할 것인지 미리 파악하고 있어야 한다. Dynamo DB 각종 관리 업무를 지원하는 비 관계형 데이터베이스 서비스로서 다수의 파티션에 분산된 데이터 구조를 이용해서 초당 수천 회의 읽기 및 쓰기 작업을 처리한다.

 

Amazon 데이터베이스 개요 정리
사용자는 만들려는 애플리케이션에 따라 관계형 데이터베이스와 비 관계형 데이터베이스 중 선택할 수 있다. 관계형 데이터베이스는 오랜 기간 동안 사용돼 왔고 대부분의 개발자는 관계형 데이터베이스를 데이터의 기본 모델로 삼는다. AWS RDS는 가장 널리 사용되는 여섯 가지의 데이터베이스 엔진을 다양한 버전 호환성과 같이 제공하는데 RDS 사용자는 기존에 사용하던 데이터베이스 엔진을 클라우드에서 그대로 사용할 수 있으므로 애플리케이션을 수정할 필요가 없다비 관계형 데이터베이스는 조금 더 최근에 개발됐는데 Amazon의 대표적인 비 관계형 데이터베이스 서비스는 DynamoDB 있다. 관계형 데이터베이스에 맞춰 설계된 애플리케이션과 달리 비 관계형 데이터베이스 기반의 애플리케이션은 간단하게 변경하기 어렵다비 관계형 데이터베이스를 사용하려는 경우 처음부터 클라우드 네이티브 애플리케이션을 만드는 것이 중요하다.

반응형

'AWS 공부' 카테고리의 다른 글

AWS DNS Route53  (0) 2022.06.03
AWS IAM  (0) 2022.06.02
AWS 데이터베이스_2  (0) 2022.05.31
AWS 데이터베이스  (0) 2022.05.30
Amazon S3 (Simple Storage Service)  (0) 2022.05.29

댓글