SlideShare a Scribd company logo
• 여정의 시작
• 인프라 편
• 로그 편
• 대용량 데이터 편
• 서비스 편
• 마치며
전득진 (Jeon, DeukJin)
dj.jeon@sk.com
Data Platform 팀
추천 담당 / Search Center
주식회사 11번가
• 18년차 Software Engineer
• ’18.5 : SK Planet
• ‘18.9.1 : 11번가
2018년 6월 19일/20일 기사
‘18.8월 DI TF 결성
• Mission - 11번가 Data Infra를 구축하라!
• Full Time 3명 / Part Time 3명
• 10월 SK Planet 판교 사옥, DIC팀과 동거 시작
신속 & 효율적
SKP DIC
Clone
11st DIC
Mission
• SKP DIC 현황 파악 및 Data Infra 구축 계획 수립
:: 첨부자료 - 우주왕복선 Endeavour 호 (’노력’). 1992년 5월 ~. 2011년 6월.
Mission
• 구성원들이 구비한 경력과 기술에 따라 3가
지 업무로 분할
• 인프라 구축
• 데이터 입수 파이프라인 구축
• 대용량 데이터 마이그레이션
데이터
마이그레이션
(F/T 1)
•Hive Table / HDFS
•RDBMS Table / Hive Meta
•NoSQL DB
데이터 입수
(P/T 3)
•User Log
•System Log
•DB Data
인프라
(F/T 1)
•Hardware
•Software
- Hadoop eco system
(F/T 1)
데이터 인프라 구축
• DI TF 결성 : 2018년 8월. Full Time 3명, Part Time 3명
• DIC 구축 : 12월~2019년 2월. 하둡 인프라 + 데이터 수집 인프라 + 데이터 분석/관리 SW (In-House 개발 S/W)
• 데이터 마이그레이션 : 3월. 10 PB
• 서비스 마이그레이션 : 4월. 추천 플랫폼, BI 시스템, Log2.0, Ad Platform, Search Platform, Web Scouter, …
• Yarn 클러스터 메모리 증설 : 5월
• SKP DIC 사용계약 2개월 조기 종료 : 6월 à 4월
9월 10월 11월 12월 ’19년 1월 2월 3월 4월 5월
DI TF 결성 -
DIC 구축 계획, 규모산정,
설계
DIC 구축
(인프라 + 입수 파이프
라인)
데이터 마이그레이션
서비스 마이그레이션
Yarn 메모리 증설
: 4월 13(증설 요청)
5/14~5/28 (증설 완료)
SKP DIC 사용계약 조기
종료 : 2개월. 6월 à 4월
추천, BI, Ad, Log2.0
SKP DIC 사용계약
메모리 증설
SKP DIC 분석, 규모산정, 설계, Pilot 구성
하둡Infra + 데이터 SW + 데이터 수집 인프라
Full Mig.
계약
조기종료
메모리 구매
Incremental Mig.
Sources 수집 가공 (분석)
저장
User
Server
DB
Sentinel
Rake
Mirrormaker
Kafka
Collector
Oggre
제공
DW
Hive
OLAP
Druid
NoSQL
HBase
Data
Service
BI System
Reco
Seller
Analytics
ICT Family
Yarn-RT
Yarn-DI
Yarn-mini
Query / ML / DL
HDFS-DIC
HDFS-DSC
Batch RealTime
Cache
Redis
Search
Query
Engine
Ad
A/B Test
ICT Family
Logagent
Hardware
• Architecture
Hardware
• Total 1K 노드
• HDFS : 3 cluster
• DI : 공용 저장소 35 PB
• MSM (Hbase) : 추천 전용 저장소
• PIE : 실험 클러스터
• Yarn : 4 cluster 21K vcore / 125 TB vmem
• DI : 공용 연산노드
• RT : 실시간 스트림 수집 노드
• ETL : 배치 잡 노드 수행
• mini : DB Import 용 Sqoop 수행 노드
• PIE : 실험 클러스터
SKP
• Total 400 노드
• HDFS : 3 cluster
• DI : 공용 저장소 15 PB
• DSC (Hbase) : 추천 전용 저장소
• Yarn : 4 cluster 11K vcore / 85 TB vmem
• DI : 공용 연산 노드
• RT : 실시간 + 배치 잡 수행 노드
• mini : DB Import 용 Sqoop 수행 노드
11st
Ingestion Processing
Storage
Sentinel
Rake
Kafka
Mirrormaker
Kafka
Collector
Oggre
Serving
DW
Hive
OLAP
Druid
NoSQL
HBase
Yarn-RT
Yarn-DI
Yarn-mini
Query / ML / DL
HDFS-DIC
HDFS-DSC
Batch RealTime
Cache
Redis
Query
/Storage
Engine
Logagent
Diet. Diet.
노드 = 1000 ea : 400 ea
가용량 = 35PB : 15PB
사용량 = 18PB : 9PB
Hardware
Yarn Cluster 메모리 증설
• Yarn Cluster 메모리 부족 이슈 : 4월 중순 (issue-rasing). ’19. 5월 말 (증설 완료)
• 현상 : Batch Job 및 Spark ML Job 들이 실패함
• 원인 분석
• 워크로드 대비 부족한 자원
• SKP에서 11번가 BM이 리소스의 70% 소비하였으나, 실제 구성된 리소스는 20%, 50% 이하
• 분사에 따른 전기간 소급 적용 배치 증가 + Data 량 증가에 따른 쿼리 워크로드 + 신규 Machine Learning Job 추가
Yarn Cluster SKP 11st (as-was) 11st (as-is)
DI 89 TB 16 TB 58.5 TB
RT 35 TB 16 TB 24.8 TB
mini 1.2 TB 1.75 TB 1.75 TB
Yarn Queue Calibration (allocation)
• Fair Scheduler
Software
SK Planet
Data
Product
관리도구 • Ganglia / Zabbix / ELK / Grafana
• Medic / Scrooge / Probe / CMS
• Insomnia / Collector UI / Timebomb
• Hue
분석도구 • Galleon / Barrel / Boat(GPU) / Cuckoo
• R Studio / Jupyter / Zeppelin
입수도구 • Sentinel / Rake / Logagent / Collector
• Oggre / Sqoop / Oozie / Pig
• Kafka / Mirrormaker
Processing 쿼리엔진 • Hive 1.1
eda-oa / eda-svdi / etl / qc
• Hive 2.1
eda-oa / eda-svdi / etl / qc / LLAP
In-Memory
쿼리엔진
• Presto / Impala
• Spark 1.6~2.2
Yarn • DI / RT / ETL / mini
(MR / TEZ)
Storage HDFS • DI
• MSM
Hbase / Phoenix • MSM
Kudu • kudu 1.6
DB • MongoDB / Mysql / Oracle(OM/BI)
Cache • Redis
Etc Middleware • Nginx, Tomcat, RabbitMQ
Security • Lightsaber / Querycache / Sentrybox
• Sentry, Hive UDF (암복호화)
• KMS, IDMS, ActiveDirectory
11st
Data
Product
관리도구 • Ganglia / Zabbix / Grafana
• New Medic / Scrooge / Probe / CMS
• Insomnia / Collector UI / Timebomb
• Thanos / Thanos Frozen
• Hue / Airflow
분석도구 • Galleon / Barrel / Cuckoo
• R Studio / Jupyter / Zeppelin / Superset
입수도구 • Sentinel / Rake / Logagent / Collector
• Oggre / Sqoop / Oozie
• Kafka / Mirrormaker / Flume
Processing 쿼리엔진 • Hive 2.1
eda-oa / eda-svdi / etl / qc / LLAP
In-Memory
쿼리엔진
• Presto
• Spark 2.2
Yarn • DI / RT / mini
(MR / TEZ)
Storage HDFS • DI
• DSC(=MSM)
Hbase / Phoenix • DSC(=MSM)
DB • MongoDB / Mysql / Oracle(OM/BI)
Cache • Redis
Etc Middleware • Nginx, Tomcat, RabbitMQ
Security • Lightsaber / Querycache / Sentrybox
• Sentry, Hive UDF (암복호화)
• KMS, IDMS, ActiveDirectory
Software
• 방대한 솔루션
• 솔루션 체인
• 순환 의존성
QC ßà SentryBox
CMS Lock ßà Hive
Medic ßà Sentinel
데이터 입수 파이프라인 구축
• Overview
Server
DB
LogAgent
Oracle
Golden Gate
보라매 IDC
일산 IDC
OMDB OMDB Relay
MirrorMaker
Collector
Oggre
Sqoop
BIDB
rake
web/was
rake
client
Data Infra
Cluster
User
데이터 입수 파이프라인 구축
• Log / DB 데이터 수집 현황
데이터유형 수집데이터 수집대상 수집도구 일 수집량
User Log - log2.0 - pc web
- modile web
- app (ios, android)
rake client (in-house)
- android, ios, javascript
Rake WEB/WAS : 40ea (26/14)
1.4 T
Server Log - access log
- service log
- web server
- application server
Logagent (in-house) : 450ea
kafka : 13ea(보라매 3/ Alp3 / 일산7)
Collector : 6ea
29 T
DB Data - 업무 데이터 - Main DB
- BI DB
- AD DB
Oggre (in-house) : 2ea
Oozie : 2ea
Yarn-mini : 5ea
7 T
Oggre:209건
Sqoop:245건
데이터 입수 파이프라인 구축 - User Log
• App에서 로그 수집 서버 양측에 전송하는 방법 (X)
• 로그 수집 서버 한 곳에서 트래픽을 복제하여 전송하는 방법 (O)
• Nginx :: post_action : Traffic mirroring
• Origin : SKP
1. 11st 로그 입수 파이프라인을 구축
2. 신규 앱 배포 : 사용자 로그를 전송하는 End Point을 변경 (SKP à 11st)
• 로그를 양사 DIC로 송출 (Origin : SKP)
• 로그입수량을 대조
3. 로그를 양사 DIC로 송출 (Origin : SKP)
• 로그입수량을 대조
• 11st 내 로그입수 후 처리 로직을 완성 (마트생성 Workflow)
데이터 입수 파이프라인 구축 - User Log
• 구버전 앱 : SKP로 송출
• 신버전 앱 : 11st로 송출
• post_action
• Origin : SKP (11st로 트래픽 복제)
• Issue : 1% 트래픽 유실
User Log
1%
SKP (커머스 IDC)
Data Infra
Cluster
Collector
rake was
11st (일산 IDC)
Data Infra
Cluster
Collector
rake
web/was
post_action
(1% 유실)
old
rake client 데이터 복제
new
rake client
User Log
99%
데이터 입수 파이프라인 구축 - User Log
• post_action
• Origin : 11st (SKP로 트래픽 복제)
User Log
99%
SKP (커머스 IDC)
Data Infra
Cluster
Collector
rake was
11st (일산 IDC)
Data Infra
Cluster
Collector
rake
web/was
post_action
old
rake client 데이터 복제
new
rake client
User Log
1%
데이터 입수 파이프라인 구축 - User Log
• 구버전 앱 트래픽 1% : 강제 업데이트
• post_action
• Traffic mirroring 제거
• SKP로 로그 송출 중단
User Log
99.9%
SKP (커머스 IDC)
Data Infra
Cluster
Collector
rake was
11st (일산 IDC)
Data Infra
Cluster
Collector
rake
web/was
old
rake client 데이터 복제
new
rake client
User Log
0.1%
post_action 제거
데이터 입수 파이프라인 구축 - System Log
• Logagent
• 보라매IDC, 일산IDC 양분
• Mirrormaker
• 보라매 Kafka à MirrorMaker à 일산 Kafka à Collector à HDFS
Server LogAgent
보라매 IDC
일산 IDC
Data
Platform
MirrorMaker
Collector
Migration Plan
마이그레이션 대상 선별
- 이관 대상 : 계정/Hive DB/HDFS 목록
효율화 대상 선정
- Hive DB별 삭제 대상/ 보관주기 대상/ 유지 대상 목록
재암호화 대상 점검
마이그레이션 시나리오 수립
- 마이그레이션 프로세스 공지 및 설명회
마이그레이션 수행
Migration Scenario
Migration Scenario
Migration
• 마이그레이션 대상 식별 : 전체 33PB
• 데이터 Owner 대상 설명회 수행 => 전수 조사 / 사용 여부 조사
• 적극적인 참여로
• 11st 데이터만 16PB --> 10PB (40% 효율화 성공)
30PB
16PB 10PB
Migration
• 마이그레이션 대상별 진행방식 :
• HDFS + Hive : inter cluster distcp
• Druid
• Mysql : dump & import
• MongoDB : dump & import
• Hbase : raw data 기반으로 재 적재
• Redis : Hbase 기반으로 재 적재
• HDFS만 10PB : cluster간 Network Bandwidth = 40G
• 이론적 복제 시간 : 432TB(1day) * 80%(buffer) = 350TB
• 주요 업무시간 제외한 나머지 12시간 복제 시 소요 기간
3333TB(Usable) / 175TB(12시간) = 19일 + 5일(buffer)
• 실제 복제 기간 : 240TB(1day) = 약 14일 소요
전용선 연결 구조
SKP 11st
Migration
• 재 암호화 : SKP decrypt : flat data à distcp : 11st encrypt
• 고려사항 및 어려웠던 점
• One mapper per file : 하나의 파일에 쓰기 작업 매퍼가 두개 이상 접근하면 오류 발생
• distcp process중 source file이나 destination의 file 변경 일어나면 fail 발생할 수 있음
• 복제 시 block size 보존을 권장, version이 다른 경우 목적지에서 distcp를 수행함
• 11st 클러스터에서 복사하는 경우SKP의 workload를 제거할 수 있으나 (pull방식)
audit 로그를 남기기 위하여 SKP 클러스터에서 distcp를 수행함 (push방식)
• Incremental distcp X : 너무 많은 tiny job overhead à 디렉토리 단위별 단순 distcp 수행
• 네트웍 대역폭을 고려한 설정 : bandwidth 10MB/s per mapper : 전체 mapper 500
• 수십만개 파일변환으로 인한 distcp 재 작업 : non orc à orc
• Permission Error (during Query Execution)
• 모든 파티션 파일에 Owner (UID) / Group (GID) 를 일치
1 복호화
2 테이블 단위
파티션 복사
3 암호화
SKP 11st
Migration
• 데이터 거버넌스 - Thanos Project (저장소 효율화)
• ‘19년 9월 사용률 - 12.8/14.83 PB : 86%, 3월 9.6PB 시작 : 64%
• 월 0.3PB 증가 à 2달 후 90% 도달
“When I’m done, half of DATA will still exist.
Perfectly balanced, as all things should be.”
Migration
• 데이터 거버넌스 - Thanos Project (저장소 효율화)
• 데이터 압축 / 보관주기 관리 / 중단 서비스 데이터 폐기
• ‘19년 9월 사용률 (12.8/14.83 PB : 86%, 3월 9.6PB : 64% 시작)
As-Was (9월초)
→
DLM 적용 (10월)
→
DLM Frozen 적용 (11월 예정)
12.8 PB 사용률 85.62% 9 PB 사용률 60% : 삭제 용량 3.8 PB
이상 (9/26 기준)
8 PB 사용률 54% : 삭제용량 1PB
(추정)
2020년도 저장소 증설 0
= 약 6억 절약 (30대)
•2020년 10월 예상 사이즈 (월 증가량 0.3 PB)
DLM 적용 후 : 9 + 3.6 = 12.6 PB (85%)
DLM Frozen 적용 후 : 8 + 3.6 = 11.6 PB (78.2%)
Compression
Retention
Cycle
(purge)
Freezing
Migration
‘19 10월
access로그
22%
정보계(BI)
17%
광고
16%
추천
16%
검색
11%
로그2.0
8%
운영계(OM)
3%
기타
7%
구분 TB size
access로그 2037.54
정보계(BI) 1580.56
광고 1521.75
추천 1500.71
검색 996.60
로그2.0 699.57
운영계 (OM) 229.92
기타 687.92
합계 9254.57
사용 비율
9.25 / 14.83 PB (62.3%)
Asset
보라매 IDC 일산 IDC
364ea 86ea
Size Used Available Used%
14.83 PB 9.25 PB 4.85 PB 62.3%
보라매 IDC kafka 일산 IDC Kafka
53 topic (3 broker) 63 topic (7 broker)
hourly daily weekly monthly total
30 380 13 13 436
• 스토리지 사이즈
• 테이블 : 4,317 ea
• 배치잡 : 436 ea
• Logagent : 450 ea
• Kafka Topic : 111 ea
서비스 연동
• BI 리포트
• Data Source
• BIDB
• Hive : Log2.0 + 검색 AccessLog
• Solution
• MicroStrategy + Tableau
• Batch Job
• ETL DAG => Oozie Sqoop + Oozie Hive + Oozie Spark
ETL DAG
Job1
ODS
Job2
DW
Job3
Data Mart
Job4
BI Report
서비스 연동
• 추천 서비스
• Data Source
• HDFS + Hive
• Hbase + Phoenix : 자체 적재
• Redis : 자체 적재
• Realtime Job : Flink + Spark Streaming
• Batch Job : Spark ML + Hive
• Platform
• 추천 엔진
• 추천 서버(서빙)
• LogHub
Service Log
적재
추천용
데이터 ETL
OMDB BIDB
추천 엔진
Service
Repository
(ES / MySQL)
Cache /
Realtime
repository
App Push
추천 Server
새로운 여정 2020
Special Thanks
• 11번가
• System Engineering 팀 / Service Engineering 팀
• Platform Engineering 팀 / IT 팀
• SK Planet
• Data Infrastructure팀

More Related Content

What's hot

AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020 AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWSKRUG - AWS한국사용자모임
 
Aws glue를 통한 손쉬운 데이터 전처리 작업하기
Aws glue를 통한 손쉬운 데이터 전처리 작업하기Aws glue를 통한 손쉬운 데이터 전처리 작업하기
Aws glue를 통한 손쉬운 데이터 전처리 작업하기
Amazon Web Services Korea
 
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
Amazon Web Services Korea
 
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
SANG WON PARK
 
AWS 고객이 주로 겪는 운영 이슈에 대한 해법-AWS Summit Seoul 2017
AWS 고객이 주로 겪는 운영 이슈에 대한 해법-AWS Summit Seoul 2017AWS 고객이 주로 겪는 운영 이슈에 대한 해법-AWS Summit Seoul 2017
AWS 고객이 주로 겪는 운영 이슈에 대한 해법-AWS Summit Seoul 2017
Amazon Web Services Korea
 
ここから始めるAWSセキュリティ
ここから始めるAWSセキュリティここから始めるAWSセキュリティ
ここから始めるAWSセキュリティ
Amazon Web Services Japan
 
Lessons learned from running Spark on Docker
Lessons learned from running Spark on DockerLessons learned from running Spark on Docker
Lessons learned from running Spark on Docker
DataWorks Summit
 
AWS Cloud 환경으로​ DB Migration 전략 수립하기
AWS Cloud 환경으로​ DB Migration 전략 수립하기AWS Cloud 환경으로​ DB Migration 전략 수립하기
AWS Cloud 환경으로​ DB Migration 전략 수립하기
BESPIN GLOBAL
 
webservice scaling for newbie
webservice scaling for newbiewebservice scaling for newbie
webservice scaling for newbie
DaeMyung Kang
 
Datadog을 활용한 Elastic Kubernetes Service(EKS)에서의 마이크로서비스 통합 가시성 - 정영석 시니어 세일즈 ...
Datadog을 활용한 Elastic Kubernetes Service(EKS)에서의 마이크로서비스 통합 가시성 - 정영석 시니어 세일즈 ...Datadog을 활용한 Elastic Kubernetes Service(EKS)에서의 마이크로서비스 통합 가시성 - 정영석 시니어 세일즈 ...
Datadog을 활용한 Elastic Kubernetes Service(EKS)에서의 마이크로서비스 통합 가시성 - 정영석 시니어 세일즈 ...
Amazon Web Services Korea
 
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
Amazon Web Services Korea
 
Amazon EMR Deep Dive & Best Practices
Amazon EMR Deep Dive & Best PracticesAmazon EMR Deep Dive & Best Practices
Amazon EMR Deep Dive & Best Practices
Amazon Web Services
 
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon Web Services Korea
 
세션 3: IT 담당자를 위한 Cloud 로의 전환
세션 3: IT 담당자를 위한 Cloud 로의 전환세션 3: IT 담당자를 위한 Cloud 로의 전환
세션 3: IT 담당자를 위한 Cloud 로의 전환
Amazon Web Services Korea
 
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
Amazon Web Services Korea
 
DBワークロードのAWS化とデータベースサービス関連最新情報
DBワークロードのAWS化とデータベースサービス関連最新情報DBワークロードのAWS化とデータベースサービス関連最新情報
DBワークロードのAWS化とデータベースサービス関連最新情報
Amazon Web Services Japan
 
Red Hat Gluster Storage Performance
Red Hat Gluster Storage PerformanceRed Hat Gluster Storage Performance
Red Hat Gluster Storage Performance
Red_Hat_Storage
 
AWSでのバースト ― GP2 T2 ご紹介資料
AWSでのバースト ― GP2 T2 ご紹介資料AWSでのバースト ― GP2 T2 ご紹介資料
AWSでのバースト ― GP2 T2 ご紹介資料
Rasmus Ekman
 
롯데이커머스의 마이크로 서비스 아키텍처 진화와 비용 관점의 운영 노하우-나현길, 롯데이커머스 클라우드플랫폼 팀장::AWS 마이그레이션 A ...
롯데이커머스의 마이크로 서비스 아키텍처 진화와 비용 관점의 운영 노하우-나현길, 롯데이커머스 클라우드플랫폼 팀장::AWS 마이그레이션 A ...롯데이커머스의 마이크로 서비스 아키텍처 진화와 비용 관점의 운영 노하우-나현길, 롯데이커머스 클라우드플랫폼 팀장::AWS 마이그레이션 A ...
롯데이커머스의 마이크로 서비스 아키텍처 진화와 비용 관점의 운영 노하우-나현길, 롯데이커머스 클라우드플랫폼 팀장::AWS 마이그레이션 A ...
Amazon Web Services Korea
 
Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Kinesis Familyを活用したストリームデータ処理Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Web Services Japan
 

What's hot (20)

AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020 AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
 
Aws glue를 통한 손쉬운 데이터 전처리 작업하기
Aws glue를 통한 손쉬운 데이터 전처리 작업하기Aws glue를 통한 손쉬운 데이터 전처리 작업하기
Aws glue를 통한 손쉬운 데이터 전처리 작업하기
 
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
 
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
 
AWS 고객이 주로 겪는 운영 이슈에 대한 해법-AWS Summit Seoul 2017
AWS 고객이 주로 겪는 운영 이슈에 대한 해법-AWS Summit Seoul 2017AWS 고객이 주로 겪는 운영 이슈에 대한 해법-AWS Summit Seoul 2017
AWS 고객이 주로 겪는 운영 이슈에 대한 해법-AWS Summit Seoul 2017
 
ここから始めるAWSセキュリティ
ここから始めるAWSセキュリティここから始めるAWSセキュリティ
ここから始めるAWSセキュリティ
 
Lessons learned from running Spark on Docker
Lessons learned from running Spark on DockerLessons learned from running Spark on Docker
Lessons learned from running Spark on Docker
 
AWS Cloud 환경으로​ DB Migration 전략 수립하기
AWS Cloud 환경으로​ DB Migration 전략 수립하기AWS Cloud 환경으로​ DB Migration 전략 수립하기
AWS Cloud 환경으로​ DB Migration 전략 수립하기
 
webservice scaling for newbie
webservice scaling for newbiewebservice scaling for newbie
webservice scaling for newbie
 
Datadog을 활용한 Elastic Kubernetes Service(EKS)에서의 마이크로서비스 통합 가시성 - 정영석 시니어 세일즈 ...
Datadog을 활용한 Elastic Kubernetes Service(EKS)에서의 마이크로서비스 통합 가시성 - 정영석 시니어 세일즈 ...Datadog을 활용한 Elastic Kubernetes Service(EKS)에서의 마이크로서비스 통합 가시성 - 정영석 시니어 세일즈 ...
Datadog을 활용한 Elastic Kubernetes Service(EKS)에서의 마이크로서비스 통합 가시성 - 정영석 시니어 세일즈 ...
 
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
 
Amazon EMR Deep Dive & Best Practices
Amazon EMR Deep Dive & Best PracticesAmazon EMR Deep Dive & Best Practices
Amazon EMR Deep Dive & Best Practices
 
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
 
세션 3: IT 담당자를 위한 Cloud 로의 전환
세션 3: IT 담당자를 위한 Cloud 로의 전환세션 3: IT 담당자를 위한 Cloud 로의 전환
세션 3: IT 담당자를 위한 Cloud 로의 전환
 
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
 
DBワークロードのAWS化とデータベースサービス関連最新情報
DBワークロードのAWS化とデータベースサービス関連最新情報DBワークロードのAWS化とデータベースサービス関連最新情報
DBワークロードのAWS化とデータベースサービス関連最新情報
 
Red Hat Gluster Storage Performance
Red Hat Gluster Storage PerformanceRed Hat Gluster Storage Performance
Red Hat Gluster Storage Performance
 
AWSでのバースト ― GP2 T2 ご紹介資料
AWSでのバースト ― GP2 T2 ご紹介資料AWSでのバースト ― GP2 T2 ご紹介資料
AWSでのバースト ― GP2 T2 ご紹介資料
 
롯데이커머스의 마이크로 서비스 아키텍처 진화와 비용 관점의 운영 노하우-나현길, 롯데이커머스 클라우드플랫폼 팀장::AWS 마이그레이션 A ...
롯데이커머스의 마이크로 서비스 아키텍처 진화와 비용 관점의 운영 노하우-나현길, 롯데이커머스 클라우드플랫폼 팀장::AWS 마이그레이션 A ...롯데이커머스의 마이크로 서비스 아키텍처 진화와 비용 관점의 운영 노하우-나현길, 롯데이커머스 클라우드플랫폼 팀장::AWS 마이그레이션 A ...
롯데이커머스의 마이크로 서비스 아키텍처 진화와 비용 관점의 운영 노하우-나현길, 롯데이커머스 클라우드플랫폼 팀장::AWS 마이그레이션 A ...
 
Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Kinesis Familyを活用したストリームデータ処理Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Kinesis Familyを活用したストリームデータ処理
 

Similar to SK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdf

[찾아가는세미나] 클라우드 데이터 가상화솔루션
[찾아가는세미나] 클라우드 데이터 가상화솔루션[찾아가는세미나] 클라우드 데이터 가상화솔루션
[찾아가는세미나] 클라우드 데이터 가상화솔루션
해은 최
 
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
SANG WON PARK
 
분산저장시스템 개발에 대한 12가지 이야기
분산저장시스템 개발에 대한 12가지 이야기분산저장시스템 개발에 대한 12가지 이야기
분산저장시스템 개발에 대한 12가지 이야기
NAVER D2
 
Spark overview 이상훈(SK C&C)_스파크 사용자 모임_20141106
Spark overview 이상훈(SK C&C)_스파크 사용자 모임_20141106Spark overview 이상훈(SK C&C)_스파크 사용자 모임_20141106
Spark overview 이상훈(SK C&C)_스파크 사용자 모임_20141106
SangHoon Lee
 
NoSQL
NoSQLNoSQL
NoSQL
Gruter
 
사업 실적
사업 실적사업 실적
사업 실적
mobigen
 
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
Jemin Huh
 
지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기
Ted Won
 
Serverless Architecture with Cloud Function
Serverless Architecture with Cloud FunctionServerless Architecture with Cloud Function
Serverless Architecture with Cloud Function
Harrison Jung
 
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
AWSKRUG - AWS한국사용자모임
 
AWS 활용한 Data Lake 구성하기
AWS 활용한 Data Lake 구성하기AWS 활용한 Data Lake 구성하기
AWS 활용한 Data Lake 구성하기
Nak Joo Kwon
 
[2016 데이터 그랜드 컨퍼런스] 2 1(빅데이터). 티맥스 빅데이터시대,더욱중요해진dw를위한어플라이언스전략
[2016 데이터 그랜드 컨퍼런스] 2 1(빅데이터). 티맥스 빅데이터시대,더욱중요해진dw를위한어플라이언스전략[2016 데이터 그랜드 컨퍼런스] 2 1(빅데이터). 티맥스 빅데이터시대,더욱중요해진dw를위한어플라이언스전략
[2016 데이터 그랜드 컨퍼런스] 2 1(빅데이터). 티맥스 빅데이터시대,더욱중요해진dw를위한어플라이언스전략
K data
 
Hadoop administration
Hadoop administrationHadoop administration
Hadoop administration
Ryan Guhnguk Ahn
 
[215]네이버콘텐츠통계서비스소개 김기영
[215]네이버콘텐츠통계서비스소개 김기영[215]네이버콘텐츠통계서비스소개 김기영
[215]네이버콘텐츠통계서비스소개 김기영
NAVER D2
 
Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013
Gruter
 
SQream DB, GPU-accelerated data warehouse
SQream DB, GPU-accelerated data warehouseSQream DB, GPU-accelerated data warehouse
SQream DB, GPU-accelerated data warehouse
NAVER Engineering
 
게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016
게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016
게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016
Amazon Web Services Korea
 
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
Mungyu Choi
 
빅데이터 구축 사례
빅데이터 구축 사례빅데이터 구축 사례
빅데이터 구축 사례
Taehyeon Oh
 
Auto Scalable 한 Deep Learning Production 을 위한 AI Serving Infra 구성 및 AI DevOps...
Auto Scalable 한 Deep Learning Production 을 위한 AI Serving Infra 구성 및 AI DevOps...Auto Scalable 한 Deep Learning Production 을 위한 AI Serving Infra 구성 및 AI DevOps...
Auto Scalable 한 Deep Learning Production 을 위한 AI Serving Infra 구성 및 AI DevOps...
hoondong kim
 

Similar to SK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdf (20)

[찾아가는세미나] 클라우드 데이터 가상화솔루션
[찾아가는세미나] 클라우드 데이터 가상화솔루션[찾아가는세미나] 클라우드 데이터 가상화솔루션
[찾아가는세미나] 클라우드 데이터 가상화솔루션
 
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
 
분산저장시스템 개발에 대한 12가지 이야기
분산저장시스템 개발에 대한 12가지 이야기분산저장시스템 개발에 대한 12가지 이야기
분산저장시스템 개발에 대한 12가지 이야기
 
Spark overview 이상훈(SK C&C)_스파크 사용자 모임_20141106
Spark overview 이상훈(SK C&C)_스파크 사용자 모임_20141106Spark overview 이상훈(SK C&C)_스파크 사용자 모임_20141106
Spark overview 이상훈(SK C&C)_스파크 사용자 모임_20141106
 
NoSQL
NoSQLNoSQL
NoSQL
 
사업 실적
사업 실적사업 실적
사업 실적
 
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
 
지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기
 
Serverless Architecture with Cloud Function
Serverless Architecture with Cloud FunctionServerless Architecture with Cloud Function
Serverless Architecture with Cloud Function
 
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
 
AWS 활용한 Data Lake 구성하기
AWS 활용한 Data Lake 구성하기AWS 활용한 Data Lake 구성하기
AWS 활용한 Data Lake 구성하기
 
[2016 데이터 그랜드 컨퍼런스] 2 1(빅데이터). 티맥스 빅데이터시대,더욱중요해진dw를위한어플라이언스전략
[2016 데이터 그랜드 컨퍼런스] 2 1(빅데이터). 티맥스 빅데이터시대,더욱중요해진dw를위한어플라이언스전략[2016 데이터 그랜드 컨퍼런스] 2 1(빅데이터). 티맥스 빅데이터시대,더욱중요해진dw를위한어플라이언스전략
[2016 데이터 그랜드 컨퍼런스] 2 1(빅데이터). 티맥스 빅데이터시대,더욱중요해진dw를위한어플라이언스전략
 
Hadoop administration
Hadoop administrationHadoop administration
Hadoop administration
 
[215]네이버콘텐츠통계서비스소개 김기영
[215]네이버콘텐츠통계서비스소개 김기영[215]네이버콘텐츠통계서비스소개 김기영
[215]네이버콘텐츠통계서비스소개 김기영
 
Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013
 
SQream DB, GPU-accelerated data warehouse
SQream DB, GPU-accelerated data warehouseSQream DB, GPU-accelerated data warehouse
SQream DB, GPU-accelerated data warehouse
 
게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016
게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016
게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016
 
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
 
빅데이터 구축 사례
빅데이터 구축 사례빅데이터 구축 사례
빅데이터 구축 사례
 
Auto Scalable 한 Deep Learning Production 을 위한 AI Serving Infra 구성 및 AI DevOps...
Auto Scalable 한 Deep Learning Production 을 위한 AI Serving Infra 구성 및 AI DevOps...Auto Scalable 한 Deep Learning Production 을 위한 AI Serving Infra 구성 및 AI DevOps...
Auto Scalable 한 Deep Learning Production 을 위한 AI Serving Infra 구성 및 AI DevOps...
 

SK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdf

  • 1.
  • 2. • 여정의 시작 • 인프라 편 • 로그 편 • 대용량 데이터 편 • 서비스 편 • 마치며
  • 3. 전득진 (Jeon, DeukJin) dj.jeon@sk.com Data Platform 팀 추천 담당 / Search Center 주식회사 11번가 • 18년차 Software Engineer • ’18.5 : SK Planet • ‘18.9.1 : 11번가
  • 5. ‘18.8월 DI TF 결성 • Mission - 11번가 Data Infra를 구축하라! • Full Time 3명 / Part Time 3명 • 10월 SK Planet 판교 사옥, DIC팀과 동거 시작 신속 & 효율적 SKP DIC Clone 11st DIC
  • 6. Mission • SKP DIC 현황 파악 및 Data Infra 구축 계획 수립 :: 첨부자료 - 우주왕복선 Endeavour 호 (’노력’). 1992년 5월 ~. 2011년 6월.
  • 7. Mission • 구성원들이 구비한 경력과 기술에 따라 3가 지 업무로 분할 • 인프라 구축 • 데이터 입수 파이프라인 구축 • 대용량 데이터 마이그레이션 데이터 마이그레이션 (F/T 1) •Hive Table / HDFS •RDBMS Table / Hive Meta •NoSQL DB 데이터 입수 (P/T 3) •User Log •System Log •DB Data 인프라 (F/T 1) •Hardware •Software - Hadoop eco system (F/T 1)
  • 8. 데이터 인프라 구축 • DI TF 결성 : 2018년 8월. Full Time 3명, Part Time 3명 • DIC 구축 : 12월~2019년 2월. 하둡 인프라 + 데이터 수집 인프라 + 데이터 분석/관리 SW (In-House 개발 S/W) • 데이터 마이그레이션 : 3월. 10 PB • 서비스 마이그레이션 : 4월. 추천 플랫폼, BI 시스템, Log2.0, Ad Platform, Search Platform, Web Scouter, … • Yarn 클러스터 메모리 증설 : 5월 • SKP DIC 사용계약 2개월 조기 종료 : 6월 à 4월 9월 10월 11월 12월 ’19년 1월 2월 3월 4월 5월 DI TF 결성 - DIC 구축 계획, 규모산정, 설계 DIC 구축 (인프라 + 입수 파이프 라인) 데이터 마이그레이션 서비스 마이그레이션 Yarn 메모리 증설 : 4월 13(증설 요청) 5/14~5/28 (증설 완료) SKP DIC 사용계약 조기 종료 : 2개월. 6월 à 4월 추천, BI, Ad, Log2.0 SKP DIC 사용계약 메모리 증설 SKP DIC 분석, 규모산정, 설계, Pilot 구성 하둡Infra + 데이터 SW + 데이터 수집 인프라 Full Mig. 계약 조기종료 메모리 구매 Incremental Mig.
  • 9. Sources 수집 가공 (분석) 저장 User Server DB Sentinel Rake Mirrormaker Kafka Collector Oggre 제공 DW Hive OLAP Druid NoSQL HBase Data Service BI System Reco Seller Analytics ICT Family Yarn-RT Yarn-DI Yarn-mini Query / ML / DL HDFS-DIC HDFS-DSC Batch RealTime Cache Redis Search Query Engine Ad A/B Test ICT Family Logagent Hardware • Architecture
  • 10. Hardware • Total 1K 노드 • HDFS : 3 cluster • DI : 공용 저장소 35 PB • MSM (Hbase) : 추천 전용 저장소 • PIE : 실험 클러스터 • Yarn : 4 cluster 21K vcore / 125 TB vmem • DI : 공용 연산노드 • RT : 실시간 스트림 수집 노드 • ETL : 배치 잡 노드 수행 • mini : DB Import 용 Sqoop 수행 노드 • PIE : 실험 클러스터 SKP • Total 400 노드 • HDFS : 3 cluster • DI : 공용 저장소 15 PB • DSC (Hbase) : 추천 전용 저장소 • Yarn : 4 cluster 11K vcore / 85 TB vmem • DI : 공용 연산 노드 • RT : 실시간 + 배치 잡 수행 노드 • mini : DB Import 용 Sqoop 수행 노드 11st Ingestion Processing Storage Sentinel Rake Kafka Mirrormaker Kafka Collector Oggre Serving DW Hive OLAP Druid NoSQL HBase Yarn-RT Yarn-DI Yarn-mini Query / ML / DL HDFS-DIC HDFS-DSC Batch RealTime Cache Redis Query /Storage Engine Logagent Diet. Diet. 노드 = 1000 ea : 400 ea 가용량 = 35PB : 15PB 사용량 = 18PB : 9PB
  • 11. Hardware Yarn Cluster 메모리 증설 • Yarn Cluster 메모리 부족 이슈 : 4월 중순 (issue-rasing). ’19. 5월 말 (증설 완료) • 현상 : Batch Job 및 Spark ML Job 들이 실패함 • 원인 분석 • 워크로드 대비 부족한 자원 • SKP에서 11번가 BM이 리소스의 70% 소비하였으나, 실제 구성된 리소스는 20%, 50% 이하 • 분사에 따른 전기간 소급 적용 배치 증가 + Data 량 증가에 따른 쿼리 워크로드 + 신규 Machine Learning Job 추가 Yarn Cluster SKP 11st (as-was) 11st (as-is) DI 89 TB 16 TB 58.5 TB RT 35 TB 16 TB 24.8 TB mini 1.2 TB 1.75 TB 1.75 TB Yarn Queue Calibration (allocation) • Fair Scheduler
  • 12. Software SK Planet Data Product 관리도구 • Ganglia / Zabbix / ELK / Grafana • Medic / Scrooge / Probe / CMS • Insomnia / Collector UI / Timebomb • Hue 분석도구 • Galleon / Barrel / Boat(GPU) / Cuckoo • R Studio / Jupyter / Zeppelin 입수도구 • Sentinel / Rake / Logagent / Collector • Oggre / Sqoop / Oozie / Pig • Kafka / Mirrormaker Processing 쿼리엔진 • Hive 1.1 eda-oa / eda-svdi / etl / qc • Hive 2.1 eda-oa / eda-svdi / etl / qc / LLAP In-Memory 쿼리엔진 • Presto / Impala • Spark 1.6~2.2 Yarn • DI / RT / ETL / mini (MR / TEZ) Storage HDFS • DI • MSM Hbase / Phoenix • MSM Kudu • kudu 1.6 DB • MongoDB / Mysql / Oracle(OM/BI) Cache • Redis Etc Middleware • Nginx, Tomcat, RabbitMQ Security • Lightsaber / Querycache / Sentrybox • Sentry, Hive UDF (암복호화) • KMS, IDMS, ActiveDirectory 11st Data Product 관리도구 • Ganglia / Zabbix / Grafana • New Medic / Scrooge / Probe / CMS • Insomnia / Collector UI / Timebomb • Thanos / Thanos Frozen • Hue / Airflow 분석도구 • Galleon / Barrel / Cuckoo • R Studio / Jupyter / Zeppelin / Superset 입수도구 • Sentinel / Rake / Logagent / Collector • Oggre / Sqoop / Oozie • Kafka / Mirrormaker / Flume Processing 쿼리엔진 • Hive 2.1 eda-oa / eda-svdi / etl / qc / LLAP In-Memory 쿼리엔진 • Presto • Spark 2.2 Yarn • DI / RT / mini (MR / TEZ) Storage HDFS • DI • DSC(=MSM) Hbase / Phoenix • DSC(=MSM) DB • MongoDB / Mysql / Oracle(OM/BI) Cache • Redis Etc Middleware • Nginx, Tomcat, RabbitMQ Security • Lightsaber / Querycache / Sentrybox • Sentry, Hive UDF (암복호화) • KMS, IDMS, ActiveDirectory
  • 13. Software • 방대한 솔루션 • 솔루션 체인 • 순환 의존성 QC ßà SentryBox CMS Lock ßà Hive Medic ßà Sentinel
  • 14. 데이터 입수 파이프라인 구축 • Overview Server DB LogAgent Oracle Golden Gate 보라매 IDC 일산 IDC OMDB OMDB Relay MirrorMaker Collector Oggre Sqoop BIDB rake web/was rake client Data Infra Cluster User
  • 15. 데이터 입수 파이프라인 구축 • Log / DB 데이터 수집 현황 데이터유형 수집데이터 수집대상 수집도구 일 수집량 User Log - log2.0 - pc web - modile web - app (ios, android) rake client (in-house) - android, ios, javascript Rake WEB/WAS : 40ea (26/14) 1.4 T Server Log - access log - service log - web server - application server Logagent (in-house) : 450ea kafka : 13ea(보라매 3/ Alp3 / 일산7) Collector : 6ea 29 T DB Data - 업무 데이터 - Main DB - BI DB - AD DB Oggre (in-house) : 2ea Oozie : 2ea Yarn-mini : 5ea 7 T Oggre:209건 Sqoop:245건
  • 16. 데이터 입수 파이프라인 구축 - User Log • App에서 로그 수집 서버 양측에 전송하는 방법 (X) • 로그 수집 서버 한 곳에서 트래픽을 복제하여 전송하는 방법 (O) • Nginx :: post_action : Traffic mirroring • Origin : SKP 1. 11st 로그 입수 파이프라인을 구축 2. 신규 앱 배포 : 사용자 로그를 전송하는 End Point을 변경 (SKP à 11st) • 로그를 양사 DIC로 송출 (Origin : SKP) • 로그입수량을 대조 3. 로그를 양사 DIC로 송출 (Origin : SKP) • 로그입수량을 대조 • 11st 내 로그입수 후 처리 로직을 완성 (마트생성 Workflow)
  • 17. 데이터 입수 파이프라인 구축 - User Log • 구버전 앱 : SKP로 송출 • 신버전 앱 : 11st로 송출 • post_action • Origin : SKP (11st로 트래픽 복제) • Issue : 1% 트래픽 유실 User Log 1% SKP (커머스 IDC) Data Infra Cluster Collector rake was 11st (일산 IDC) Data Infra Cluster Collector rake web/was post_action (1% 유실) old rake client 데이터 복제 new rake client User Log 99%
  • 18. 데이터 입수 파이프라인 구축 - User Log • post_action • Origin : 11st (SKP로 트래픽 복제) User Log 99% SKP (커머스 IDC) Data Infra Cluster Collector rake was 11st (일산 IDC) Data Infra Cluster Collector rake web/was post_action old rake client 데이터 복제 new rake client User Log 1%
  • 19. 데이터 입수 파이프라인 구축 - User Log • 구버전 앱 트래픽 1% : 강제 업데이트 • post_action • Traffic mirroring 제거 • SKP로 로그 송출 중단 User Log 99.9% SKP (커머스 IDC) Data Infra Cluster Collector rake was 11st (일산 IDC) Data Infra Cluster Collector rake web/was old rake client 데이터 복제 new rake client User Log 0.1% post_action 제거
  • 20. 데이터 입수 파이프라인 구축 - System Log • Logagent • 보라매IDC, 일산IDC 양분 • Mirrormaker • 보라매 Kafka à MirrorMaker à 일산 Kafka à Collector à HDFS Server LogAgent 보라매 IDC 일산 IDC Data Platform MirrorMaker Collector
  • 21. Migration Plan 마이그레이션 대상 선별 - 이관 대상 : 계정/Hive DB/HDFS 목록 효율화 대상 선정 - Hive DB별 삭제 대상/ 보관주기 대상/ 유지 대상 목록 재암호화 대상 점검 마이그레이션 시나리오 수립 - 마이그레이션 프로세스 공지 및 설명회 마이그레이션 수행
  • 24. Migration • 마이그레이션 대상 식별 : 전체 33PB • 데이터 Owner 대상 설명회 수행 => 전수 조사 / 사용 여부 조사 • 적극적인 참여로 • 11st 데이터만 16PB --> 10PB (40% 효율화 성공) 30PB 16PB 10PB
  • 25. Migration • 마이그레이션 대상별 진행방식 : • HDFS + Hive : inter cluster distcp • Druid • Mysql : dump & import • MongoDB : dump & import • Hbase : raw data 기반으로 재 적재 • Redis : Hbase 기반으로 재 적재 • HDFS만 10PB : cluster간 Network Bandwidth = 40G • 이론적 복제 시간 : 432TB(1day) * 80%(buffer) = 350TB • 주요 업무시간 제외한 나머지 12시간 복제 시 소요 기간 3333TB(Usable) / 175TB(12시간) = 19일 + 5일(buffer) • 실제 복제 기간 : 240TB(1day) = 약 14일 소요 전용선 연결 구조 SKP 11st
  • 26. Migration • 재 암호화 : SKP decrypt : flat data à distcp : 11st encrypt • 고려사항 및 어려웠던 점 • One mapper per file : 하나의 파일에 쓰기 작업 매퍼가 두개 이상 접근하면 오류 발생 • distcp process중 source file이나 destination의 file 변경 일어나면 fail 발생할 수 있음 • 복제 시 block size 보존을 권장, version이 다른 경우 목적지에서 distcp를 수행함 • 11st 클러스터에서 복사하는 경우SKP의 workload를 제거할 수 있으나 (pull방식) audit 로그를 남기기 위하여 SKP 클러스터에서 distcp를 수행함 (push방식) • Incremental distcp X : 너무 많은 tiny job overhead à 디렉토리 단위별 단순 distcp 수행 • 네트웍 대역폭을 고려한 설정 : bandwidth 10MB/s per mapper : 전체 mapper 500 • 수십만개 파일변환으로 인한 distcp 재 작업 : non orc à orc • Permission Error (during Query Execution) • 모든 파티션 파일에 Owner (UID) / Group (GID) 를 일치 1 복호화 2 테이블 단위 파티션 복사 3 암호화 SKP 11st
  • 27. Migration • 데이터 거버넌스 - Thanos Project (저장소 효율화) • ‘19년 9월 사용률 - 12.8/14.83 PB : 86%, 3월 9.6PB 시작 : 64% • 월 0.3PB 증가 à 2달 후 90% 도달 “When I’m done, half of DATA will still exist. Perfectly balanced, as all things should be.”
  • 28. Migration • 데이터 거버넌스 - Thanos Project (저장소 효율화) • 데이터 압축 / 보관주기 관리 / 중단 서비스 데이터 폐기 • ‘19년 9월 사용률 (12.8/14.83 PB : 86%, 3월 9.6PB : 64% 시작) As-Was (9월초) → DLM 적용 (10월) → DLM Frozen 적용 (11월 예정) 12.8 PB 사용률 85.62% 9 PB 사용률 60% : 삭제 용량 3.8 PB 이상 (9/26 기준) 8 PB 사용률 54% : 삭제용량 1PB (추정) 2020년도 저장소 증설 0 = 약 6억 절약 (30대) •2020년 10월 예상 사이즈 (월 증가량 0.3 PB) DLM 적용 후 : 9 + 3.6 = 12.6 PB (85%) DLM Frozen 적용 후 : 8 + 3.6 = 11.6 PB (78.2%) Compression Retention Cycle (purge) Freezing
  • 29. Migration ‘19 10월 access로그 22% 정보계(BI) 17% 광고 16% 추천 16% 검색 11% 로그2.0 8% 운영계(OM) 3% 기타 7% 구분 TB size access로그 2037.54 정보계(BI) 1580.56 광고 1521.75 추천 1500.71 검색 996.60 로그2.0 699.57 운영계 (OM) 229.92 기타 687.92 합계 9254.57 사용 비율 9.25 / 14.83 PB (62.3%)
  • 30. Asset 보라매 IDC 일산 IDC 364ea 86ea Size Used Available Used% 14.83 PB 9.25 PB 4.85 PB 62.3% 보라매 IDC kafka 일산 IDC Kafka 53 topic (3 broker) 63 topic (7 broker) hourly daily weekly monthly total 30 380 13 13 436 • 스토리지 사이즈 • 테이블 : 4,317 ea • 배치잡 : 436 ea • Logagent : 450 ea • Kafka Topic : 111 ea
  • 31. 서비스 연동 • BI 리포트 • Data Source • BIDB • Hive : Log2.0 + 검색 AccessLog • Solution • MicroStrategy + Tableau • Batch Job • ETL DAG => Oozie Sqoop + Oozie Hive + Oozie Spark ETL DAG Job1 ODS Job2 DW Job3 Data Mart Job4 BI Report
  • 32. 서비스 연동 • 추천 서비스 • Data Source • HDFS + Hive • Hbase + Phoenix : 자체 적재 • Redis : 자체 적재 • Realtime Job : Flink + Spark Streaming • Batch Job : Spark ML + Hive • Platform • 추천 엔진 • 추천 서버(서빙) • LogHub Service Log 적재 추천용 데이터 ETL OMDB BIDB 추천 엔진 Service Repository (ES / MySQL) Cache / Realtime repository App Push 추천 Server
  • 34. Special Thanks • 11번가 • System Engineering 팀 / Service Engineering 팀 • Platform Engineering 팀 / IT 팀 • SK Planet • Data Infrastructure팀