AMAZON ATHENA ; 서버리스 S3 버킷 데이터 분석 쿼리 서비스!!
- PRESTO 엔진에 빌드
- CSV JSON ORC AVRO PARQUET 등 형식 지원
- 스캔된 데이터의 TB당 고정 가격 지불
- QUICKSIGHT와 연계 사용 > 보고서 및 대시보드 생성
- 임시 쿼리 수행 / 비즈니스 인텔리전스 분석 및 보고
- AWS내 모든 로그 쿼리 분석 가능!! ; VPC 흐름 로그 / LB 로그 / CLOUDTRAIL 추적 등
- 성능향상 ; 1. 데이터 적게 스캔할 유형 데이터 사용 ; (열 기반데이터 유형에서 유리-PARQUET / ORC) > GLUE
2. 데이터 세트 분할 ; 각 슬래시에 다른 열 이름을 붙여 열별로 특정 값 저장
3. 큰 파일 사용 -> 오버헤드 축소
- 연합쿼리 ; S3 외의 어떤 곳의 데이터도 쿼리 가능 -> 데이터 원본 커넥터 사용하면 됨 !!
AMAZON REDSHIFT ; POSTGRESQL 기반
- OLAP 유형 디비 (온라인 분석 처리) ; 분석과 데이터 웨어 하우징에 사용
- 10배 좋은 성능 / PB 데이터로 확대 가능 > 열기반 스토리지로 사용하기 때문 > 병렬 쿼리 엔진 존재
- 클러스터 공급한 인스턴스 만큼 비용 지불
- SQL 문장 바로 사용
- QUICKSIGHT / TABLUAU와 통합 가능
- REDSHIFT / ATHENA 비교
-> REDSHIFT는 S3에서 모든 데이터를 불러오는 게 빠를 때가 있음
-> REDSHIFT 조인과 쿼리가 더 빠름 ; 인덱스를 빌드하기 때문
-> 거꾸로 AD HOC인 경우는 ATHENA가 좋음
-> 복잡할 수록 REDSHIFT가 나음
- REDSHIFT CLUSTER ; 리더노드(쿼리 계획과 결과 집합) + 계산노드 ; 노드를 프로비저닝 해야
- 스냅 샷 ; S3 내부적 저장 ; POINT IN TIME 백업 ; 수동/자동(8시간마다 / 5GB마다) 2가지 모드 ; 저장기간 설정가능
- DR; 스냡샷을 다른 리전으로 복사 가능함
- 데이터 수집방법 2가지
1. KINESIS DATA FIREHOSE ; S3 복사를 통해 (퍼블릭/VPC)
2. JDBC 드라이버
- REDSHIFT SPECTRUM!! ; S3 데이터를 로드하지 않고 분석함 + 더 많은 처리 능력 확보 (클러스터 사용 시 자동)
AMAZON OPENSEARCH ; ELASTIC SEARCH 의 후속작
- 원래는 ; DYNAMODB 기본키 또는 인덱스 이용 쿼리 가능
- 모든 필드를 검색 가능 ; 부분 매칭이어도 가능
- 분석적 쿼리에도 사용
- 1. 관리형 클러스터 모드 - 실제 물리적 인스턴스가 프로비저닝 / 2. 서버리스 클러스터
- 자체 쿼리 언어 ; SQLX / 플러그인 통해서 SQL 활성화 가능
- 데이터 다양하게 받을 수 있음
- COGNITO / IAM 등 제공 가능 / TLS 제공 가능
- DYNAMODB -> DYNAMODB STREAM -> OPENSEARCH에 람다함수가 실시간으로 데이터 삽입
- CLOUDWATCH LOG를 주입도 가능 / CLOUDWATCH LOGS SUBSCRIPTION FILTER로 람다함수로 전송
- KINESIS DATAT FIREHOSE 사용하거나
- KINESIS DATA STREAMS 사용해서 데이터 주입
AMAZON EMR (ELASTIC MAP REDUCE) ; 하둡 클러스터 생성
- 하둡 클러스터 ; 빅데이터 분석 처리
- 프로비저닝 필요 -> 수백개의 EC2로 구성
- 장점 ; APACHE SPARK HBASE PRESTO 등 설정 어려운 점을 EMR이 프로버저닝 구성 대신 처리
- 데이터 처리 / 기계학습/ 웹 인덱싱 빅데이터 작업
- 마스터 노드 ; 클러터 관리
- 코어 노드 ; 테스크 실행 저장
- 태스크 노드 ; 태스크만 실행
- 온디맨드 EC2 인스턴스 유형 - 신뢰-예측가능, 종료안돰 / 예약 인스턴스 유형 - 최소 1년 / 스팟 인스턴스
AMAZON QUICKSIGHT ; 서버리스 머신러닝 분석!!
- 비즈니스 분석 / 시각화 / 임시 분석 수행 / 비즈니스 인사이트 획득
- RDS AURORA ATHENA REDSHIFT S3 등 DB 및 타사의 DB와도 QUICKSIGHT 지원하면 통합 가능
- SPICE 엔진 = 인메모리 연산 엔진 ; 데이터를 QUICKSIGHT로 직접 가져올 때 사용
- CLS - 열수준 보안
- SALESFORCEE JIRA TERADATA 등과도 통합 가능 ; JDBC 프로토콜 사용하는 디비와도 가능
- EXCEL CSV JSON TSV ELF/CLF 등 데이터 소스 가져오기 가능
- 1. 대시보드(읽기 전용) 2. 분석(필터 또는 매개변수 제어 정렬 옵션 저장) 3. 사용자 (이건 IAM과 독립적이다)
AWS GLUE ; 추출과 변환 로드 서비스 관리 ; ETL 서비스
- S3 RDS 데이터 -> 웨어하우스인 REDSHIFT 로드할 때
- 데이터를 PARQUET 형식 변환 ; 열 기반 데이터 형식 -> ATHENA 등 활용시 효과적!!
- 람다/EVENTBRIDGE로 자동화도 가능
- GLUE DATA CATALOG!! ; AWS DB / JDBC 온프렘 디비 > 크롤링 -> 메타데이터를 카탈로그에 기록
-> ATHENA REDSHIFT_SPECTURM EMR 등이 활용
- GLUE 작업 북마크!! ; 이전 데이터 재처리 방지
- GLUE ELASTIC VIEWS!! ; SQL 사용 데이터 스토어의 데이터를 결합복제
- GLUE DATABREW!! ; 사전 빌드된 변환을 사용 > 데이터를 정리 / 정규화
- GLUE STUDIO!! ; ETL 작업의 GUI
- GLUE STREAMING ETL!! ; ETL을 배치가 아닌 스트리밍으로 실행
AWS LAKE FORMATION ; 데이터 레이크 생성 ; 블루프린트를 통해 > 데이터 주입
- 중앙 집중식 저장소 ; 수개월 단위 작업을 수 일에 끝냄
- 데이터 검색 / 정제 / 변환 주입을 어시스트
- 데이터 수집 / 정제 / 카탈로깅 / 복제 등 수작업 자동화 > ML 변환 기능으로 중복제거 수행
- 정형 데이터 및 비정형 데이터 결합 가능 > 블루프린트 제공!!
- 어플리케이션에서 행/열 수준의 세분화된 액세스 제어 가능하게 함
- GLUE 위에 빌드되는 계층 / / GLUE와 상호작용 X
- 소스크롤러 ETL 데이터카탈로깅도구 데이터준비도구
- 보안설정/ 액세스 설정 가능
- 사용 이유 ? ; 중앙화된 권한 ; ATHENA QUICKSIGHT 사용 시, 허용된 데이터만 볼 수 있게 하기 위해서
- 이곳에서 분석도구의 읽기 권한을 중앙 제어한다!!
KINESIS DATA ANALYTICS
- 1. SQL 2. APACHE FLINK
- 1. KINESIS DATA STREAM/FIREHOSE > SQL 적용 실시간 분석 처리 + S3 참조, 조인 가능 > 데이터 전송
- 데이터 전송 2가지 ; 1. FIREHOSE > REDSHIFT/OPENSEARCH/기타 대상 2. STREAM > EC2 어플리케이션 / 람다
- 실시간 대시보드와 실시간 지표!!
- 2. APACHE FLINK 사용 시, JAVA SCALA SQL로 애플리케이션 작성 / 스트리밍 처리 분석 가능
- APACHE FLINK 전용 클러스터에서 백그라운드 실행
- KINESIS STREAM / MSK 데이터 읽기 (FIREHOSE는 못 읽음!!)
- 고급 쿼리 능력 / 스트리밍 데이터 읽기 능력 필요할 때!!
- 컴퓨팅 리소스를 자동 프로비저닝 / 병렬 연산 / 오토스켕일링 / 체크포인트+스냅샷으로 백업 /
MSK(MANAGED STREAMING FOR APACHE KAFKA) ; 카프카용 클러스터 스트리밍 서비스
- KAFKA ; KINESIS의 대안 ; 스트리밍 서비스
- 클러스터 내 브로커 노드 / 주키퍼 브로커 노드를 생성 관리 / VPC 클러스터를 최대 3개의 다중 AZ에 배포
- 자동 복구 / EBS 볼륨에 데이터 저장
- MSK 서버리스도 있음
- MSK 클러스터 내에는 다수의 브로커 가 있음 ;
- KINESIS와 차이 ; 1. 1MB-10MB(키네시스는 1MB가 최대) 2. 샤드 VS 파티션을 이용한 KAFKA 주제 사용
3. 파티션 추가만 가능 (키네시스는 분할 또는 병합)
빅데이터 수집 파이프라인
- 애플리케이션 수집 파이프라인 완전히 서버리스
- 데이터 실시간 수집 ; 데이터 생산자 (IOT) > AWS IOT CORE ; KINESIS DATA STREAM(리얼타임) > FIREHOSE(1분)
- 변환 자동화 ; KINESIS FIREHOSE > LAMBDA에서 변환 후 S3(수집용) 저장
- 변환된 데이터 SQL 이용해 쿼리 ; S3(수집용) > LAMBDA > AHTENA 쿼리 > S3 (리포팅용)
- 쿼리의 보고서는 S3에 저장 ; S3 (리포팅용) > QUICKSIGHT(시각화)
- 쿼리 보고서 데이터는 데이터 웨어하우스에 로드 > 대시보드 제작 ; S3 (리포팅용) > REDSHIFT > QUICKSIGHT
'IT 공부 > AWS Solution Architect Associate(완)' 카테고리의 다른 글
AWS MONITORING (0) | 2024.03.12 |
---|---|
AWS 머신러닝 (0) | 2024.03.10 |
AWS NOSQL DB (1) | 2024.03.08 |
AWS 관계형 데이터베이스 (0) | 2024.03.05 |
서버리스 아키텍쳐 구현 예시 (1) | 2024.03.05 |