SlideShare a Scribd company logo
1 of 63
Download to read offline
Copyright ⓒ rainist . All rights reserved
데이터, 얼마까지 알아보고 오셨어요?
Lake에서 Mart까지
데이터 엔지니어 김태일
2
시작하기 전에...
오늘 다루는 내용
● AWS 서비스들을 이용해서 데이터 레이크와 마트를 구현한 방법
● DB에 저장되는 데이터를 S3에 쌓는 방법
● 데이터 엔지니어의 흔한 삽질 과정
오늘 다루지 않을 내용
● 모니터링이나 HA
● 데이터 인프라의 정답
3
뱅크샐러드
금융 데이터를 한 곳에 모아
개인화된 종합 자산 관리를
제공하는 금융 서비스
4
뱅크샐러드
01 02
03 04
목차
INDEX
기존의 Data Infra Data Lake
Data warehouse Data Mart
옛날 옛날 한 옛날에...
데이터 가공하기 데이터 납품하기
데이터 퍼올리기
옛날 옛날 한 옛날에
...
기존의 Data Infra
01
7
데이터 팀이 생겼다!
옛날 옛날 한 옛날에...
야생의 Data Engineer이(가)
채용되었다!
아...몇몇 분석들은 데
이터가 없어서….
카테고리 고도화,
뱅크샐러드 평균 계좌 잔액,
평균 카드 사용 금액,
연동된 상품 개수,
데모그래픽별 연동 현황
분석 해 주세요!
8
데이터 팀이 생겼다!
옛날 옛날 한 옛날에...
데이터, 유혈사태, 성공적
카테고리 고도화,
뱅크샐러드 평균 계좌 잔액,
평균 카드 사용 금액,
연동된 상품 개수,
데모그래픽별 연동 현황
분석 해 주세요!
9
데이터 인프라가 있긴 있었는데….
‘금융 비서’라는 서비스를 제공하기 위해 사용자의 데이터를 기반으로 계산이 필요
데이터팀은 계산 전에 모인 데이터를 이용하여 분석을 시작했습니다.
옛날 옛날 한 옛날에...
10
데이터 인프라가 있긴 있었는데….
옛날 옛날 한 옛날에...
카드 DB
예금 DB
보험 DB
증권 DB
id : 12345,
card : [
card1,
card2
],
account : [
account1
account2
],
insurance : [
insurance1
],
stock : [
stock1
]
id : 12345
11
데이터 인프라가 있긴 있었는데….
옛날 옛날 한 옛날에...
사용자의 데이터는 MongoDB에 차곡차곡 쌓이고,
12
데이터 인프라가 있긴 있었는데….
옛날 옛날 한 옛날에...
사용자의 데이터는 MongoDB에 차곡차곡 쌓이고,
Production과 Development는 당연히 분리가 되어 있었지만,
Production
Development
13
데이터 인프라가 있긴 있었는데….
옛날 옛날 한 옛날에...
사용자의 데이터는 MongoDB에 차곡차곡 쌓이고,
Production과 Development는 당연히 분리가 되어 있었지만,
분석용 DB가 없어요…..
14
데이터 추출을 해보자!
Production에 조심스럽게 쿼리를 날려봅니다.
옛날 옛날 한 옛날에...
15
데이터 추출을 해보자!
Production에 조심스럽게 쿼리를 날려봅니다.
1. 복잡한 쿼리를 조심스럽게 날려본다.
옛날 옛날 한 옛날에...
16
데이터 추출을 해보자!
Production에 조심스럽게 쿼리를 날려봅니다.
1. 복잡한 쿼리를 조심스럽게 날려본다.
2. 앗, Index가 걸려있지 않다?!
옛날 옛날 한 옛날에...
17
데이터 추출을 해보자!
Production에 조심스럽게 쿼리를 날려봅니다.
1. 복잡한 쿼리를 조심스럽게 날려본다.
2. 앗, Index가 걸려있지 않다?!
3. IOPS가 상승한다?!
옛날 옛날 한 옛날에...
18
데이터 추출을 해보자!
Production에 조심스럽게 쿼리를 날려봅니다.
1. 복잡한 쿼리를 조심스럽게 날려본다.
2. 앗, Index가 걸려있지 않다?!
3. IOPS가 상승한다?!
4. ?????
옛날 옛날 한 옛날에...
19
데이터 추출을 해보자!
Production에 조심스럽게 쿼리를 날려봅니다.
1. 복잡한 쿼리를 조심스럽게 날려본다.
2. 앗, Index가 걸려있지 않다?!
3. IOPS가 상승한다?!
4. ?????
5. PROFIT!!!?!
옛날 옛날 한 옛날에...
20
데이터 추출을 해보자!
Production에 조심스럽게 쿼리를 날려봅니다.
1. 복잡한 쿼리를 조심스럽게 날려본다.
2. 앗, Index가 걸려있지 않다?!
3. IOPS가 상승한다?!
4. ?????
5. PROFIT!!!?!.......이 아닌 DB 장애
옛날 옛날 한 옛날에...
실제로 서비스 장애가 일어났었다고…..합니다
…..
21
데이터 추출을 해보자! - 희망(AWS)편
그렇다면 어떻게 해야 원하는 데이터를 빠르고 편하게 그리고 안전하게 뽑을 수 있을까?
옛날 옛날 한 옛날에...
22
데이터 추출을 해보자! - 희망(AWS)편
그렇다면 어떻게 해야 원하는 데이터를 빠르고 편하게 그리고 안전하게 뽑을 수 있을까?
옛날 옛날 한 옛날에...
먼저 스키마를 정의 하면
테이블처럼 쿼리를 실행할 수 있어!
23
데이터 추출을 해보자! - 절망(현실)편
MongoDB는 NoSQL document base DB
RDB에서 얘기하는 Column의 개념이 다름
옛날 옛날 한 옛날에...
- 카드
- 카드사
- 카드사 id
- 카드사 명
- 카드 명
- 발급일
- 만료일
- 예금
.
.
.
사용자 자산 데이터
24
데이터 추출을 해보자! - 절망(현실)편
기존 데이터 스키마 += 새로운 자산 타입 스키마
옛날 옛날 한 옛날에...
- 카드
- 카드사
- 카드사 id
- 카드사 명
- 카드 명
- 발급일
- 만료일
- 예금
.
.
.
사용자 자산 데이터 - 배포 전
- 카드
- 카드사
- 카드사 id
- 카드사 명
- 카드 명
- 발급일
- 만료일
- 예금
- 보험
- 보험사
- 보험사 id
- 보험사 명
- 연금
.
.
.
사용자 자산 데이터 - 배포 후
25
고민은 깊어져 가고...
Athena 테이블로 분석 환경을 제공하기 위해서는 스키마가 필요
옛날 옛날 한 옛날에...
26
고민은 깊어져 가고...
Athena 테이블로 분석 환경을 제공하기 위해서는 스키마가 필요
옛날 옛날 한 옛날에...
그냥 json인데 뭐~
매번 배포 할 때마다 바뀌는
거야!
27
고민은 깊어져 가고...
Athena 테이블로 분석 환경을 제공하기 위해서는 스키마가 필요
옛날 옛날 한 옛날에...
그냥 json인데 뭐~
매번 배포 할 때마다 바뀌는
거야!
매번 스키마 수정하자니 넘나 귀찮...
28
다시 데이터 추출을 해보자! - 희망(AWS)편
그렇다면 어떻게 해야 매번 스키마 변경에 대해 손으로 일일이 수정하지 않을 수 있을까?
옛날 옛날 한 옛날에...
AWS Glue
29
다시 데이터 추출을 해보자! - 희망(AWS)편
그렇다면 어떻게 해야 매번 스키마 변경에 대해 손으로 일일이 수정하지 않을 수 있을까?
옛날 옛날 한 옛날에...
편-
안
30
데이터를 원하는 자 나를 넘어 가라
옛날 옛날 한 옛날에...
31
고객의 요구
- 뱅크샐러드를 통해 저장되는 여러 데이터를 원활하게 분석하고 싶음
- 가공된 데이터를 서비스에 적용하고 싶음
- 여러 서비스에서 다양한 지표들을 보고 싶음
옛날 옛날 한 옛날에...
한계
- 모든 데이터를 한번에 다 적재할 수는 없음
- 보안상의 문제가 되는 데이터는 보안팀 검토 + 암호화 등이 필요
- Seoul region에서 제공되는 서비스만 사용 가능 😭
- 해달라는 대로 다 해주면 읍읍…….
32
전체 인프라 구조
옛날 옛날 한 옛날에...
데이터 퍼올리기
Data Lake
02
34
데이터 레이크?
데이터 퍼올리기
Structured data
Unstructured data
Semi-structured data
35
뱅크샐러드 데이터 레이크
데이터 퍼올리기
Banksalad
backend
services
36
의 정체
- Change Data Capture (CDC)
- DB에 저장된 데이터를 복제/백업 등의 목적으로 사용되는 Design Pattern
- Data warehouse를 만드는데도 사용
데이터 퍼올리기
C
R
U
D
binlog
oplog
37
MySQL의 경우
- binlog를 이용해서 데이터를 tracking
데이터 퍼올리기
38
MongoDB의 경우
Change Stream
- 3.6 이상에서 동작
- DB에 부하를 주지 않음 (oplog를 follow하지 않음)
데이터 퍼올리기
39
실시간 적재를 위한 선택
- Lake에는 실시간(nearly realtime)으로 데이터가 적재되도록 함
- 급하게 최신 데이터를 추출해야 하는 경우
- 서비스단의 오류를 검출하고자 하는 경우 (거의 없음)
데이터 퍼올리기
- Kinesis Stream
- Kinesis Firehose
- Kinesis Analytics
40
Amazon Kinesis Stream
Amazon Kinesis Data Streams를 사용하여 대규모 데이터 레코드 스트림을 실시간으로 수집하고
처리할 수 있습니다.
데이터 퍼올리기
41
Amazon Kinesis Firehose
데이터 퍼올리기
Transform data with Lambda
Format converting
Compression
Encryption
데이터를 S3, Redshift, Elasticsearch(Amazon ES) 및 Splunk 등의 대상으로 전송하기 위한 완전
관리형 서비스입니다.
42
만능 Kinesis firehose...but?
데이터 퍼올리기
Data lake는 Schema가 변경되어도 온전히
raw data를 보존하기 위함
압축은 gzip으로 최대한 압축해서 보관
43
어디까지 왔나?
데이터 퍼올리기
데이터 가공하기
Data Warehouse
03
45
데이터 웨어하우스?
데이터 가공하기
Data Warehouse
ETL
CRM
ERP
Operational
System
46
뱅크샐러드의 데이터 웨어하우스
데이터 가공하기
말하자면,
호수에서 하는 가두리양식
47
뱅크샐러드 데이터 웨어하우스
- 데이터 레이크에 쌓이는 양이 많으므로 EMR로 처리해서 S3에 적재
- 데이터의 타입에 따라 일단위, 월단위로 웨어하우스 생성 주기를 다르게 가짐
- Row base에서 Column base로 포맷 변경
- 데이터 정형화
데이터 가공하기
48
웨어하우스 생성을 위한 선택
Amazon Elastic Map-Reduce(EMR)
AWS에서 Apache Hadoop 및 Apache Spark와
같은 빅 데이터 프레임워크 실행을 간소화하는 관
리형 클러스터 플랫폼
데이터 가공하기
49
데이터 가공하기
- 첫번째 생성에 한하여 기존 DB 데이터가 필요
- 차회부터는 데이터 웨어하우스 + 데이터 레이크 = 데이터 웨어하우스
데이터 가공하기
Data warehouse origin
Insert Update Delete
Data warehouse new
50
데이터 가공하기
- 첫번째 생성에 한하여 기존 DB 데이터가 필요
- 차회부터는 데이터 웨어하우스 + 데이터 레이크 = 데이터 웨어하우스
ex) 매일생성되는 warehouse의 경우
데이터 가공하기
6/11
Warehouse
Lake
6/12 6/13
CUD operations
51
어디까지 왔나?
데이터 가공하기
데이터 납품하기
Data Mart
04
53
데이터 마트?
- 고객의 니즈에 맞춰 마트를 디자인
- 하나의 주제에 대해서 마트를 생성
데이터 납품하기
Data warehouse
사용자 은행 계좌 관련
Data mart
사용자 신용 등급 관련
Data mart 사용자 연금 관련
Data mart
사용자 카드 사용 관련
Data mart
54
마트 생성 프로세스
데이터 납품하기
사용자 별로
소유하고 있는 카드 당
매달 사용금액을 보고 싶어
요.
음...그럼 이런이런 데
이터가 필요하겠군!
만들어 주세요!
Data lake 생성
Data warehouse 생성
Data mart 생성
55
하지만, 가까운 미래
140000000162개의 미래를 보고왔다.
데이터 납품하기
56
하지만, 가까운 미래
데이터 납품하기
네...네?!이 마트 데이터가 이상해요
!
고쳐주쎼요! 데이터 줘!!
저희에게 시간과 예산을 더 주시
면...
?!??!!?!
데이터의 가치 하락 or 서비스 장
애
57
EMR이 아닌 Glue!
데이터 납품하기
58
마트 생성 프로세스
데이터 납품하기
쉬운 스케쥴 관리
쉬운 디버깅
쉬운 코드 수정
59
데이터의 분석은?
- Glue crawler를 통해 테이블 생성
- Athena를 이용하여 쿼리로 데이터 분석
- Sagemaker notebook을 통해 데이터 모델링
마무리
마무리
FF
61
앞으로는 무엇이 남았을까?
- 실시간 분석 및 실시간 서비스 제공
- 좀 더 저렴한 방법
- 비 개발자도 쉽게 사용이 가능하도록 BI와의 연동
마무리
62
끝!!!
마무리
THANK YOU

More Related Content

What's hot

Spark은 왜 이렇게 유명해지고 있을까?
Spark은 왜 이렇게  유명해지고 있을까?Spark은 왜 이렇게  유명해지고 있을까?
Spark은 왜 이렇게 유명해지고 있을까?KSLUG
 
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for HadoopSeungYong Baek
 
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWSMatthew (정재화)
 
about hadoop yes
about hadoop yesabout hadoop yes
about hadoop yesEunsil Yoon
 
Data analysis with Tajo
Data analysis with TajoData analysis with Tajo
Data analysis with TajoGruter
 
DynamoDB의 안과밖 - 정민영 (비트패킹 컴퍼니)
DynamoDB의 안과밖 - 정민영 (비트패킹 컴퍼니)DynamoDB의 안과밖 - 정민영 (비트패킹 컴퍼니)
DynamoDB의 안과밖 - 정민영 (비트패킹 컴퍼니)AWSKRUG - AWS한국사용자모임
 
Big Data Overview
Big Data OverviewBig Data Overview
Big Data OverviewKeeyong Han
 
An introduction to hadoop
An introduction to hadoopAn introduction to hadoop
An introduction to hadoopMinJae Kang
 
Amazon Redshift의 이해와 활용 (김용우) - AWS DB Day
Amazon Redshift의 이해와 활용 (김용우) - AWS DB DayAmazon Redshift의 이해와 활용 (김용우) - AWS DB Day
Amazon Redshift의 이해와 활용 (김용우) - AWS DB DayAmazon Web Services Korea
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoMatthew (정재화)
 
Spark 소개 2부
Spark 소개 2부Spark 소개 2부
Spark 소개 2부Jinho Yoo
 
Hadoop cluster os_tuning_v1.0_20170106_mobile
Hadoop cluster os_tuning_v1.0_20170106_mobileHadoop cluster os_tuning_v1.0_20170106_mobile
Hadoop cluster os_tuning_v1.0_20170106_mobile상연 최
 
Realtime Big data Anaytics and Exampes of Daum (2013)
Realtime Big data Anaytics and Exampes of Daum (2013)Realtime Big data Anaytics and Exampes of Daum (2013)
Realtime Big data Anaytics and Exampes of Daum (2013)Channy Yun
 
왜 Spark 와 infinispan 왜 같이 쓰지
왜 Spark 와 infinispan 왜 같이 쓰지 왜 Spark 와 infinispan 왜 같이 쓰지
왜 Spark 와 infinispan 왜 같이 쓰지 Un Gi Jung
 
[Pgday.Seoul 2018] Greenplum의 노드 분산 설계
[Pgday.Seoul 2018]  Greenplum의 노드 분산 설계[Pgday.Seoul 2018]  Greenplum의 노드 분산 설계
[Pgday.Seoul 2018] Greenplum의 노드 분산 설계PgDay.Seoul
 
Introduction to Apache Tajo
Introduction to Apache TajoIntroduction to Apache Tajo
Introduction to Apache TajoGruter
 
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기AWSKRUG - AWS한국사용자모임
 
Hadoop 제주대
Hadoop 제주대Hadoop 제주대
Hadoop 제주대DaeHeon Oh
 

What's hot (20)

Spark은 왜 이렇게 유명해지고 있을까?
Spark은 왜 이렇게  유명해지고 있을까?Spark은 왜 이렇게  유명해지고 있을까?
Spark은 왜 이렇게 유명해지고 있을까?
 
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
 
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
 
about hadoop yes
about hadoop yesabout hadoop yes
about hadoop yes
 
Data analysis with Tajo
Data analysis with TajoData analysis with Tajo
Data analysis with Tajo
 
DynamoDB의 안과밖 - 정민영 (비트패킹 컴퍼니)
DynamoDB의 안과밖 - 정민영 (비트패킹 컴퍼니)DynamoDB의 안과밖 - 정민영 (비트패킹 컴퍼니)
DynamoDB의 안과밖 - 정민영 (비트패킹 컴퍼니)
 
Druid+superset
Druid+supersetDruid+superset
Druid+superset
 
Big Data Overview
Big Data OverviewBig Data Overview
Big Data Overview
 
An introduction to hadoop
An introduction to hadoopAn introduction to hadoop
An introduction to hadoop
 
Amazon Redshift의 이해와 활용 (김용우) - AWS DB Day
Amazon Redshift의 이해와 활용 (김용우) - AWS DB DayAmazon Redshift의 이해와 활용 (김용우) - AWS DB Day
Amazon Redshift의 이해와 활용 (김용우) - AWS DB Day
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with Tajo
 
Spark 소개 2부
Spark 소개 2부Spark 소개 2부
Spark 소개 2부
 
hadoop ch1
hadoop ch1hadoop ch1
hadoop ch1
 
Hadoop cluster os_tuning_v1.0_20170106_mobile
Hadoop cluster os_tuning_v1.0_20170106_mobileHadoop cluster os_tuning_v1.0_20170106_mobile
Hadoop cluster os_tuning_v1.0_20170106_mobile
 
Realtime Big data Anaytics and Exampes of Daum (2013)
Realtime Big data Anaytics and Exampes of Daum (2013)Realtime Big data Anaytics and Exampes of Daum (2013)
Realtime Big data Anaytics and Exampes of Daum (2013)
 
왜 Spark 와 infinispan 왜 같이 쓰지
왜 Spark 와 infinispan 왜 같이 쓰지 왜 Spark 와 infinispan 왜 같이 쓰지
왜 Spark 와 infinispan 왜 같이 쓰지
 
[Pgday.Seoul 2018] Greenplum의 노드 분산 설계
[Pgday.Seoul 2018]  Greenplum의 노드 분산 설계[Pgday.Seoul 2018]  Greenplum의 노드 분산 설계
[Pgday.Seoul 2018] Greenplum의 노드 분산 설계
 
Introduction to Apache Tajo
Introduction to Apache TajoIntroduction to Apache Tajo
Introduction to Apache Tajo
 
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
 
Hadoop 제주대
Hadoop 제주대Hadoop 제주대
Hadoop 제주대
 

Similar to [AWSKRUG] 데이터 얼마까지 알아보셨어요?

NDC 2016, [슈판워] 맨땅에서 데이터 분석 시스템 만들어나가기
NDC 2016, [슈판워] 맨땅에서 데이터 분석 시스템 만들어나가기NDC 2016, [슈판워] 맨땅에서 데이터 분석 시스템 만들어나가기
NDC 2016, [슈판워] 맨땅에서 데이터 분석 시스템 만들어나가기Wonha Ryu
 
KGC 2014 가볍고 유연하게 데이터 분석하기 : 쿠키런 사례 중심 , 데브시스터즈
KGC 2014 가볍고 유연하게 데이터 분석하기 : 쿠키런 사례 중심 , 데브시스터즈KGC 2014 가볍고 유연하게 데이터 분석하기 : 쿠키런 사례 중심 , 데브시스터즈
KGC 2014 가볍고 유연하게 데이터 분석하기 : 쿠키런 사례 중심 , 데브시스터즈Minwoo Kim
 
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017Amazon Web Services Korea
 
AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지
AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지
AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지Changje Jeong
 
2019.06 devgroud kurly-advanced analyticsteam-aboutourdataculture
2019.06 devgroud kurly-advanced analyticsteam-aboutourdataculture2019.06 devgroud kurly-advanced analyticsteam-aboutourdataculture
2019.06 devgroud kurly-advanced analyticsteam-aboutourdataculture상래 노
 
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석Amazon Web Services Korea
 
Webservice cache strategy
Webservice cache strategyWebservice cache strategy
Webservice cache strategyDaeMyung Kang
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유Hyojun Jeon
 
추천서비스고군분투기 On Aws - 박진우 (레코벨)
추천서비스고군분투기 On Aws - 박진우 (레코벨)추천서비스고군분투기 On Aws - 박진우 (레코벨)
추천서비스고군분투기 On Aws - 박진우 (레코벨)AWSKRUG - AWS한국사용자모임
 
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축Juhong Park
 
AWS 활용한 Data Lake 구성하기
AWS 활용한 Data Lake 구성하기AWS 활용한 Data Lake 구성하기
AWS 활용한 Data Lake 구성하기Nak Joo Kwon
 
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017Amazon Web Services Korea
 
Spark machine learning & deep learning
Spark machine learning & deep learningSpark machine learning & deep learning
Spark machine learning & deep learninghoondong kim
 
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...Amazon Web Services Korea
 
Spark+Cassandra Data pipeline optimazation at recommend system for recommend ...
Spark+Cassandra Data pipeline optimazation at recommend system for recommend ...Spark+Cassandra Data pipeline optimazation at recommend system for recommend ...
Spark+Cassandra Data pipeline optimazation at recommend system for recommend ...SuseongPark
 
DataWorks Summit 2017
DataWorks Summit 2017DataWorks Summit 2017
DataWorks Summit 2017Daesung Park
 
빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)Channy Yun
 
100% Serverless big data scale production Deep Learning System
100% Serverless big data scale production Deep Learning System100% Serverless big data scale production Deep Learning System
100% Serverless big data scale production Deep Learning Systemhoondong kim
 
데이터드리븐 DX 추진방안_202306.pdf
데이터드리븐 DX 추진방안_202306.pdf데이터드리븐 DX 추진방안_202306.pdf
데이터드리븐 DX 추진방안_202306.pdfYunjeong Susan Hong
 
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018Amazon Web Services Korea
 

Similar to [AWSKRUG] 데이터 얼마까지 알아보셨어요? (20)

NDC 2016, [슈판워] 맨땅에서 데이터 분석 시스템 만들어나가기
NDC 2016, [슈판워] 맨땅에서 데이터 분석 시스템 만들어나가기NDC 2016, [슈판워] 맨땅에서 데이터 분석 시스템 만들어나가기
NDC 2016, [슈판워] 맨땅에서 데이터 분석 시스템 만들어나가기
 
KGC 2014 가볍고 유연하게 데이터 분석하기 : 쿠키런 사례 중심 , 데브시스터즈
KGC 2014 가볍고 유연하게 데이터 분석하기 : 쿠키런 사례 중심 , 데브시스터즈KGC 2014 가볍고 유연하게 데이터 분석하기 : 쿠키런 사례 중심 , 데브시스터즈
KGC 2014 가볍고 유연하게 데이터 분석하기 : 쿠키런 사례 중심 , 데브시스터즈
 
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
 
AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지
AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지
AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지
 
2019.06 devgroud kurly-advanced analyticsteam-aboutourdataculture
2019.06 devgroud kurly-advanced analyticsteam-aboutourdataculture2019.06 devgroud kurly-advanced analyticsteam-aboutourdataculture
2019.06 devgroud kurly-advanced analyticsteam-aboutourdataculture
 
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
 
Webservice cache strategy
Webservice cache strategyWebservice cache strategy
Webservice cache strategy
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
 
추천서비스고군분투기 On Aws - 박진우 (레코벨)
추천서비스고군분투기 On Aws - 박진우 (레코벨)추천서비스고군분투기 On Aws - 박진우 (레코벨)
추천서비스고군분투기 On Aws - 박진우 (레코벨)
 
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
 
AWS 활용한 Data Lake 구성하기
AWS 활용한 Data Lake 구성하기AWS 활용한 Data Lake 구성하기
AWS 활용한 Data Lake 구성하기
 
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017
 
Spark machine learning & deep learning
Spark machine learning & deep learningSpark machine learning & deep learning
Spark machine learning & deep learning
 
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
 
Spark+Cassandra Data pipeline optimazation at recommend system for recommend ...
Spark+Cassandra Data pipeline optimazation at recommend system for recommend ...Spark+Cassandra Data pipeline optimazation at recommend system for recommend ...
Spark+Cassandra Data pipeline optimazation at recommend system for recommend ...
 
DataWorks Summit 2017
DataWorks Summit 2017DataWorks Summit 2017
DataWorks Summit 2017
 
빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)
 
100% Serverless big data scale production Deep Learning System
100% Serverless big data scale production Deep Learning System100% Serverless big data scale production Deep Learning System
100% Serverless big data scale production Deep Learning System
 
데이터드리븐 DX 추진방안_202306.pdf
데이터드리븐 DX 추진방안_202306.pdf데이터드리븐 DX 추진방안_202306.pdf
데이터드리븐 DX 추진방안_202306.pdf
 
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
 

More from Yan So

트위터의 추천 시스템 파헤치기
트위터의 추천 시스템 파헤치기트위터의 추천 시스템 파헤치기
트위터의 추천 시스템 파헤치기Yan So
 
AWSKRUG 데이터 엔지니어가 실무에서 맞닥뜨리는 문제들
AWSKRUG 데이터 엔지니어가 실무에서 맞닥뜨리는 문제들AWSKRUG 데이터 엔지니어가 실무에서 맞닥뜨리는 문제들
AWSKRUG 데이터 엔지니어가 실무에서 맞닥뜨리는 문제들Yan So
 
AWS Retail & CPG Day - Yan So
AWS Retail & CPG Day - Yan SoAWS Retail & CPG Day - Yan So
AWS Retail & CPG Day - Yan SoYan So
 
사이드 프로젝트로 알아보는 검색 서비스 개발 - 이주경
사이드 프로젝트로 알아보는 검색 서비스 개발 - 이주경사이드 프로젝트로 알아보는 검색 서비스 개발 - 이주경
사이드 프로젝트로 알아보는 검색 서비스 개발 - 이주경Yan So
 
데이터가 흐르는 팀 만들기 - 정원희
데이터가 흐르는 팀 만들기 - 정원희데이터가 흐르는 팀 만들기 - 정원희
데이터가 흐르는 팀 만들기 - 정원희Yan So
 
Brightics Studio 발표자료 AWSKRUG 염성욱
Brightics Studio 발표자료 AWSKRUG 염성욱Brightics Studio 발표자료 AWSKRUG 염성욱
Brightics Studio 발표자료 AWSKRUG 염성욱Yan So
 
전혀 새로운 방법의 데이터 탐색 - 김민수 (Tableau)
전혀 새로운 방법의 데이터 탐색 - 김민수 (Tableau)전혀 새로운 방법의 데이터 탐색 - 김민수 (Tableau)
전혀 새로운 방법의 데이터 탐색 - 김민수 (Tableau)Yan So
 
MWC Shanghai 2018 톺아보기
MWC Shanghai 2018 톺아보기MWC Shanghai 2018 톺아보기
MWC Shanghai 2018 톺아보기Yan So
 
R과 Sagemaker를 활용한 딥러닝 어플리케이션 만들기
R과 Sagemaker를 활용한 딥러닝 어플리케이션 만들기R과 Sagemaker를 활용한 딥러닝 어플리케이션 만들기
R과 Sagemaker를 활용한 딥러닝 어플리케이션 만들기Yan So
 

More from Yan So (9)

트위터의 추천 시스템 파헤치기
트위터의 추천 시스템 파헤치기트위터의 추천 시스템 파헤치기
트위터의 추천 시스템 파헤치기
 
AWSKRUG 데이터 엔지니어가 실무에서 맞닥뜨리는 문제들
AWSKRUG 데이터 엔지니어가 실무에서 맞닥뜨리는 문제들AWSKRUG 데이터 엔지니어가 실무에서 맞닥뜨리는 문제들
AWSKRUG 데이터 엔지니어가 실무에서 맞닥뜨리는 문제들
 
AWS Retail & CPG Day - Yan So
AWS Retail & CPG Day - Yan SoAWS Retail & CPG Day - Yan So
AWS Retail & CPG Day - Yan So
 
사이드 프로젝트로 알아보는 검색 서비스 개발 - 이주경
사이드 프로젝트로 알아보는 검색 서비스 개발 - 이주경사이드 프로젝트로 알아보는 검색 서비스 개발 - 이주경
사이드 프로젝트로 알아보는 검색 서비스 개발 - 이주경
 
데이터가 흐르는 팀 만들기 - 정원희
데이터가 흐르는 팀 만들기 - 정원희데이터가 흐르는 팀 만들기 - 정원희
데이터가 흐르는 팀 만들기 - 정원희
 
Brightics Studio 발표자료 AWSKRUG 염성욱
Brightics Studio 발표자료 AWSKRUG 염성욱Brightics Studio 발표자료 AWSKRUG 염성욱
Brightics Studio 발표자료 AWSKRUG 염성욱
 
전혀 새로운 방법의 데이터 탐색 - 김민수 (Tableau)
전혀 새로운 방법의 데이터 탐색 - 김민수 (Tableau)전혀 새로운 방법의 데이터 탐색 - 김민수 (Tableau)
전혀 새로운 방법의 데이터 탐색 - 김민수 (Tableau)
 
MWC Shanghai 2018 톺아보기
MWC Shanghai 2018 톺아보기MWC Shanghai 2018 톺아보기
MWC Shanghai 2018 톺아보기
 
R과 Sagemaker를 활용한 딥러닝 어플리케이션 만들기
R과 Sagemaker를 활용한 딥러닝 어플리케이션 만들기R과 Sagemaker를 활용한 딥러닝 어플리케이션 만들기
R과 Sagemaker를 활용한 딥러닝 어플리케이션 만들기
 

[AWSKRUG] 데이터 얼마까지 알아보셨어요?

  • 1. Copyright ⓒ rainist . All rights reserved 데이터, 얼마까지 알아보고 오셨어요? Lake에서 Mart까지 데이터 엔지니어 김태일
  • 2. 2 시작하기 전에... 오늘 다루는 내용 ● AWS 서비스들을 이용해서 데이터 레이크와 마트를 구현한 방법 ● DB에 저장되는 데이터를 S3에 쌓는 방법 ● 데이터 엔지니어의 흔한 삽질 과정 오늘 다루지 않을 내용 ● 모니터링이나 HA ● 데이터 인프라의 정답
  • 3. 3 뱅크샐러드 금융 데이터를 한 곳에 모아 개인화된 종합 자산 관리를 제공하는 금융 서비스
  • 5. 01 02 03 04 목차 INDEX 기존의 Data Infra Data Lake Data warehouse Data Mart 옛날 옛날 한 옛날에... 데이터 가공하기 데이터 납품하기 데이터 퍼올리기
  • 6. 옛날 옛날 한 옛날에 ... 기존의 Data Infra 01
  • 7. 7 데이터 팀이 생겼다! 옛날 옛날 한 옛날에... 야생의 Data Engineer이(가) 채용되었다! 아...몇몇 분석들은 데 이터가 없어서…. 카테고리 고도화, 뱅크샐러드 평균 계좌 잔액, 평균 카드 사용 금액, 연동된 상품 개수, 데모그래픽별 연동 현황 분석 해 주세요!
  • 8. 8 데이터 팀이 생겼다! 옛날 옛날 한 옛날에... 데이터, 유혈사태, 성공적 카테고리 고도화, 뱅크샐러드 평균 계좌 잔액, 평균 카드 사용 금액, 연동된 상품 개수, 데모그래픽별 연동 현황 분석 해 주세요!
  • 9. 9 데이터 인프라가 있긴 있었는데…. ‘금융 비서’라는 서비스를 제공하기 위해 사용자의 데이터를 기반으로 계산이 필요 데이터팀은 계산 전에 모인 데이터를 이용하여 분석을 시작했습니다. 옛날 옛날 한 옛날에...
  • 10. 10 데이터 인프라가 있긴 있었는데…. 옛날 옛날 한 옛날에... 카드 DB 예금 DB 보험 DB 증권 DB id : 12345, card : [ card1, card2 ], account : [ account1 account2 ], insurance : [ insurance1 ], stock : [ stock1 ] id : 12345
  • 11. 11 데이터 인프라가 있긴 있었는데…. 옛날 옛날 한 옛날에... 사용자의 데이터는 MongoDB에 차곡차곡 쌓이고,
  • 12. 12 데이터 인프라가 있긴 있었는데…. 옛날 옛날 한 옛날에... 사용자의 데이터는 MongoDB에 차곡차곡 쌓이고, Production과 Development는 당연히 분리가 되어 있었지만, Production Development
  • 13. 13 데이터 인프라가 있긴 있었는데…. 옛날 옛날 한 옛날에... 사용자의 데이터는 MongoDB에 차곡차곡 쌓이고, Production과 Development는 당연히 분리가 되어 있었지만, 분석용 DB가 없어요…..
  • 14. 14 데이터 추출을 해보자! Production에 조심스럽게 쿼리를 날려봅니다. 옛날 옛날 한 옛날에...
  • 15. 15 데이터 추출을 해보자! Production에 조심스럽게 쿼리를 날려봅니다. 1. 복잡한 쿼리를 조심스럽게 날려본다. 옛날 옛날 한 옛날에...
  • 16. 16 데이터 추출을 해보자! Production에 조심스럽게 쿼리를 날려봅니다. 1. 복잡한 쿼리를 조심스럽게 날려본다. 2. 앗, Index가 걸려있지 않다?! 옛날 옛날 한 옛날에...
  • 17. 17 데이터 추출을 해보자! Production에 조심스럽게 쿼리를 날려봅니다. 1. 복잡한 쿼리를 조심스럽게 날려본다. 2. 앗, Index가 걸려있지 않다?! 3. IOPS가 상승한다?! 옛날 옛날 한 옛날에...
  • 18. 18 데이터 추출을 해보자! Production에 조심스럽게 쿼리를 날려봅니다. 1. 복잡한 쿼리를 조심스럽게 날려본다. 2. 앗, Index가 걸려있지 않다?! 3. IOPS가 상승한다?! 4. ????? 옛날 옛날 한 옛날에...
  • 19. 19 데이터 추출을 해보자! Production에 조심스럽게 쿼리를 날려봅니다. 1. 복잡한 쿼리를 조심스럽게 날려본다. 2. 앗, Index가 걸려있지 않다?! 3. IOPS가 상승한다?! 4. ????? 5. PROFIT!!!?! 옛날 옛날 한 옛날에...
  • 20. 20 데이터 추출을 해보자! Production에 조심스럽게 쿼리를 날려봅니다. 1. 복잡한 쿼리를 조심스럽게 날려본다. 2. 앗, Index가 걸려있지 않다?! 3. IOPS가 상승한다?! 4. ????? 5. PROFIT!!!?!.......이 아닌 DB 장애 옛날 옛날 한 옛날에... 실제로 서비스 장애가 일어났었다고…..합니다 …..
  • 21. 21 데이터 추출을 해보자! - 희망(AWS)편 그렇다면 어떻게 해야 원하는 데이터를 빠르고 편하게 그리고 안전하게 뽑을 수 있을까? 옛날 옛날 한 옛날에...
  • 22. 22 데이터 추출을 해보자! - 희망(AWS)편 그렇다면 어떻게 해야 원하는 데이터를 빠르고 편하게 그리고 안전하게 뽑을 수 있을까? 옛날 옛날 한 옛날에... 먼저 스키마를 정의 하면 테이블처럼 쿼리를 실행할 수 있어!
  • 23. 23 데이터 추출을 해보자! - 절망(현실)편 MongoDB는 NoSQL document base DB RDB에서 얘기하는 Column의 개념이 다름 옛날 옛날 한 옛날에... - 카드 - 카드사 - 카드사 id - 카드사 명 - 카드 명 - 발급일 - 만료일 - 예금 . . . 사용자 자산 데이터
  • 24. 24 데이터 추출을 해보자! - 절망(현실)편 기존 데이터 스키마 += 새로운 자산 타입 스키마 옛날 옛날 한 옛날에... - 카드 - 카드사 - 카드사 id - 카드사 명 - 카드 명 - 발급일 - 만료일 - 예금 . . . 사용자 자산 데이터 - 배포 전 - 카드 - 카드사 - 카드사 id - 카드사 명 - 카드 명 - 발급일 - 만료일 - 예금 - 보험 - 보험사 - 보험사 id - 보험사 명 - 연금 . . . 사용자 자산 데이터 - 배포 후
  • 25. 25 고민은 깊어져 가고... Athena 테이블로 분석 환경을 제공하기 위해서는 스키마가 필요 옛날 옛날 한 옛날에...
  • 26. 26 고민은 깊어져 가고... Athena 테이블로 분석 환경을 제공하기 위해서는 스키마가 필요 옛날 옛날 한 옛날에... 그냥 json인데 뭐~ 매번 배포 할 때마다 바뀌는 거야!
  • 27. 27 고민은 깊어져 가고... Athena 테이블로 분석 환경을 제공하기 위해서는 스키마가 필요 옛날 옛날 한 옛날에... 그냥 json인데 뭐~ 매번 배포 할 때마다 바뀌는 거야! 매번 스키마 수정하자니 넘나 귀찮...
  • 28. 28 다시 데이터 추출을 해보자! - 희망(AWS)편 그렇다면 어떻게 해야 매번 스키마 변경에 대해 손으로 일일이 수정하지 않을 수 있을까? 옛날 옛날 한 옛날에... AWS Glue
  • 29. 29 다시 데이터 추출을 해보자! - 희망(AWS)편 그렇다면 어떻게 해야 매번 스키마 변경에 대해 손으로 일일이 수정하지 않을 수 있을까? 옛날 옛날 한 옛날에... 편- 안
  • 30. 30 데이터를 원하는 자 나를 넘어 가라 옛날 옛날 한 옛날에...
  • 31. 31 고객의 요구 - 뱅크샐러드를 통해 저장되는 여러 데이터를 원활하게 분석하고 싶음 - 가공된 데이터를 서비스에 적용하고 싶음 - 여러 서비스에서 다양한 지표들을 보고 싶음 옛날 옛날 한 옛날에... 한계 - 모든 데이터를 한번에 다 적재할 수는 없음 - 보안상의 문제가 되는 데이터는 보안팀 검토 + 암호화 등이 필요 - Seoul region에서 제공되는 서비스만 사용 가능 😭 - 해달라는 대로 다 해주면 읍읍…….
  • 32. 32 전체 인프라 구조 옛날 옛날 한 옛날에...
  • 34. 34 데이터 레이크? 데이터 퍼올리기 Structured data Unstructured data Semi-structured data
  • 35. 35 뱅크샐러드 데이터 레이크 데이터 퍼올리기 Banksalad backend services
  • 36. 36 의 정체 - Change Data Capture (CDC) - DB에 저장된 데이터를 복제/백업 등의 목적으로 사용되는 Design Pattern - Data warehouse를 만드는데도 사용 데이터 퍼올리기 C R U D binlog oplog
  • 37. 37 MySQL의 경우 - binlog를 이용해서 데이터를 tracking 데이터 퍼올리기
  • 38. 38 MongoDB의 경우 Change Stream - 3.6 이상에서 동작 - DB에 부하를 주지 않음 (oplog를 follow하지 않음) 데이터 퍼올리기
  • 39. 39 실시간 적재를 위한 선택 - Lake에는 실시간(nearly realtime)으로 데이터가 적재되도록 함 - 급하게 최신 데이터를 추출해야 하는 경우 - 서비스단의 오류를 검출하고자 하는 경우 (거의 없음) 데이터 퍼올리기 - Kinesis Stream - Kinesis Firehose - Kinesis Analytics
  • 40. 40 Amazon Kinesis Stream Amazon Kinesis Data Streams를 사용하여 대규모 데이터 레코드 스트림을 실시간으로 수집하고 처리할 수 있습니다. 데이터 퍼올리기
  • 41. 41 Amazon Kinesis Firehose 데이터 퍼올리기 Transform data with Lambda Format converting Compression Encryption 데이터를 S3, Redshift, Elasticsearch(Amazon ES) 및 Splunk 등의 대상으로 전송하기 위한 완전 관리형 서비스입니다.
  • 42. 42 만능 Kinesis firehose...but? 데이터 퍼올리기 Data lake는 Schema가 변경되어도 온전히 raw data를 보존하기 위함 압축은 gzip으로 최대한 압축해서 보관
  • 45. 45 데이터 웨어하우스? 데이터 가공하기 Data Warehouse ETL CRM ERP Operational System
  • 46. 46 뱅크샐러드의 데이터 웨어하우스 데이터 가공하기 말하자면, 호수에서 하는 가두리양식
  • 47. 47 뱅크샐러드 데이터 웨어하우스 - 데이터 레이크에 쌓이는 양이 많으므로 EMR로 처리해서 S3에 적재 - 데이터의 타입에 따라 일단위, 월단위로 웨어하우스 생성 주기를 다르게 가짐 - Row base에서 Column base로 포맷 변경 - 데이터 정형화 데이터 가공하기
  • 48. 48 웨어하우스 생성을 위한 선택 Amazon Elastic Map-Reduce(EMR) AWS에서 Apache Hadoop 및 Apache Spark와 같은 빅 데이터 프레임워크 실행을 간소화하는 관 리형 클러스터 플랫폼 데이터 가공하기
  • 49. 49 데이터 가공하기 - 첫번째 생성에 한하여 기존 DB 데이터가 필요 - 차회부터는 데이터 웨어하우스 + 데이터 레이크 = 데이터 웨어하우스 데이터 가공하기 Data warehouse origin Insert Update Delete Data warehouse new
  • 50. 50 데이터 가공하기 - 첫번째 생성에 한하여 기존 DB 데이터가 필요 - 차회부터는 데이터 웨어하우스 + 데이터 레이크 = 데이터 웨어하우스 ex) 매일생성되는 warehouse의 경우 데이터 가공하기 6/11 Warehouse Lake 6/12 6/13 CUD operations
  • 53. 53 데이터 마트? - 고객의 니즈에 맞춰 마트를 디자인 - 하나의 주제에 대해서 마트를 생성 데이터 납품하기 Data warehouse 사용자 은행 계좌 관련 Data mart 사용자 신용 등급 관련 Data mart 사용자 연금 관련 Data mart 사용자 카드 사용 관련 Data mart
  • 54. 54 마트 생성 프로세스 데이터 납품하기 사용자 별로 소유하고 있는 카드 당 매달 사용금액을 보고 싶어 요. 음...그럼 이런이런 데 이터가 필요하겠군! 만들어 주세요! Data lake 생성 Data warehouse 생성 Data mart 생성
  • 55. 55 하지만, 가까운 미래 140000000162개의 미래를 보고왔다. 데이터 납품하기
  • 56. 56 하지만, 가까운 미래 데이터 납품하기 네...네?!이 마트 데이터가 이상해요 ! 고쳐주쎼요! 데이터 줘!! 저희에게 시간과 예산을 더 주시 면... ?!??!!?! 데이터의 가치 하락 or 서비스 장 애
  • 58. 58 마트 생성 프로세스 데이터 납품하기 쉬운 스케쥴 관리 쉬운 디버깅 쉬운 코드 수정
  • 59. 59 데이터의 분석은? - Glue crawler를 통해 테이블 생성 - Athena를 이용하여 쿼리로 데이터 분석 - Sagemaker notebook을 통해 데이터 모델링 마무리
  • 61. 61 앞으로는 무엇이 남았을까? - 실시간 분석 및 실시간 서비스 제공 - 좀 더 저렴한 방법 - 비 개발자도 쉽게 사용이 가능하도록 BI와의 연동 마무리