일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Kubernetes
- 파이썬
- 쿠버플로우
- MLOps
- Opensearch
- 쿠버플로
- Spark
- MachineLearning
- 데이터 플랫폼
- 리눅스
- yarn
- 파이썬처럼생각하기
- Python
- 파이썬답게생각하기
- gcp
- 데이터 아키텍처
- 쿠버네티스
- mesos
- Tabular
- etl
- TABNET
- Kibana
- AWS Glue
- 하이브
- Minikube
- fluentd
- 머신러닝
- hive
- elk
- Kubeflow
- Today
- Total
데이터를 걷는 선비
[Glue] AWS Glue 개념 정리 본문
AWS 관련 업무를 하거나, 관련 자격증(Machine Learning Specialty, Data Analytics) 에 대해서 공부하다 보면 자주 등장하는 AWS Glue의 개념에 대해서 간단히 알아보겠습니다.
https://aws.amazon.com/ko/glue/
서버리스 데이터 통합 - AWS Glue - Amazon Web Services
AWS Glue DataBrew를 사용하면 Amazon S3, Amazon Redshift, AWS Lake Formation, Amazon Aurora 및 Amazon Relational Database Service(RDS)를 비롯한 데이터 레이크, 데이터 웨어하우스 및 데이터베이스에서 직접 데이터를 탐색
aws.amazon.com
[개념]
AWS에서 설명하는 Glue는 분석, 기계 학습 및 애플리케이션 개발을 위해 여러 소스에서 데이터를 쉽게 탐색, 준비, 이동 및 통합할 수 있도록 하는 확장 가능한 서버리스 데이터 통합 서비스로 실행되는 동안에만 사용한 리소스에 대해 비용을 지불하면 되는 서비스다.
아래 AWS 데이터 플랫폼 아키텍처에서도 확인할 수 있듯이 Glue는 데이터를 수집할 뿐만 아니라 메타 데이터 관리를 통해 운영할 수 있게 해주는 데이터 통합 서비스다.
참조: https://semizero.tistory.com/19
[Data Platform] AWS 데이터 플랫폼 아키텍처
클라우드 데이터 플랫폼 아키텍처에 대한 설명은 아래 포스팅을 참조! https://semizero.tistory.com/12 클라우드 데이터 플랫폼 계층 아키텍처 (1/3) 본 포스팅은 "데이터 플랫폼 설계와 구축(다닐 즈부리
semizero.tistory.com
[구성]
AWS Glue는 크게 데이터 카탈로그(그림의 붉은 선 위)와 ETL(그림의 붉은 선 아래) 기능, 그리고 이를 관리하는 스케줄러로 구성되어 있다.
- 중앙 메타데이터 리포지토리, AWS Glue Data Catalog
- AWS Glue Data Catalog 라고 하는 중앙 메타데이터 저장소라고 하는 데이터베이스를 사용해 모든 데이터의 카탈로그를 한 곳에 모아놓으며 이를 통해 ETL 작업이 가능하도록 한다.
- 자동으로 Python 및 Scala 코드를 생성하는 ETL 엔진
- Glue는 ETL 작업을 하기 위한 Python 및 Scala 스크립트를 자동으로 생성해주는 Spark 기반의 ETL 엔진으로 ETL 작업을 수행한다.
- 종속성 확인, 작업 모니터링 및 재시도를 관리하는 유연한 스케줄러
- 작업들을 Cloudwatch 를 통해 모니터링하고 트리거를 통해 실행하고 관리할 수 있는 스케줄러를 가지고 있다
[기능 : 검색]
- 모든 AWS 데이터 세트에서 검색: AWS Glue 데이터 카탈로그
- AWS Glue 데이터 카탈로그에는 Glue 환경을 관리하는데 도움이 되는 테이블 정의, 작업 정의, 스키마 및 기타 제어 정보가 담겨 있음
- 자동 스키마 검색 : AWS Glue 크롤러
- 소스 또는 대상 데이터에 연결하고, 우선순위가 지정된 분류기 목록을 거치면서 데이터의 스키마를 결정한 후, AWS Glue 데이터 카탈로그에 메타데이터 생성
- 메타데이터는 데이터 카탈로그의 테이블에 저장되고, ETL 작업의 프로세스에 사용됨
- 데이터 스트림 스키마 관리 및 적용: AWS Glue 스키마 레지스트리
- Apache Avro 스키마를 사용하여 스트리밍 데이터의 변화를 검증하고 제어
- Apache 라이선스 직렬화 및 역직렬화를 통해 스키마 레지스트리는 Apache Kafka, AWS MSK, Apache Flink, Amazon Kinesis 등과 통합
- 워크로드를 기반으로 자동으로 크기 조정 : 서버리스 기능을 의미
[기능 : 준비]
- 기본 제공 기계 학습을 통해 데이터 중복 제거 및 정리: AWS Glue FindMatches
- 중복된 레코드를 거르는 ETL 작업
- 개발자 엔드포인트에서 ETL 코드 편집, 디버깅 및 테스트
- 시각적 인터페이스를 사용해 코드 없이 데이터 정규화: AWS Glue DataBrew
- 데이터 분석가 및 데이터 사이언티스트와 같은 사용자가 코드를 작성하지 않고도 데이터를 정리하고 정규화할 수 있도록 포인트 앤 클릭 방식의 대화식 시각적 인터페이스 제공
- 민감한 데이터 정의, 탐지 및 교정: AWS Glue Sensitive Data Detection
- 사용자 지정 시각적 변환 생성
[기능 : 통합]
- 데이터 통합 작업 개발 간소화: AWS Glue Interactive Sessions
- 작업 개발을 위한 서버리스 기능으로, 데이터 엔지니어는 대화식으로 데이터를 탐색하고 준비할 수 있음
- 기본 제공 Job Notebooks : AWS Glue Studio Job Notebooks
- AWS Glue Studio에서 최소한으로 설정할 수 있는 서버리스 노트북을 제공
- Glue Studio Job Notebooks는 AWS Glue Interactive Sessions용 내장 인터페이스를 제공하므로 사용자는 노트북 코드를 AWS Glue 작업으로 저장하고 예약
- 단순한 작업 스케줄링으로 복잡한 ETL 파이프라인 구축
- AWS 작업은 일정에 따라, 온디맨드로 또는 이벤트 기반으로 호출할 수 있음
[기능 : 변환]
- 드래그 앤 드랍 인터페이스를 사용해 시각적으로 데이터 변환: AWS Glue Studio
- AWS Glue Studio를 사용하면 분산 처리를 위한 확장성이 뛰어난 ETL 작업을 작성
- 스트리밍 데이터 정리 및 변환
- AWS Glue에서의 서버리스 스트리밍 ETL 작업은 Amazon Kinesis 및 Amazon MSK를 포함한 스트리밍 소스로부터 계속해서 데이터를 사용하며, 이동 중인 데이터를 정리 및 변환하고, 대상 데이터 스토어에서 몇 초 안에 분석에 해당 데이터를 사용할 수 있도록 지원
계속해서 Glue를 활용한 실습을 진행해보자!
https://semizero.tistory.com/20
[Glue] AWS Glue Cralwer(크롤러)로 테이블 만들기 실습
semizero.tistory.com
'Cloud > AWS' 카테고리의 다른 글
[Glue] AWS Glue Cralwer(크롤러)로 테이블 만들기 실습 (0) | 2023.01.12 |
---|---|
[Data Platform] AWS 데이터 플랫폼 아키텍처 (0) | 2023.01.09 |