반응형
AWS RedShift란?
Redshift는 AWS의 MPP(Massive Parallel Processing) Database입니다. PostgreSQL을 기반으로 하지만 PostgreSQL과 다르게 구현된 특징과 기능들도 있습니다. 주로 클라우드 데이터 웨어하우스를 만들 때 사용합니다.
AWS Document 기반으로 Redshift의 특성에 대해서 정리해보았습니다.
MPP(Massive Parallel Processing)은 무엇일까?
다수의 컴퓨팅 노드가 각 노드의 코어마다 전체 데이터를 분할하여 동일하게 컴파일된 쿼리 세그먼트를 실행합니다. 즉 다수의 컴퓨팅 노드가 각 노드의 코어마다 전체 데이터를 분할하여 동일하게 컴파일된 쿼리 세그먼트를 실행하면서 최종 결과에 이를 때까지 모든 쿼리를 처리합니다.
Cluster
Redshift는 클러스터로 구성 되어 있으며 리더 노드와 하나 이상의 컴퓨팅 노드로 구성되어있습니다. 이때 외부 어플리케이션은 리더 노드와 통신합니다.
- OLTP 기능
- 데이터 삽입 및 삭제와 같은 온라인 트랜잭션(OLTP)기능을 포함하여 일반적인 RDBMS와 동일한 기능을 제공하지만, 매우 큰 데이터 세트의 분석을 위해 최적화되어있습니다.
- 데이터 압축
- 디스크 I/O를 떨어뜨림으로써 쿼리 성능이 향상되는 효과를 가집니다. 쿼리를 실행하면 압축된 데이터를 메모리로 읽어온 후 쿼리 실행 도중 합축이 해제됩니다.
- 리더 노드
- 클라이언트 프로그램과 일어나는 통신을 비롯하여 컴퓨팅 노드와 일어나는 모든 통신을 관리합니다.
- 구문을 분석하여 데이터 베이스 작업과 쿼리의 결과를 얻는데 필요한 단계를 연이어 실행하기 위한 실행 계획을 작성합니다.
- 컴퓨팅 노드
- 리더 노드는 실행 계획을 구성하는 개별 요소마다 코드를 컴파일하여 각 컴퓨팅 노드에 할당합니다.
- 컴퓨팅 노드는 컴파일 코드를 실행 한 후 최종 집계를 위해 중간 결과를 리더 노드에 다시 보냅니다.
- 열 기반 데이터 스토리지
- 데이터베이스 테이블 정보를 열 기반 방식으로 저장하기 때문에 디스크 I/O 호출 및 로드해야 하는 데이터 크기가 감소합니다.
'AWS' 카테고리의 다른 글
Amazon QuickSight란 ? (2) | 2023.02.03 |
---|---|
AWS Athena란? (0) | 2023.01.05 |
Amazon EC2란? & EC2 구축하기 (0) | 2022.12.28 |
Amazon S3란 ? (0) | 2022.12.27 |