Big Data Ingestion Pipeline
- 애플리케이션 수집 파이프라인이 완전히 서버리스이면서 AWS가 100% 관리해주길 원함
- 또한 실시간으로 데이터를 수집하기 원하며 데이터를 변형하고 변형된 데이터를 SQL을 통해 요청하며
이러한 쿼리를 사용해 생성된 보고서가 S3에 저장되도록 함 - 이후 데이터를 데이터 웨어하우스에 등재해 대시보드를 생성하고자 함
- 대체로 수집이나 회수, 변형, 혹은 쿼리 및 분석 과정에서 흔히 발생하는 빅 데이터 문제를 어떻게 처리할까
- IoT Core는 장치에서 실시간으로 전송받은 데이터를 Kinesis Data Steam으로 직접 전달
즉, 데이터 생산자가 IoT 장치일 때, 이를 위해 IoT 장치의 관리를 돕는 IoT Core 기능 - Kinesis의 데이터 스트림은 빅 데이터가 실시간으로 Kinesis 서비스에 전송되도록 허용
- Kinesis Data Firehose는 Kinesis와 통신해서 1분마다 S3 버킷에 데이터를 입력하고 오프로드하며 이를 수집 버킷이라고 함
이를 이용해 아래처럼 여러 장치에서 많은 데이터를 실시간으로 얻을 수 있는 파이프라인 마련 - 람다 함수를 이용해 S3 버킷에 데이터를 매분 입력해줄 뿐만 아니라 빠른 속도로 데이터를 정리하거나 변형하도록 함
람다 함수는 Kinesis Data Firehose와 직접 연결된 상태 - 데이터 수집 버킷은 SQS 대기열을 작동할 수 있으며 SQS 대기열은 람다 함수를 실행하고
람다는 SQL 쿼리를 실행해 Ahtena 쿼리는 수집 버킷에서 데이터를 가져와 SQL 쿼리를 생성하고 출력값은 보고 버킷으로 이동
이 때 보고 버킷은 수집 버킷이 아닌 S3에 있는 다른 버킷
이 과정을 통해 데이터를 보고하고 정리, 분석 가능 - 이 후 QuickSight를 통해 직접 시각화하거나
- RedShift 같은 데이터 웨어하우스에 데이터를 입력해 분석할 수 있음
RedShift 데이터 웨어하우스는 QuickSight의 엔드 포인트로 작용
Big Data Ingestion Pipeline discussion
- IoT Core는 여러 IoT 장치에서 데이터 수집을 허용
- Kinesis는 실시간 데이터 수집에 적합
- Firehose는 실시간에 가깝게 S3로 데이터를 운반 (선택 가능한 최적 간격은 1분)
- Lambda는 Firehose를 도와 데이터를 변형
- S3는 SQS, SNS에 트리거 알림을 실행
- Lambda는 SQS를 구독할 수 있으며 S3를 Lambda에 연결하기도 함
- Athena는 서버리스 SQL 서비스로 Athena의 결과는 S3에 직접 저장됨
- 보고 버킷은 분석된 데이터를 보관
- 추가로 분석이 필요하면 시각화에 쓰이는 QuickSight 혹은 RedShift 등의 보고 도구를 사용
'Cloud > AWS' 카테고리의 다른 글
[SAA] RDS (0) | 2022.04.15 |
---|---|
[SAA] 올바른 데이터베이스 선택 (0) | 2022.04.15 |
[SAA] 소프트웨어 업데이트 배포 (0) | 2022.04.14 |
[SAA] 유료 콘텐츠 배포 (0) | 2022.04.14 |
[SAA] 마이크로서비스 아키텍처 (0) | 2022.04.14 |
Big Data Ingestion Pipeline
- 애플리케이션 수집 파이프라인이 완전히 서버리스이면서 AWS가 100% 관리해주길 원함
- 또한 실시간으로 데이터를 수집하기 원하며 데이터를 변형하고 변형된 데이터를 SQL을 통해 요청하며
이러한 쿼리를 사용해 생성된 보고서가 S3에 저장되도록 함 - 이후 데이터를 데이터 웨어하우스에 등재해 대시보드를 생성하고자 함
- 대체로 수집이나 회수, 변형, 혹은 쿼리 및 분석 과정에서 흔히 발생하는 빅 데이터 문제를 어떻게 처리할까
- IoT Core는 장치에서 실시간으로 전송받은 데이터를 Kinesis Data Steam으로 직접 전달
즉, 데이터 생산자가 IoT 장치일 때, 이를 위해 IoT 장치의 관리를 돕는 IoT Core 기능 - Kinesis의 데이터 스트림은 빅 데이터가 실시간으로 Kinesis 서비스에 전송되도록 허용
- Kinesis Data Firehose는 Kinesis와 통신해서 1분마다 S3 버킷에 데이터를 입력하고 오프로드하며 이를 수집 버킷이라고 함
이를 이용해 아래처럼 여러 장치에서 많은 데이터를 실시간으로 얻을 수 있는 파이프라인 마련 - 람다 함수를 이용해 S3 버킷에 데이터를 매분 입력해줄 뿐만 아니라 빠른 속도로 데이터를 정리하거나 변형하도록 함
람다 함수는 Kinesis Data Firehose와 직접 연결된 상태 - 데이터 수집 버킷은 SQS 대기열을 작동할 수 있으며 SQS 대기열은 람다 함수를 실행하고
람다는 SQL 쿼리를 실행해 Ahtena 쿼리는 수집 버킷에서 데이터를 가져와 SQL 쿼리를 생성하고 출력값은 보고 버킷으로 이동
이 때 보고 버킷은 수집 버킷이 아닌 S3에 있는 다른 버킷
이 과정을 통해 데이터를 보고하고 정리, 분석 가능 - 이 후 QuickSight를 통해 직접 시각화하거나
- RedShift 같은 데이터 웨어하우스에 데이터를 입력해 분석할 수 있음
RedShift 데이터 웨어하우스는 QuickSight의 엔드 포인트로 작용
Big Data Ingestion Pipeline discussion
- IoT Core는 여러 IoT 장치에서 데이터 수집을 허용
- Kinesis는 실시간 데이터 수집에 적합
- Firehose는 실시간에 가깝게 S3로 데이터를 운반 (선택 가능한 최적 간격은 1분)
- Lambda는 Firehose를 도와 데이터를 변형
- S3는 SQS, SNS에 트리거 알림을 실행
- Lambda는 SQS를 구독할 수 있으며 S3를 Lambda에 연결하기도 함
- Athena는 서버리스 SQL 서비스로 Athena의 결과는 S3에 직접 저장됨
- 보고 버킷은 분석된 데이터를 보관
- 추가로 분석이 필요하면 시각화에 쓰이는 QuickSight 혹은 RedShift 등의 보고 도구를 사용
'Cloud > AWS' 카테고리의 다른 글
[SAA] RDS (0) | 2022.04.15 |
---|---|
[SAA] 올바른 데이터베이스 선택 (0) | 2022.04.15 |
[SAA] 소프트웨어 업데이트 배포 (0) | 2022.04.14 |
[SAA] 유료 콘텐츠 배포 (0) | 2022.04.14 |
[SAA] 마이크로서비스 아키텍처 (0) | 2022.04.14 |