Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS Data Pipeline VS AWS Glue : 어떻게 다를까요?
Search
yjsong
November 08, 2021
Programming
0
2.4k
AWS Data Pipeline VS AWS Glue : 어떻게 다를까요?
yjsong
November 08, 2021
Tweet
Share
More Decks by yjsong
See All by yjsong
210727
yjsong
0
870
Other Decks in Programming
See All in Programming
PipeCDのプラグイン化で目指すところ
warashi
1
280
10 Costly Database Performance Mistakes (And How To Fix Them)
andyatkinson
0
340
生成AI時代のコンポーネントライブラリの作り方
touyou
1
220
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
14
5.4k
すべてのコンテキストを、 ユーザー価値に変える
applism118
3
1.3k
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
160
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
390
Rails Frontend Evolution: It Was a Setup All Along
skryukov
0
150
Claude Code + Container Use と Cursor で作る ローカル並列開発環境のススメ / ccc local dev
kaelaela
10
5.3k
A full stack side project webapp all in Kotlin (KotlinConf 2025)
dankim
0
120
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
2
640
ソフトウェア品質を数字で捉える技術。事業成長を支えるシステム品質の マネジメント
takuya542
2
13k
Featured
See All Featured
Facilitating Awesome Meetings
lara
54
6.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Designing Experiences People Love
moore
142
24k
Music & Morning Musume
bryan
46
6.6k
Fireside Chat
paigeccino
37
3.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Automating Front-end Workflow
addyosmani
1370
200k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Rails Girls Zürich Keynote
gr2m
95
14k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Transcript
AWS Data Pipeline VS AWS Glue 어떻게 다를까요? 송영진
발표자 소개 • 신입엔지니어, Classmethod(2020/04) • AWS를 이용한 데이터 분석,
기계학습에 관심
오늘의 이야기 • 다룰 내용 • ETL에 관한 이야기 •
AWS Data Pipeline과 AWS Glue의 개념과 특징 • 예시 아키텍처 • 다루지 않는 내용 • 데이터 분석에 대한 자세한 이야기 • 실제 코드 • 모든 기능의 설명
목차 • 배경지식 • AWS Data Pipeline이란? • AWS Glue란?
• 요약
왜 이런 주제?
ETL?
간단히 보는 데이터 분석의 흐름 •
ETL 난잡한 원시데이터에서 데이터 분석이 원활하게 할 수 있도록 분석하기
쉬운 데이터로 추출, 변환 시켜서 불러오는 작업
ETL 예시
그래서 같은 ETL 서비스인데 어떻게 다른가요?
AWS Data Pipeline 온프레미스 데이터 소스뿐 아니라 여러 AWS 컴퓨팅
및 스토리지 서비스 간에 데이터를 안정적으로 처리하고 지정된 간격으로 이동할 수 있게 지원하는 웹 서비스
Data Pipeline의 포인트 • AWS의 관리 서비스 • EC2 인스턴스
위에서 실행 • 노드 사이에서 데이터 마이그레이션 및 ETL 작업 수행 • 스케쥴러 기능(시간지정 및 사이클링 의존성 지정 등) • 온프레미스에서 AWS로 데이터 이동 가능
Data Pipeline의 구성요소
AWS의 관리 서비스 • 어려운 작업은 아니지만 직접 만들려면 귀찮음
• 작업을 수행하기 위한 환경 • 컴퓨팅 리소스 • 소프트웨어 • 스케쥴러(시계열 방식, 크론 방식) • 관리 및 유지보수
데이터 마이그레이션 및 ETL • 개발용 GUI 지원 • 대표적인
모델 템플릿 지원 • 자신이 사용하던 코드로 실행 시킬 수 있음 • EC2 인스턴스 또는 EMR 클러스터 위에서 수행됨 • 실패한 작업 자동으로 재실행
대표적인 사례 Amazon S3 Amazon S3
AWS Glue 완전 관리형 ETL 서비스로, 효율적인 비용으로 간단하게 여러
데이터 스토어 및 데이터 스트림 간에 원하는 데이터를 분류, 정리, 보강, 이동할 수 있게 지원하는 웹 서비스
Glue의 핵심 기능 • 테이블 • 데이터 카탈로그 • 데이터의
스키마 정보(칼럼, 데이터 형식)를 저장 • DB마다 관리 • 작업 • ETL처리의 실행기반 • 3종류 선택가능(Python Shell, Spark, Spark Streaming)
Glue의 특징 • 서버리스로 관리할 인프라가 없음 • 크롤러를 통해서
자동으로 스키마 생성 • GUI 클릭으로 자동으로 ETL 코드 자동 생성 및 수정 • 반정형 데이터를 관계형 데이터로 변환 가능 • 반복 일정과 이벤트에 따른 작업 실행 • Workflow, Step Functions를 통한 작업관리
자동으로 스키마 생성
Glue의 ETL 작업 수행과정 • 데이터의 원본을 크롤링하여 데이터 카탈로그에
메타데이터 생성 • 데이터 카탈로그의 정보를 바탕으로 작업 정의 • 정의된 작업에 따라서 ETL의 코드가 자동으로 생성 • 작업 실행으로 소스 데이터에서 추출, 변환하여 타겟으로 로드
Glue의 실행환경 및 구성요소
ETL의 예시
반정형 스키마에서 관계형 스키마로 변환
예시
Glue Job • 규모와 유형에 따라서 Python Shell, Spark, 스트리밍
ETL 선택 • 작업 제한시간 기본값 2880분 • 트리거를 사용하여 자동으로 작업 시작 가능 • 다양한 형식의 출력파일 : JSON, CSV, ORC, Apache Parquet 등 • 오류시 자동으로 재시도 • 엔드포인트를 사용하여 스크립트 개발 및 테스트 가능
Glue Job
Glue Workflow
요약 • AWS Data Pipeline • EC2 인스턴스 사용 •
데이터의 이동 및 변환 자동화 • 미리 작성된 템플릿 제공 • 온프레미스에서도 가능 • AWS Glue • 서버리스 • 데이터 카탈로그 수집 • 규모와 목적에 따른 작업 실행환경 선택 • ETL 코드 자동으로 생성 • 대부분의 Data Pipeline 기능 할 수 있음
감사합니다!