생성 실습, 디스크 용량과 모니터링 법 이해
큰 그림
Redshift 클러스터를 만든다.
Amazon Redshift 클러스터에 SQL 클라이언트로 접속한다.
데이터를 S3 버킷으로 올리고, S3버킷 데이터를 Amazon Redshift로 올리기
Amazon Redshift에 저장된 데이터로 새 테이블 만들기
검색 퀴리 실행
성능 모니터링 하기
<1> Amazon Redshift 클러스터 만들기
<2> Amazon Redshift 연결하기
<3> Amazon Redshift에 테이블 만들고, S3 데이터 올리기
<4> 쿼리로 조회해보기
<5> 테이블 간 정보 결합 쿼리 실행
<6> 디스크 공간 , 테이블 공간 확인하기
<7> 콘솔로 모니터링 하기
구성
데이터 ---------- S3 ---복사 ----- Amazon Redshift ----------SQL 클라이언트
클러스터 만들 시 필요 사항
1. 서버사양, 노드수에 따라 최소 한 달에 40만 원은 발생한다.
2. Redshift-Role을 사용해야 한다.
3. 보안 그룹은 tcp 5439 0.0.0.0/0으로 우선 사용한다.
4. Amazon Redshift에서 S3데이터를 가져와야 해서 롤(Redshift-Role)에 대한 ARN이 필요함.
5. 클러스터 서브넷 그룹을 미리 만들어야 한다. 그래야 내가 원하는 서브넷에 구축할수 있다.
구성에서 만들자.
클러스터 서브넷 그룹은 Private Subnet 으로 지정하자.
<1> Amazon Redshift 클러스터 만들기
1
Amazon Redshift > 클러스터 생성
클러스터 식별자 : seoredshift
노드 유형 : dc2 , large
노드 2개
// 노드 유형과 노드수 조합으로 스토리지 저장 공간을 확인하자
2
데이터 베이스 구성
데이터베이스 이름 : seodb
데이터베이스 포트 5439
사용자 이름 : admin
사용자 암호 : admin123 A (대문자가 들어가야 함)
IAM 역할 : Redshift-Role (S3버킷에 데이터를 가져와야 해서 S3 권한 필요) > IAM 역할 추가 클릭
네트워크
인프라에서 제공한 VPC선택
보안 그룹 : tcp 5439 허용 필요.
> 클러스터 생성
3
앤드포인트 확인
seoredshift.cvsrmqwykfho.us-west-2.redshift.amazonaws.com:5439/seodb
<2> Amazon Redshift 연결하기
1
웹 기반의 포스트 SQL 클라이언트 web으로 연결하기
웹브라우저로 IP 접속
2
앤드포인트. com으로 연결한다.
사용자 이름 : admin
암호 : admin123 A
데이터 베이스 : seodb
포트 : 5439 (포트 변경)
SSL : disble
접속
접속 성공 후
<3> Amazon Redshift에 테이블 만들고, S3 데이터 올리기
1
테이블 만들기 쿼리 실행
CREATE TABLE xxxxxxxxxx (
);
2
S3 데이터를 Amazon Redshift에 올리기
COPY 쿼리 실행
// ROLE ARN을 입력한다. 권한이 있어야 한다.
5분 소요
<4> 쿼리로 조회해보기
SELECT COUNT(*) FROM xxxxxxxx;
<5> 테이블 간 정보 결합 쿼리 실행
새 테이블 만들기
데이터 올리기
조회 하기
<6> 디스크 공간 , 테이블 공간 확인하기
1
EXPLAIN명령어로 Amazon Redshift 가 쿼리 처리하는 것을 볼 수 있다.
쿼리 실행
2
분석
ANALYZE COMPRESSION xxxxxxxxxx;
3
디스크 공간 쿼리 확인
4
테이블 공간 확인 쿼리
<7> 콘솔로 모니터링 하기
클러스터 클릭
1
쿼리 모니터링
2
유지 복수와 모니터링
3
백업
데이터를 S3로 다시 보내기
UNLOAD 명령어
감사합니다.