| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
- software enginner
- tmax tibero
- object 클래스 # java
- java #추상클래스
- 이분탐색
- static #자바 메모리 구조 #멤버 변수
- 브루트 포스법
- 나는야 4학년 #5학년 까지 가보자구
- Next.js
- 2798블랙잭
- tibero 7.23
- heap area #stack area #static area #jvm
- level2
- 주니어 백엔드 개발자
- 25304번
- server engineer
- 서버 개발자
- 반복문
- ndc2025
- 자바 #자바문법 #자바기초 #참조형 #기본형
- 정보처리기사 실기 #정처기 실기 #2024년 2회 #정처기 2024년 2회 #공부법 # 꿀팁
- level3
- 백엔드 개발자 로드맵
- Spring
- 올 겨울은 조금 따뜻할 것 같다.
- server developer
- 서버 엔지니어
- 단계10
- java #예외처리 #throw #throws
- 넥슨개발자컨퍼런스
- Today
- Total
개발자 쿠키
[AWS] Redshift 본문
1) Redshift

Redshift는 PostgreSQL을 베이스로 한 클라우드 데이터 웨어하우스
PostgreSQL의 권한/롤 개념을 그대로 가져오면서 AWS 특화 기능이 추가
리더 노드 (Leader Node)
1. 클라이언트(ODBC, JDBC, BI 툴)에서 SQL을 받음
2. SQL을 쿼리 플랜으로 변환 → 어떤 노드가 어떤 데이터를 처리할지 분배
3. 결과를 모아서 최종 결과만 클라이언트에 반환
4. 데이터 저장은 하지 않고, 메타데이터 관리 + 쿼리 조율이 주 역할
컴퓨팅 노드 (Compute Node)
1. 실제 데이터를 저장하고, 쿼리에서 할당받은 연산을 수행
2. 각 노드 안에는 슬라이스(Slice) 라는 더 작은 단위가 있음 ex) 노드가 16 vCPU면 슬라이스도 16개
3. 각 슬라이스가 로컬에 저장된 데이터만 스캔/조인/집계 → 결과를 리더 노드로 보냄.
2) 배포 모델
1. Provisioned(클러스터형): 리더/컴퓨트 노드를 직접 사이징. 항상 과금
2. Serverless
- Workgroup(네트워크/엔드포인트) + Namespace(데이터/DB)로 구성
- 쿼리한 시간만 과금(RPU-초), 미사용 시 컴퓨트 0원(저장 데이터는 스토리지 과금)
- Usage limits로 일/월 한도 차단 및 알림 가능
3) 핵심 개념
- Database → Schema → Table/View/UDF
- 분산 스타일(Distribution Style): AUTO(권장), EVEN, KEY, ALL
- 정렬 키(Sort Key): AUTO, COMPOUND, INTERLEAVED
- 압축(Encoding): AUTO 권장 (열 단위 압축)
- 워크로드 관리: Serverless는 RPU 자동 할당 + 우선순위/동시성 정책, 클러스터형은 WLM 큐
4) IAM과 DB ROLE의 차이
| 목적 | 누가 AWS 리소스에 접근하나(로그인, S3, Glue 등) | 무엇을 DB 안에서 할 수 있나(SELECT/INSERT/DDL 등) |
| 적용 위치 | 콘솔/CLI/ODBC의 인증과 S3/Glue 같은 서비스 권한 | 스키마/테이블/뷰/함수 오브젝트 권한 |
| 대표 주체 | IAM User/Role/Policy | ROLE / USER |
| 예시 권한 | redshift-serverless:GetCredentials, s3:GetObject | USAGE ON SCHEMA, SELECT ON TABLES |
| 생성/관리자 | AWS 관리자(IAM) | DBA/Redshift 관리자 |
| 세션 영향 | 임시 DB 비번 발급(IAM 인증), S3 COPY/UNLOAD 허용 | 쿼리 허용/거부를 결정 |
| 흔한 혼동 | “IAM Role 만들었는데 테이블이 안 보임” | “DB Role 줬는데 S3 COPY가 안 됨” |
| 키 포인트 | 로그인/외부 서비스 권한 | DB 내부 오브젝트 권한 |
핵심: IAM은 밖(로그인/리소스), DB ROLE은 안(테이블/스키마)

ETL에서는 Spark로 전처리 후, Redshift 적재하는 방식이 가장 흔함
참고 : https://docs.aws.amazon.com/ko_kr/redshift/latest/dg/c_high_level_system_architecture.html
'database' 카테고리의 다른 글
| [Oracle, Tibero] NLS_CHARACTERSET과 NLS_NCHAR_CHARACTER 차이 (0) | 2025.10.30 |
|---|---|
| [MSSQL] CentOS 7.6 환경에서 설치 (0) | 2025.09.15 |
| NoSQL (0) | 2025.07.22 |
| [Tibero DB] 설치 방법 (1) | 2025.06.27 |
| [PostgreSQL] 설치 방법 (0) | 2025.05.18 |