Contenu connexe
Similaire à 모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
Similaire à 모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018 (20)
Plus de Amazon Web Services Korea
Plus de Amazon Web Services Korea (20)
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
- 1. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
정세웅
Big Data 솔루션즈 아키텍트, AWS
모든 데이터를 위한 단 하나의 저장소,
Amazon S3, AWS Glue 기반
데이터 레이크
- 2. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Agenda
• 빅데이터 활용의 장애물과 해결방안
• 데이터 레이크란 ?
• AWS의 데이터 레이크
• 데이터레이크 주요 서비스 – Amazon S3, AWS Glue
• 데이터 레이크 구성 가이드
- 3. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
빅데이터을 잘 사용하기 어려운 장애물들
빅데이터를
사용하는데
어떤
어려움을
겪고 있나요?
여러 데이터에
접근하거나 함께 연결할
수 가 없다.
99%
잠재적인 가치를 가진
대부분의 데이터가
사용되지 못함
데이터를 옮기거나
변경하는데 시간이
낭비된다.
기존 프로세스와
관행이 장벽이 될
줄이야..
80%
비생산적이고 부가적인
작업에 많은 시간이
낭비
?%단지 기술 프로젝트의
문제가 아니라, 기본적인
문화의 변화가 필요
제대로 된 접근을 하지 않으면, 데이터에서 인사이트를 찾기는 불가능
- 4. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 팀에 주어진 도전과제들
기 하 급 수 적 으 로 늘 어 나 는 데 이 터
Transactions
ERP
Sensor Data
Billing
Web logs
Infrastructure logs
Social
다 양 한 데 이 터 소 비 자 들
Data Scientists
Business Analyst External Consumers
Applications
많 은 접 근 방 식 과 툴 들
API Access
BI Tools
Notebooks
Dark Data
복잡한 전처리
데이터의 중복
원본데이터 관리
다양한 기술 지원
전문가의 부족
- 5. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크
- 6. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
전통적인 데이터 분석 방식
OLTP ERP CRM LOB
Data Warehouse
Business Intelligence 관계형 데이터베이스에 기반하고
테라바이트에서 페타바이트 규모로 확장
데이터 로딩을 위해 미리 스키마를 정의
정기적인 리포트의 생성과 간단한 Ad-hoc 분석
대규모의 비용 선투자 + $10K–$50K / TB / Year
- 7. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
확장된 분석 시스템
관계형 데이터와 비정형 데이터를 모두 저장
테라바이트에서 엑사바이트 규모로 확장
분석에 활용하는 시점에 스키마의 확정
인사이트를 얻기위한 다양한 분석 엔진을 사용
낮은 비용의 스토리지와 분석이 가능한 아키텍쳐 선호
OLTP ERP CRM LOB
Data Warehouse
Business
Intelligence
Data Lake
100110000100101011100
101010111001010100001
011111011010
0011110010110010110
0100011000010
Devices Web Sensors Social
Catalog
Machine
Learning
DW
Queries
Big data
processing
Interactive Real-time
- 8. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
발전된 분석 시스템 - 데이터 레이크
엑사바이트 이상의 규모에 탁월한 내구성과 가용성
우수한 보안, 컴플라이언스, 감사 기능들
오브젝트 레벨의 제어
데이터의 사용과 비용에 대한 관리 기능
데이터를 가져오는 최선의 선택
연동 가능한 다양한 데이터 처리 / 분석 에코 시스템
DATA LAKE
A m a z o n S 3
A m a z o n G l a c i e r
A W S G l u e
Machine Learning
Analytics
Internet of Things
OLTP ERP CRM LOB Devices Web Sensors Social
Snowball
Snowmobile Kinesis
Data Firehose
Kinesis
Data Streams
Kinesis
Video Streams
- 9. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크 – 모든 데이터가 한곳에
하나의 중앙 저장소에
모든 소스로부터 오는 모든 종류의
데이터를 저장하고 분석
“왜 데이터가 여러 장소에
분산되어 있는가?
어떤 데이터가 정말
원본 데이터 인가?”
- 10. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크 – 빠른 데이터 수집
별도의 스키마 정의 없이도
빠르게 데이터를 수집
실시간, 배치, IoT등 다양한 수집
도구 활용
“어떻게 다양한 소스로부터의
데이터를 빠르게 수집하여
효율적으로 저장할 수
있을까?”
- 11. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크 – 사용 시점에 스키마 정의
“여러 종류의 분석툴과 프로세싱
엔진에서 같은 데이터를 같이 사용할
수 있는 방법이 있는가?”
데이터를 저장 시점이 아닌
사용하는 시점에 정의해서
사용함으로써
언제든 Ad-hoc 분석이 가능
- 12. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크 – 데이터 저장과 처리를 분리
데이터 저장공간과 분석을 위한 컴퓨팅
리소스를 분리
필요한 리소스만 언제든지 추가 가능
“급격히 늘어나는 데이터에 맞게
어떻게 시스템을 스케일업 할
것인가?”
- 13. 데이터 레이크의 중요한 구성요소
데이터 카탈로그와
검색
데이터 안정성과
보안
다양한 접근
방식과 UI수집과 저장
데이터 준비와
변환
데이터 처리와
분석
- 14. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS는 데이터 레이크를 위한 모든 서비스를 제공
수집 저장 시각화 / 활용분석 / 처리
Kinesis
스트리밍 데이터
Database Migration
Service
Oracle, Netezza 등의
데이터 임포트
Amazon S3
안전하고, 비용
효율적인 스토리지
Direct Connect
데이터 센터와 연결
Snowball
벌크 데이터 로드
내부 사용자와 시스템
고객 대상 서비스
더 많은 방법들..
Redshift
데이터 웨어하우스
EMR
비정형 데이터 처리,
Apache Spark
Athena
ad-hoc 쿼리
SageMaker
머신러닝 플랫폼
QuickSight
시각화, BI
더 많은 방법들..
다양한 솔루션과 연동
Glue
데이터카타로그와 ETL
어디서든 활용 가능한 ..
- 15. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크 주요 서비스
Amazon S3, AWS Glue
- 16. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
타의 추종을
불허하는 내구성,
가용성 및 확장성
최상의 보안, 컴플라이언스
및 감사 기능
모든 규모에서
객체 별 제어 가능
데이터에 대한 비즈니스
통찰력 제공
수많은 파트너 솔루션과
통합
데이터를 가져 오는
가장 많은 방법 제공
데이터 저장소 - Amazon S3
- 17. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
용도에 맞는 다양한 형태의 스토리지 사용 가능
Hot
Cold
Amazon
S3 standard
Amazon S3—
infrequent access
Amazon
Glacier
HDFS ü EMR/Hadoop을 위한 고성능
스토리지로 Local HDFS 사용
ü 엑세스를 거의 하지 않는 Cold
데이터는 Glacier로 옮겨 비용
절감
ü S3 Analytics를 이용하여
스토리지 계층화 최적화
S3 Analytics
- 18. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크 S3 Tier 설계
Tier-1 데이터 레이크 : 수집과 저장
§ 원본 데이터의 저장과 보장
§ 최소한의 데이터 변환 작업만
§ S3의 라이프사이클 기능 활용, S3-IA 또는 Glacier
Tier-2 데이터 레이크 : 분석용 데이터
§ Parquet / ORC 같은 컬럼방식 포멧의 사용
§ 파티션 정책에 따라 분산
§ 분석을 위한 최적화
Tier-3 데이터 레이크 : 특정한 분석 목적 (optional)
§ 도메인 레벨로 데이터마트 분리
§ Use Case에 적합한 구성
§ 특정 분석 방식에 적합한 데이터 변경 (ML, AI)
- 19. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 카탈로그와 ETL - AWS Glue
>
데이터에 대한 하나의
단일된 뷰 – 데이터
카탈로그
데이터에 대한 변경과
추가를 관리할 수 있는
메타데이터
데이터의 이동과 변환 작업,
Job 스케줄링
>
>
- 20. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Glue – 데이터 카탈로그
데이터를 쉽게 찾고 관리할 수 있게 해주는
자동적으로 데이터 스키마를 찾아서 저장
데이터의 검색과 ETL 작업을 가능하게
테이블 정보와 Job 정보를 포함
데이터 분포와 통계정보를 활용하여 쿼리 성능 향상
Glue
데이터 카탈로그
데이터를 탐색하여
스키마 정보 추출
- 21. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 카탈로그 관리
하나의 계정내 단일된 뷰
하나의 메타데이터를 Amazon Athena,
Amazon Redshift Spectrum, EMR에서
모두 공유
몇가지 더 확장된 기능들 :
§ 검색 - 메타데이터를 통한 데이터 검색
§ 외부 접속 정보 – JDBC URLs,
credentials
§ 분류기 - 스키마 인식과 통합을 위한
§ 버전 관리 - 스키마 변경과 메타데이터
업데이트에 대한 버전 관리
AWS Glue 데이터 카탈로그
데이터 레이크를 위한 중앙 집중 메타데이터 카탈로그
- 22. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 카탈로그 - 테이블 상세 정보 포함
테이블
스키마
테이블 속성
데이터 분포 통계
중첩 필드 구조
- 23. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 카탈로그 - 자동적으로 파티션 구조 파악
파티션 구조 탐지
- 24. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 구조가 변경되면 자동적으로 업데이트 하고 버전 관리 가능
데이터 카탈로그 - 스키마 변경 탐지 및 버전 관리
- 25. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS 분석 서비스들이 Glue 데이터 카탈로그 공유
Amazon S3
Data Catalog
AthenaEMR Amazon
Redshift
Spectrum
Amazon Sagemaker
RDS
Amazon QuickSight
Kinesis
Database
Migration
Service
AWS Glue
IAM
Other
Sources
- 26. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 카탈로그가 만들어지면..
> 필요한 데이터의 검색 가능
Athena, EMR, Redshift 등
에서 단일된 뷰로 동일한
데이터에 접근 / 활용 가능
ETL 작업의 데이터 소스로
즉시 활용 가능
>
>
- 27. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
빠르게 필요한 데이터에 대한 검색
데이터 검색 검색 결과 뷰를 저장
Amazon Athena를 통한 데이터 쿼리
- 28. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Glue 활용 패턴 - 다양한 방식으로 동일한 데이터 분석
AMAZON
QUICKSIGHT
- 29. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Glue - ETL 서비스
Job 스크립트 작성과 실행을 쉽게 도와주는
서버리스 데이터 변환작업
Apache Spark 기반
클릭 몇번으로 생성되는 ETL code
수정 / 추가가 가능한 PySpark과 Scala 코드
반복 일정과 이벤트에 따른 Job 스케줄링
익숙한 환경에서 수정, 디버그, 테스트가
가능하도록 Endpoint 제공
- 30. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Job 생성 - 콘솔에서 코드 생성
1. 콘솔에서 컬럼 단위의 맵핑을 수정하면
2. Glue에서 자동적으로 데이터 변환 그래프와 PySpark (또는 Scala) 코드를 생성, 직접 수정 가능
3. 직접 사용하는 노트북 서비스로 Dev Endpoint 이용하여 코딩 가능
- 31. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Job 북마크
북마크 기능을 통해 지속적으로 추가되는
데이터에 대한 중복 작업 관리가 가능
예제 :
일단위로 증가하는 로그 데이터 처리
시간단위로 Kinesis Firehose 데이터 처리
DB에 저장된 데이터를 시간단위로 처리
(단일 PK 데이터)
옵션 동작 방식
Enable 이전 실행한 이후 데이터만 실행
Disable 이전 단계 무시, 전체 데이터 실행
Pause 필요에 따라 일시적으로 북마크 정지
run 1 run 2 run 3
run 1 run 2 run 3
enabledisable
pause
- 32. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Job 스케줄링과 모니터링
이벤트 기반 Job을 실행 가능하며, 여러
Job 사이에 의존성을 설정이 가능
§ 각기 다른 조직에서 업무 연계와 Job의
재사용이 용이
다양한 Job 트리거 방법들
§ 스케줄 기반 : 예) 특정 시간, 특정 일
§ 이벤트 기반 : 예) Job 종료 / 실패 / 중단
§ On-demand : 예) AWS Lambda
로그와 경고는 Amazon
CloudWatch를 통해 확인 가능
Marketing:
고객 분류 별 광고 소비
이벤트 기반
Lambda Trigger
Sales:
고객 분류 별 매출
스케줄 기반
데이터
기반
Central:
고객 분류 별 ROI
Weekly
sales
데이터
기반
- 33. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Job 실행 - 서버리스
Job을 실행하기 위해서 자동적으로
인프라를 생성하고 사용한 만큼만 과금
고객 VPC 고객 VPC
Warm pool of instances
§ 서버 풀 : Job 시작시간을 줄이기 위해
미리 설정된 서버 그룹을 운영
§ 자동 설정된 VPC와 Role 기반 접근 제어
§ 고객의 요구와 SLA를 맞추기 위해서
자동적으로 리소스 확장
§ 단지, Job 실행을 위해 사용한 리소스에
대해서만 비용 지불
- 34. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Glue 활용 패턴 – 데이터 웨어하우스로 ETL 작업
- 35. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Glue 활용 패턴 – 다른 스토리지간의 데이터 이동
Unified view
- 36. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Glue 활용 패턴 – 데이터 레이크와 웨어하우스 통합
On premises data
Web app data
Amazon RDS
Other databases
Streaming data
Your data
AWS Glue ETL
AMAZON
QUICKSIGHT
- 37. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크
성능 향상 및 고려 사항
- 38. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크 성능 향상 팁
Amazon
S3
Amazon
DynamoDB
작은 파일의 통합
Amazon Kinesis Firehose
EMR hive / Spark
AWS Glue Job
S3 Select
필요한 데이터만 필터링
최대 400%까지 성능 향상
데이터 포멧
컬럼 포멧 파일 (Parquet, ORC)
압축, 정렬
New
- 39. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크 성능 향상 팁
• 버킷 파티션 : 높은 카디널리티가 있는 키를 버킷 파티션 키로 추가하십시오.
Presto / Athena, Hive, Spark 등에서 모두 쿼리 성능을 향상 시킬 수 있습니다.
• 데이터 정렬 : 성능 향상을 위해 파티션의 데이터를 보조 키로 정렬하십시오. 이를 통해
처리 엔진은 파일의 일부를 스킵하여 요청 된 데이터를 보다 빨리 얻을 수 있습니다.
• S3 병렬 처리 : 동일한 S3 버킷에 있는 파일에 대한 많은 동시 요청이 예상되는 경우
임의의 16 진수 prefix를 객체 이름에 추가하십시오
df.write.bucketBy(numBuckets, "col1").parquet(...)
df.repartition(100).sortWithinPartitions(['order_id'], ascending=True).parquet(...)
examplebucket/232a-2013-26-05-15-00-00/cust1234234/photo1.jpg
examplebucket/7b54-2013-26-05-15-00-00/cust3857422/photo2.jpg
examplebucket/921c-2013-26-05-15-00-00/cust1248473/photo2.jpg
- 40. 데이터 레이크 팀
데이터 엔지니어링 운영 / 개발
데이터 사이언티스트
데이터 분석가
비지니스 분석가
어플리케이션
데이터 레이크 팀의 역할
다양한 어플리케이션
서비스 / 고객
내부 부서
- 41. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크로 해결 가능한 문제들
Amazon Redshift
Data Warehouse
Amazon EMR
Clusterless SQL Query
Amazon Athena
Clusterless ETL
Amazon Glue
BI & Visualization
Hadoop/Hive/Presto
배치 프로세싱
Amazon
Glacier
Amazon
S3
- 42. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크로 해결 가능한 문제들
스트리밍 실시간 데이터 분석
AWS Lambda
Amazon
Elasticsearch
Service
Apache Storm
on EMR
Apache Flink
on EMR
Amazon Kinesis
Analytics
Spark Streaming
on EMR
Amazon
ElastiCache
Amazon
Glacier
Amazon
S3
- 43. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크로 해결 가능한 문제들
AI / 머신러닝
Amazon
Glacier
Amazon
S3
Life-like speech
Amazon Polly
Amazon Lex
Conversational
engine
Amazon Rekognition
Image analysis
Deep learning
Frameworks
MXNet, TensorFlow,
Theano, Caffe, Torch
- 44. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크로 해결 가능한 문제들
• 저비용으로 대량의 데이터에 대한 인터렉티브 쿼리 = S3 + Glue + Athena
• 아카이빙 된 데이터에 대한 간헐적인 쿼리 = S3 / Glacier + Glue + Athena / Redshift
• 기존 데이터 웨어하우스의 확장 = S3 + Glue + Redshift Spectrum
• Log 분석 = S3 + Glue + Athena / EMR / Redshift Spectrum
• On-Prem Database 데이터를 활용한 ETL 솔루션 = Glue + S3
• 사용하고 못하고 버려지는 데이터에 대한 가치 탐색 = S3 + Glue + Athena / EMR
- 45. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
데이터 레이크 - 작게 시작해서 반복적으로
AWS GLUE
데이터카타로그
Amazon
Quicksight
Amazon S3 Amazon Athena
데이터센터
웹 로그 Amazon
RDS
여러
데이터베이스
스트리밍
데이터
서버리스 분석 파이프라인
Ingest ConsumeStore Analyze
1 4
0 9
5
DATA INSIGHTS
수집 저장 분석/처리 시각화
- 46. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
요약 정리
• 데이터 레이크는 빅데이터 관련된 많은 이슈를 해결
• 데이터 레이크는 S3에 데이터를 저장하는 것으로 시작
• Glue 데이터 카타로그는 데이터에 대한 단일 뷰를 제공
• 데이터 카타로그를 통해 다양한 분석에 활용
• 작게 시작해서 다양하게 확장 가능
- 47. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
관련 참고 자료
Amazon Web Service 빅데이터 블로그
• https://aws.amazon.com/ko/blogs/korea/category/analytics/
Amazon S3 및 AWS Glue를 이용한 데이터 레이크 구축하기
• https://aws.amazon.com/ko/blogs/korea/build-a-data-lake-foundation-with-aws-glue-and-amazon/
Amazon Glue 기반 Amazon Aurora 데이터 추출 및 Quicksight 시각화 하기
• https://aws.amazon.com/ko/blogs/korea/data-export-aurora-db-quicksight-visualization-by-glue/
- 48. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Summit 모바일 앱과 QR코드를
통해 강연 평가 및 설문 조사에 참여해
주시기 바랍니다.
내년 Summit을 만들 여러분의 소중한
의견 부탁 드립니다.
#AWSSummit 해시태그로 소셜 미디어에 여러분의 행사
소감을 올려주세요.
발표 자료 및 녹화 동영상은 AWS Korea 공식 소셜 채널로
공유될 예정입니다.
여러분의 피드백을 기다립니다!