본문 바로가기
IT 공부/AWS Solution Architect Associate(완)

AWS 데이터 & 분석

by 랜턴K 2024. 3. 10.
반응형

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