SlideShare a Scribd company logo
1 of 44
하둡 에코시스템 위에서
환상적인 테이크오프 🏄♀
한성민
CONTENTS
다가오는 거대한 데이터
하둡과 에코시스템
협업을 위한 하둡
돌아보며
01
02
03
04
Speaker
한성민
Research Engineer
golanghadoop surfing
01_
다가오는
거대한 데이터
행복했던 우리들의 데이터 처리
01_다가오는 거대한 데이터
CSV를 통해서 데이터를 처리한 경험이 한번쯤 있으실 겁니다.
데이터를 읽기도 쉽고, 불러오고 저장하는 것도 쉬워서 항상 많은 사랑을 받고 있죠 😆
아마도 우리들 분석할 CSV 데이터 주피터 노트북
분석
시각화
데이터 협업 환경
01_다가오는 거대한 데이터
CSV로 협업하는 것도 복잡하지는 않습니다.
물론 파일을 전달하는 것이기에, 조금 번거로울 뿐이죠
아마도 우리들 CSV 데이터 전처리 데이터 직장동료
분석
데이터
프로세싱
메일전송
협업에서 찾아오는 문제들
01_다가오는 거대한 데이터
물론 협업할 때부터 보이지 않는 문제가 터지기 시작합니다.
데이터 전달일자에 갑자기 깨진 파일 (백업이
없다)
비기! 최종본 분신술 복구할려고 메일을 뒤졌지만 기간이 만료됬다.
데이터베이스를 통한 협업 시도
01_다가오는 거대한 데이터
MongoDB
MySQL
아마도 우리들
분석 및 전처리
데이터 변경
안내
데이터베이스를 사용하면, 협업에서 발생하는 문제를 줄일 수 있습니다.
주기적인 데이터백업
그들이.. 온다....
01_다가오는 거대한 데이터
누구나 그럴싸한 계획을 가지고 있다,
데이터베이스가 터지기 전까진
오늘날에는 Data 기술의 향상이 불러온 것
01_다가오는 거대한 데이터
https://techcrunch.com/2012/08/22/how-big-is-facebooks-data-2-5-billion-pieces-of-content-and-500-terabytes-ingested-every-day/
데이터가 늘어남에 따라, 늦어지는 처리 속도
01_다가오는 거대한 데이터
데이터를 10만개 정도 넣어보고...
데이터가 늘어남에 따라, 늦어지는 처리 속도
01_다가오는 거대한 데이터
delimiter $
CREATE FUNCTION grade(score INT)
RETURNS CHAR
BEGIN
DECLARE grade_score CHAR;
SELECT CASE WHEN score BETWEEN 90 AND 100 THEN 'A'
WHEN score BETWEEN 80 AND 89 THEN 'B'
WHEN score BETWEEN 70 AND 79 THEN 'C'
WHEN score BETWEEN 60 AND 69 THEN 'D'
ELSE 'F'
END INTO grade_score;
RETURN grade_score;
END $
SELECT
grade((score_eng + score_math + score_science
+ score_history) / 4) AS grade_score,
COUNT(*) AS count,
CONCAT(CEILING(COUNT(*) / (SELECT COUNT(*)
FROM dsts.dsts) * 100), '%')
FROM dsts.dsts
GROUP BY grade_score
ORDER BY grade_score;
집계 함수와 CASE 문, 서브쿼리 조합 (지옥의 조합)
이용해서 전체 데이터를 취합하는
쿼리를 테스트해봅시다.
*참고로 좌측의 쿼리는
전체 점수를 평균내어
아래와 같은 기준으로 등급을 매겨줍니다.
90~100 -> ‘A’
80~89 -> ‘B’
70~79 -> ‘C’
60~69 -> ‘D’
그 밖에 -> ‘F’
결과 값은 각 등급별 사람의 수와
그 등급이 전체에서
몇 % 비중을 가지는지 보여줍니다.
데이터가 늘어남에 따라, 늦어지는 처리 속도
01_다가오는 거대한 데이터
쿼리 결과를 조회하기까지 총 11초가 소요되었습니다.
이 정도면 나쁜 조건은 아닙니다.
데이터가 늘어남에 따라, 늦어지는 처리 속도
01_다가오는 거대한 데이터
1천만 Rows를 가진 테이블에서의 쿼리 결과는 총 1분 50초가 소요되었습니다.
점점 작업 조회가 늦어집니다. 😢
여기서 질문!
01_다가오는 거대한 데이터
만약 1억건의 데이터를 검색하고자 한다면,
어느정도의 시간이 소요될 것 같으세요?
1억건 데이터에서 오는 데이터처리의 한계
01_다가오는 거대한 데이터
이제 1억건의 Rows를 가진 테이블에서의 쿼리를 실행했습니다.
결과는 총 18분 56초가 소요되었습니다 😭
02_
하둡과
에코시스템
세상에 은총알은 없다.
하둡을 대표하는 키워드들
02_하둡과 에코시스템
맵 리듀스 HDFS 하이브
YARN 스파크
하둡이 가지고 있는 생태계
02_하둡과 에코시스템
하둡은 수 많은 프레임워크들의 생태계를 가지고 있습니다.
다양한 프레임워크들은 데이터 사이언티스트들의 업무에 맞게 골라가며 사용할 수 있게
되어있습니다.
하둡의 구성
02_하둡과 에코시스템
HDFS
YARN
Map Reduce Others
하둡은 크게 3가지의 구조로 나눌 수 있습니다.
거대한 데이터를 처리하는 메커니즘인 맵 리듀스(MapReduce)
분산 환경에서 흩어진 리소스를 적절하게 관리해주는 얀(Yarn)
그리고 모든 데이터를 분산하여 보관하는 HDFS
하둡을 얘기할 땐 이 세가지 구성요소를 얘기합니다.
YARN
HDFS
Resourc
e
Manager
Name
Node
Node
Manager
Data
Node
Node
Manager
Data
Node
Node
Manager
Data
Node
Node
Manager
Data
Node
수 많은 데이터 프레임워크들
02_하둡과 에코시스템
코디네이터
리소스매니저
데
이
터
수
집
데
이
터
배
치
분
석
데
이
터
처
리
실
시
간
데
이
터
분
석
대
화
형
분
석
워크플로우 관리
클라우드
에디터
데이터
시각화
수 많은 데이터 프레임워크들
02_하둡과 에코시스템
대화형 쿼리 엔진
데이터베이스
배치 데이터 분석
워크 플로우
코디네이터
메시지 처리
분산 리소스 관리
인메모리 데이터 처리
데이터 수집
시각화
수 많은 데이터 프레임워크들
02_하둡과 에코시스템
대화형 쿼리 엔진
데이터베이스
배치 데이터 분석
워크 플로우
코디네이터
메시지 처리
분산 리소스 관리
인메모리 데이터 처리
데이터 수집
시각화
MapReduce, Apache Tez
Apache Hive, Apache HBase
Presto, Impala, Apache Tajo
Oozie, Ambari
Zookeeper
Apache Spark
YARN, Apache Mesos
Apache Kafka
Apache Sqoop, Hiho, Flume, Chunkwa
Apache Zeppelin, Apache Superset
03_
협업을 위한 하둡
기존 데이터 처리 과정의 비효율성
03_협업을 위한 하둡
아마도 우리들 Data Lake 분석할 CSV 데이터 주피터 노트북
시각화
ETL
쿼리
기존에는 데이터를 시각화하기 위해서
쿼리를 통해 원하는 데이터를 확인하고, 그것을 가공하고 추출해서(ETL), 시각화하기 까지
각 단계를 별도로 관리했습니다.
기존 데이터 처리 과정의 비효율성
03_협업을 위한 하둡
로그 수집
트랜잭션 데이터
NOSQL
Batch
Adhoc 분석
로그 집계
Batch 분석
비정형 분석
서비스
아마도 우리들
데이터 저장소가 하나면 다행이지만, 업무에서 사용하는 데이터 소스가 다양하다면
업무처리는 더 복잡해집니다.
하둡으로의 대체
03_협업을 위한 하둡
데이터 저장소가 하나면 다행이지만, 업무에서 사용하는 데이터 소스가 다양하다면
업무처리는 더 복잡해집니다.
Batch 분석
비정형 분석
인메모리 분석
실시간 분석
Data lake
(Hadoop HDFS)
아마도 우리들
데이터 시각화
03_협업을 위한 하둡
여러가지 데이터 소스를 자동으로 불러와 시각화를
도와주기 때문에 매번 새로 추가된 데이터를 불러와
차트를 만드는 작업을 할 필요가 없어집니다.
Apache Zeppelin
Apache Superset
데이터 플로우
03_협업을 위한 하둡
서비스 데이터베이스
Pub/Sub
로그 저장소
Cold Data
Data lake
Query EngineVisualization
Workflow
아마도 우리들
데이터 플로우
03_협업을 위한 하둡 Workflow
(Airflow)
Service Flow
Hadoop HDFS
Pub/Sub
Visualization
Query Engine
로그데이터 수집
Pipeline
Pipeline
Schedule
Query
Query
04_
돌아보며
오늘 우리가
배운것을 돌아보면...
CSV
느려
데이터베이스
느려
하둡의 장점
데이터 중앙화
데이터 플로우
분산 데이터 처리
데이터 중앙화
데이터 플로우
분산 데이터 처리
데이터 중앙화
데이터 플로우
분산 데이터 처리
Question?
Thank you!
kenneth@pigno.se
https://github.com/KennethanCeyer
QNA
GitHub

More Related Content

What's hot

DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun Kim
DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun KimDeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun Kim
DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun KimGruter
 
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
 
234 deview2013 김형준
234 deview2013 김형준234 deview2013 김형준
234 deview2013 김형준NAVER D2
 
빅데이터, big data
빅데이터, big data빅데이터, big data
빅데이터, big dataH K Yoon
 
Hadoop설명
Hadoop설명Hadoop설명
Hadoop설명Ji Hoon Lee
 
빅데이터 플랫폼 새로운 미래
빅데이터 플랫폼 새로운 미래빅데이터 플랫폼 새로운 미래
빅데이터 플랫폼 새로운 미래Wooseung Kim
 
Apache Hive: for business intelligence use and real-time I/O use (Korean)
Apache Hive: for business intelligence use and real-time I/O use (Korean)Apache Hive: for business intelligence use and real-time I/O use (Korean)
Apache Hive: for business intelligence use and real-time I/O use (Korean)Teddy Choi
 
Pag 빅데이터-한국에도필요한가
Pag 빅데이터-한국에도필요한가Pag 빅데이터-한국에도필요한가
Pag 빅데이터-한국에도필요한가Wooseung Kim
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoMatthew (정재화)
 
줌인터넷 빅데이터 활용사례 김우승
줌인터넷 빅데이터 활용사례 김우승줌인터넷 빅데이터 활용사례 김우승
줌인터넷 빅데이터 활용사례 김우승Wooseung Kim
 
빅데이터 기본개념
빅데이터 기본개념빅데이터 기본개념
빅데이터 기본개념현주 유
 
빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)Channy Yun
 
PYCON 2017 발표자료 한성준
PYCON 2017 발표자료 한성준PYCON 2017 발표자료 한성준
PYCON 2017 발표자료 한성준sungjun han
 
201210 그루터 빅데이터_플랫폼_아키텍쳐_및_솔루션_소개
201210 그루터 빅데이터_플랫폼_아키텍쳐_및_솔루션_소개201210 그루터 빅데이터_플랫폼_아키텍쳐_및_솔루션_소개
201210 그루터 빅데이터_플랫폼_아키텍쳐_및_솔루션_소개Gruter
 
Io t에서 big data를 통합하는 통합 빅데이터 플랫폼 flamingo_클라우다인_김병곤 대표이사
Io t에서 big data를 통합하는 통합 빅데이터 플랫폼 flamingo_클라우다인_김병곤 대표이사Io t에서 big data를 통합하는 통합 빅데이터 플랫폼 flamingo_클라우다인_김병곤 대표이사
Io t에서 big data를 통합하는 통합 빅데이터 플랫폼 flamingo_클라우다인_김병곤 대표이사uEngine Solutions
 
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: Tajo와 SQL-on-Hadoop
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: Tajo와 SQL-on-HadoopGRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: Tajo와 SQL-on-Hadoop
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: Tajo와 SQL-on-HadoopGruter
 
3회 서울 Hadoop 사용자 모임 / 아파치 피닉스
3회 서울 Hadoop 사용자 모임 / 아파치 피닉스3회 서울 Hadoop 사용자 모임 / 아파치 피닉스
3회 서울 Hadoop 사용자 모임 / 아파치 피닉스Teddy Choi
 
글로벌 사례로 보는 데이터로 돈 버는 법 - 트레저데이터 (Treasure Data)
글로벌 사례로 보는 데이터로 돈 버는 법 - 트레저데이터 (Treasure Data)글로벌 사례로 보는 데이터로 돈 버는 법 - 트레저데이터 (Treasure Data)
글로벌 사례로 보는 데이터로 돈 버는 법 - 트레저데이터 (Treasure Data)Treasure Data, Inc.
 
Gpdb best practices v a01 20150313
Gpdb best practices v a01 20150313Gpdb best practices v a01 20150313
Gpdb best practices v a01 20150313Sanghee Lee
 
SQL-on-Hadoop with Apache Tajo, and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo,  and application case of SK TelecomSQL-on-Hadoop with Apache Tajo,  and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo, and application case of SK TelecomGruter
 

What's hot (20)

DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun Kim
DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun KimDeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun Kim
DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun Kim
 
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)
 
234 deview2013 김형준
234 deview2013 김형준234 deview2013 김형준
234 deview2013 김형준
 
빅데이터, big data
빅데이터, big data빅데이터, big data
빅데이터, big data
 
Hadoop설명
Hadoop설명Hadoop설명
Hadoop설명
 
빅데이터 플랫폼 새로운 미래
빅데이터 플랫폼 새로운 미래빅데이터 플랫폼 새로운 미래
빅데이터 플랫폼 새로운 미래
 
Apache Hive: for business intelligence use and real-time I/O use (Korean)
Apache Hive: for business intelligence use and real-time I/O use (Korean)Apache Hive: for business intelligence use and real-time I/O use (Korean)
Apache Hive: for business intelligence use and real-time I/O use (Korean)
 
Pag 빅데이터-한국에도필요한가
Pag 빅데이터-한국에도필요한가Pag 빅데이터-한국에도필요한가
Pag 빅데이터-한국에도필요한가
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with Tajo
 
줌인터넷 빅데이터 활용사례 김우승
줌인터넷 빅데이터 활용사례 김우승줌인터넷 빅데이터 활용사례 김우승
줌인터넷 빅데이터 활용사례 김우승
 
빅데이터 기본개념
빅데이터 기본개념빅데이터 기본개념
빅데이터 기본개념
 
빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)
 
PYCON 2017 발표자료 한성준
PYCON 2017 발표자료 한성준PYCON 2017 발표자료 한성준
PYCON 2017 발표자료 한성준
 
201210 그루터 빅데이터_플랫폼_아키텍쳐_및_솔루션_소개
201210 그루터 빅데이터_플랫폼_아키텍쳐_및_솔루션_소개201210 그루터 빅데이터_플랫폼_아키텍쳐_및_솔루션_소개
201210 그루터 빅데이터_플랫폼_아키텍쳐_및_솔루션_소개
 
Io t에서 big data를 통합하는 통합 빅데이터 플랫폼 flamingo_클라우다인_김병곤 대표이사
Io t에서 big data를 통합하는 통합 빅데이터 플랫폼 flamingo_클라우다인_김병곤 대표이사Io t에서 big data를 통합하는 통합 빅데이터 플랫폼 flamingo_클라우다인_김병곤 대표이사
Io t에서 big data를 통합하는 통합 빅데이터 플랫폼 flamingo_클라우다인_김병곤 대표이사
 
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: Tajo와 SQL-on-Hadoop
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: Tajo와 SQL-on-HadoopGRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: Tajo와 SQL-on-Hadoop
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: Tajo와 SQL-on-Hadoop
 
3회 서울 Hadoop 사용자 모임 / 아파치 피닉스
3회 서울 Hadoop 사용자 모임 / 아파치 피닉스3회 서울 Hadoop 사용자 모임 / 아파치 피닉스
3회 서울 Hadoop 사용자 모임 / 아파치 피닉스
 
글로벌 사례로 보는 데이터로 돈 버는 법 - 트레저데이터 (Treasure Data)
글로벌 사례로 보는 데이터로 돈 버는 법 - 트레저데이터 (Treasure Data)글로벌 사례로 보는 데이터로 돈 버는 법 - 트레저데이터 (Treasure Data)
글로벌 사례로 보는 데이터로 돈 버는 법 - 트레저데이터 (Treasure Data)
 
Gpdb best practices v a01 20150313
Gpdb best practices v a01 20150313Gpdb best practices v a01 20150313
Gpdb best practices v a01 20150313
 
SQL-on-Hadoop with Apache Tajo, and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo,  and application case of SK TelecomSQL-on-Hadoop with Apache Tajo,  and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo, and application case of SK Telecom
 

Similar to 하둡 에코시스템 위에서 환상적인 테이크오프 - DSTS 2019

Tdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalabilityTdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalability흥배 최
 
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석Amazon Web Services Korea
 
Rankwave MOMENT™ (Korean)
Rankwave MOMENT™ (Korean)Rankwave MOMENT™ (Korean)
Rankwave MOMENT™ (Korean)HyoungEun Kim
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoGruter
 
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)Amazon Web Services Korea
 
[AWS Migration Workshop] 데이터베이스를 AWS로 손쉽게 마이그레이션 하기
[AWS Migration Workshop]  데이터베이스를 AWS로 손쉽게 마이그레이션 하기[AWS Migration Workshop]  데이터베이스를 AWS로 손쉽게 마이그레이션 하기
[AWS Migration Workshop] 데이터베이스를 AWS로 손쉽게 마이그레이션 하기Amazon Web Services Korea
 
실전 DataSnap!
실전 DataSnap!실전 DataSnap!
실전 DataSnap!Devgear
 
Webservice cache strategy
Webservice cache strategyWebservice cache strategy
Webservice cache strategyDaeMyung Kang
 
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)Channy Yun
 
[E-commerce & Retail Day] Data Freedom을 위한 Database 최적화 전략
[E-commerce & Retail Day] Data Freedom을 위한 Database 최적화 전략[E-commerce & Retail Day] Data Freedom을 위한 Database 최적화 전략
[E-commerce & Retail Day] Data Freedom을 위한 Database 최적화 전략Amazon Web Services Korea
 
여러분의 워크로드에 적합한 AWS 데이터베이스로 손쉽게 마이그레이션하기 - 최유정 (AWS 솔루션즈 아키텍트)
여러분의 워크로드에 적합한 AWS 데이터베이스로 손쉽게 마이그레이션하기 - 최유정 (AWS 솔루션즈 아키텍트)여러분의 워크로드에 적합한 AWS 데이터베이스로 손쉽게 마이그레이션하기 - 최유정 (AWS 솔루션즈 아키텍트)
여러분의 워크로드에 적합한 AWS 데이터베이스로 손쉽게 마이그레이션하기 - 최유정 (AWS 솔루션즈 아키텍트)Amazon Web Services Korea
 
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기AWSKRUG - AWS한국사용자모임
 
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017Amazon Web Services Korea
 
Hadoop 제주대
Hadoop 제주대Hadoop 제주대
Hadoop 제주대DaeHeon Oh
 
성능 좋은 SQL 작성법
성능 좋은 SQL 작성법성능 좋은 SQL 작성법
성능 좋은 SQL 작성법Devgear
 
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016Amazon Web Services Korea
 
Scalable web architecture and distributed systems
Scalable web architecture and distributed systemsScalable web architecture and distributed systems
Scalable web architecture and distributed systemseva
 
Scalable web architecture and distributed systems
Scalable web architecture and distributed systemsScalable web architecture and distributed systems
Scalable web architecture and distributed systems현종 김
 

Similar to 하둡 에코시스템 위에서 환상적인 테이크오프 - DSTS 2019 (20)

Tdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalabilityTdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalability
 
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
 
Rankwave MOMENT™ (Korean)
Rankwave MOMENT™ (Korean)Rankwave MOMENT™ (Korean)
Rankwave MOMENT™ (Korean)
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with Tajo
 
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Redshift 기반 DW 와 비지니스 인텔리전스 구현 방법 (김일호 솔루션즈 아키텍트)
 
[AWS Migration Workshop] 데이터베이스를 AWS로 손쉽게 마이그레이션 하기
[AWS Migration Workshop]  데이터베이스를 AWS로 손쉽게 마이그레이션 하기[AWS Migration Workshop]  데이터베이스를 AWS로 손쉽게 마이그레이션 하기
[AWS Migration Workshop] 데이터베이스를 AWS로 손쉽게 마이그레이션 하기
 
실전 DataSnap!
실전 DataSnap!실전 DataSnap!
실전 DataSnap!
 
Webservice cache strategy
Webservice cache strategyWebservice cache strategy
Webservice cache strategy
 
Hadoop overview
Hadoop overviewHadoop overview
Hadoop overview
 
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
 
[E-commerce & Retail Day] Data Freedom을 위한 Database 최적화 전략
[E-commerce & Retail Day] Data Freedom을 위한 Database 최적화 전략[E-commerce & Retail Day] Data Freedom을 위한 Database 최적화 전략
[E-commerce & Retail Day] Data Freedom을 위한 Database 최적화 전략
 
여러분의 워크로드에 적합한 AWS 데이터베이스로 손쉽게 마이그레이션하기 - 최유정 (AWS 솔루션즈 아키텍트)
여러분의 워크로드에 적합한 AWS 데이터베이스로 손쉽게 마이그레이션하기 - 최유정 (AWS 솔루션즈 아키텍트)여러분의 워크로드에 적합한 AWS 데이터베이스로 손쉽게 마이그레이션하기 - 최유정 (AWS 솔루션즈 아키텍트)
여러분의 워크로드에 적합한 AWS 데이터베이스로 손쉽게 마이그레이션하기 - 최유정 (AWS 솔루션즈 아키텍트)
 
Druid+superset
Druid+supersetDruid+superset
Druid+superset
 
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
Spark + S3 + R3를 이용한 데이터 분석 시스템 만들기
 
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017
AWS를 통한 빅데이터 기반 비지니스 인텔리전스 구축- AWS Summit Seoul 2017
 
Hadoop 제주대
Hadoop 제주대Hadoop 제주대
Hadoop 제주대
 
성능 좋은 SQL 작성법
성능 좋은 SQL 작성법성능 좋은 SQL 작성법
성능 좋은 SQL 작성법
 
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016
나에게 맞는 AWS 데이터베이스 서비스 선택하기 :: 양승도 :: AWS Summit Seoul 2016
 
Scalable web architecture and distributed systems
Scalable web architecture and distributed systemsScalable web architecture and distributed systems
Scalable web architecture and distributed systems
 
Scalable web architecture and distributed systems
Scalable web architecture and distributed systemsScalable web architecture and distributed systems
Scalable web architecture and distributed systems
 

More from Kenneth Ceyer

이미지 프로세싱 in Python Open Source - PYCON KOREA 2020
이미지 프로세싱 in Python Open Source - PYCON KOREA 2020이미지 프로세싱 in Python Open Source - PYCON KOREA 2020
이미지 프로세싱 in Python Open Source - PYCON KOREA 2020Kenneth Ceyer
 
정적 컨텐츠 제너레이터 GatsbyJS에 대해서 알아봅시다.
정적 컨텐츠 제너레이터 GatsbyJS에 대해서 알아봅시다.정적 컨텐츠 제너레이터 GatsbyJS에 대해서 알아봅시다.
정적 컨텐츠 제너레이터 GatsbyJS에 대해서 알아봅시다.Kenneth Ceyer
 
LP(linear programming) Algorithm
LP(linear programming) AlgorithmLP(linear programming) Algorithm
LP(linear programming) AlgorithmKenneth Ceyer
 
AI 연구자를 위한 클린코드 - GDG DevFest Seoul 2019
AI 연구자를 위한 클린코드 - GDG DevFest Seoul 2019AI 연구자를 위한 클린코드 - GDG DevFest Seoul 2019
AI 연구자를 위한 클린코드 - GDG DevFest Seoul 2019Kenneth Ceyer
 
AllReduce for distributed learning I/O Extended Seoul
AllReduce for distributed learning I/O Extended SeoulAllReduce for distributed learning I/O Extended Seoul
AllReduce for distributed learning I/O Extended SeoulKenneth Ceyer
 
gRPC와 goroutine 톺아보기 - GDG Golang Korea 2019
gRPC와 goroutine 톺아보기 - GDG Golang Korea 2019gRPC와 goroutine 톺아보기 - GDG Golang Korea 2019
gRPC와 goroutine 톺아보기 - GDG Golang Korea 2019Kenneth Ceyer
 
Test and refactoring
Test and refactoringTest and refactoring
Test and refactoringKenneth Ceyer
 
Deep dive into Modern frameworks - HTML5 Forum 2018
Deep dive into Modern frameworks - HTML5 Forum 2018Deep dive into Modern frameworks - HTML5 Forum 2018
Deep dive into Modern frameworks - HTML5 Forum 2018Kenneth Ceyer
 
우아하게 준비하는 테스트와 리팩토링 - PyCon Korea 2018
우아하게 준비하는 테스트와 리팩토링 - PyCon Korea 2018우아하게 준비하는 테스트와 리팩토링 - PyCon Korea 2018
우아하게 준비하는 테스트와 리팩토링 - PyCon Korea 2018Kenneth Ceyer
 
GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기
 GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기 GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기
GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기Kenneth Ceyer
 
Dealing with Python Reactively - PyCon Korea 2017
Dealing with Python Reactively - PyCon Korea 2017Dealing with Python Reactively - PyCon Korea 2017
Dealing with Python Reactively - PyCon Korea 2017Kenneth Ceyer
 
파이썬 리액티브하게 짜기 - PyCon Korea 2017
파이썬 리액티브하게 짜기 - PyCon Korea 2017파이썬 리액티브하게 짜기 - PyCon Korea 2017
파이썬 리액티브하게 짜기 - PyCon Korea 2017Kenneth Ceyer
 
AngularJS 2, version 1 and ReactJS
AngularJS 2, version 1 and ReactJSAngularJS 2, version 1 and ReactJS
AngularJS 2, version 1 and ReactJSKenneth Ceyer
 

More from Kenneth Ceyer (14)

이미지 프로세싱 in Python Open Source - PYCON KOREA 2020
이미지 프로세싱 in Python Open Source - PYCON KOREA 2020이미지 프로세싱 in Python Open Source - PYCON KOREA 2020
이미지 프로세싱 in Python Open Source - PYCON KOREA 2020
 
정적 컨텐츠 제너레이터 GatsbyJS에 대해서 알아봅시다.
정적 컨텐츠 제너레이터 GatsbyJS에 대해서 알아봅시다.정적 컨텐츠 제너레이터 GatsbyJS에 대해서 알아봅시다.
정적 컨텐츠 제너레이터 GatsbyJS에 대해서 알아봅시다.
 
LP(linear programming) Algorithm
LP(linear programming) AlgorithmLP(linear programming) Algorithm
LP(linear programming) Algorithm
 
AI 연구자를 위한 클린코드 - GDG DevFest Seoul 2019
AI 연구자를 위한 클린코드 - GDG DevFest Seoul 2019AI 연구자를 위한 클린코드 - GDG DevFest Seoul 2019
AI 연구자를 위한 클린코드 - GDG DevFest Seoul 2019
 
AllReduce for distributed learning I/O Extended Seoul
AllReduce for distributed learning I/O Extended SeoulAllReduce for distributed learning I/O Extended Seoul
AllReduce for distributed learning I/O Extended Seoul
 
gRPC와 goroutine 톺아보기 - GDG Golang Korea 2019
gRPC와 goroutine 톺아보기 - GDG Golang Korea 2019gRPC와 goroutine 톺아보기 - GDG Golang Korea 2019
gRPC와 goroutine 톺아보기 - GDG Golang Korea 2019
 
How to use vim
How to use vimHow to use vim
How to use vim
 
Test and refactoring
Test and refactoringTest and refactoring
Test and refactoring
 
Deep dive into Modern frameworks - HTML5 Forum 2018
Deep dive into Modern frameworks - HTML5 Forum 2018Deep dive into Modern frameworks - HTML5 Forum 2018
Deep dive into Modern frameworks - HTML5 Forum 2018
 
우아하게 준비하는 테스트와 리팩토링 - PyCon Korea 2018
우아하게 준비하는 테스트와 리팩토링 - PyCon Korea 2018우아하게 준비하는 테스트와 리팩토링 - PyCon Korea 2018
우아하게 준비하는 테스트와 리팩토링 - PyCon Korea 2018
 
GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기
 GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기 GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기
GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기
 
Dealing with Python Reactively - PyCon Korea 2017
Dealing with Python Reactively - PyCon Korea 2017Dealing with Python Reactively - PyCon Korea 2017
Dealing with Python Reactively - PyCon Korea 2017
 
파이썬 리액티브하게 짜기 - PyCon Korea 2017
파이썬 리액티브하게 짜기 - PyCon Korea 2017파이썬 리액티브하게 짜기 - PyCon Korea 2017
파이썬 리액티브하게 짜기 - PyCon Korea 2017
 
AngularJS 2, version 1 and ReactJS
AngularJS 2, version 1 and ReactJSAngularJS 2, version 1 and ReactJS
AngularJS 2, version 1 and ReactJS
 

하둡 에코시스템 위에서 환상적인 테이크오프 - DSTS 2019

  • 1. 하둡 에코시스템 위에서 환상적인 테이크오프 🏄♀ 한성민
  • 2. CONTENTS 다가오는 거대한 데이터 하둡과 에코시스템 협업을 위한 하둡 돌아보며 01 02 03 04
  • 5. 행복했던 우리들의 데이터 처리 01_다가오는 거대한 데이터 CSV를 통해서 데이터를 처리한 경험이 한번쯤 있으실 겁니다. 데이터를 읽기도 쉽고, 불러오고 저장하는 것도 쉬워서 항상 많은 사랑을 받고 있죠 😆 아마도 우리들 분석할 CSV 데이터 주피터 노트북 분석 시각화
  • 6. 데이터 협업 환경 01_다가오는 거대한 데이터 CSV로 협업하는 것도 복잡하지는 않습니다. 물론 파일을 전달하는 것이기에, 조금 번거로울 뿐이죠 아마도 우리들 CSV 데이터 전처리 데이터 직장동료 분석 데이터 프로세싱 메일전송
  • 7. 협업에서 찾아오는 문제들 01_다가오는 거대한 데이터 물론 협업할 때부터 보이지 않는 문제가 터지기 시작합니다. 데이터 전달일자에 갑자기 깨진 파일 (백업이 없다) 비기! 최종본 분신술 복구할려고 메일을 뒤졌지만 기간이 만료됬다.
  • 8. 데이터베이스를 통한 협업 시도 01_다가오는 거대한 데이터 MongoDB MySQL 아마도 우리들 분석 및 전처리 데이터 변경 안내 데이터베이스를 사용하면, 협업에서 발생하는 문제를 줄일 수 있습니다. 주기적인 데이터백업
  • 9. 그들이.. 온다.... 01_다가오는 거대한 데이터 누구나 그럴싸한 계획을 가지고 있다, 데이터베이스가 터지기 전까진
  • 10. 오늘날에는 Data 기술의 향상이 불러온 것 01_다가오는 거대한 데이터 https://techcrunch.com/2012/08/22/how-big-is-facebooks-data-2-5-billion-pieces-of-content-and-500-terabytes-ingested-every-day/
  • 11. 데이터가 늘어남에 따라, 늦어지는 처리 속도 01_다가오는 거대한 데이터 데이터를 10만개 정도 넣어보고...
  • 12. 데이터가 늘어남에 따라, 늦어지는 처리 속도 01_다가오는 거대한 데이터 delimiter $ CREATE FUNCTION grade(score INT) RETURNS CHAR BEGIN DECLARE grade_score CHAR; SELECT CASE WHEN score BETWEEN 90 AND 100 THEN 'A' WHEN score BETWEEN 80 AND 89 THEN 'B' WHEN score BETWEEN 70 AND 79 THEN 'C' WHEN score BETWEEN 60 AND 69 THEN 'D' ELSE 'F' END INTO grade_score; RETURN grade_score; END $ SELECT grade((score_eng + score_math + score_science + score_history) / 4) AS grade_score, COUNT(*) AS count, CONCAT(CEILING(COUNT(*) / (SELECT COUNT(*) FROM dsts.dsts) * 100), '%') FROM dsts.dsts GROUP BY grade_score ORDER BY grade_score; 집계 함수와 CASE 문, 서브쿼리 조합 (지옥의 조합) 이용해서 전체 데이터를 취합하는 쿼리를 테스트해봅시다. *참고로 좌측의 쿼리는 전체 점수를 평균내어 아래와 같은 기준으로 등급을 매겨줍니다. 90~100 -> ‘A’ 80~89 -> ‘B’ 70~79 -> ‘C’ 60~69 -> ‘D’ 그 밖에 -> ‘F’ 결과 값은 각 등급별 사람의 수와 그 등급이 전체에서 몇 % 비중을 가지는지 보여줍니다.
  • 13. 데이터가 늘어남에 따라, 늦어지는 처리 속도 01_다가오는 거대한 데이터 쿼리 결과를 조회하기까지 총 11초가 소요되었습니다. 이 정도면 나쁜 조건은 아닙니다.
  • 14. 데이터가 늘어남에 따라, 늦어지는 처리 속도 01_다가오는 거대한 데이터 1천만 Rows를 가진 테이블에서의 쿼리 결과는 총 1분 50초가 소요되었습니다. 점점 작업 조회가 늦어집니다. 😢
  • 15. 여기서 질문! 01_다가오는 거대한 데이터 만약 1억건의 데이터를 검색하고자 한다면, 어느정도의 시간이 소요될 것 같으세요?
  • 16. 1억건 데이터에서 오는 데이터처리의 한계 01_다가오는 거대한 데이터 이제 1억건의 Rows를 가진 테이블에서의 쿼리를 실행했습니다. 결과는 총 18분 56초가 소요되었습니다 😭
  • 19. 하둡을 대표하는 키워드들 02_하둡과 에코시스템 맵 리듀스 HDFS 하이브 YARN 스파크
  • 20. 하둡이 가지고 있는 생태계 02_하둡과 에코시스템 하둡은 수 많은 프레임워크들의 생태계를 가지고 있습니다. 다양한 프레임워크들은 데이터 사이언티스트들의 업무에 맞게 골라가며 사용할 수 있게 되어있습니다.
  • 21. 하둡의 구성 02_하둡과 에코시스템 HDFS YARN Map Reduce Others 하둡은 크게 3가지의 구조로 나눌 수 있습니다. 거대한 데이터를 처리하는 메커니즘인 맵 리듀스(MapReduce) 분산 환경에서 흩어진 리소스를 적절하게 관리해주는 얀(Yarn) 그리고 모든 데이터를 분산하여 보관하는 HDFS 하둡을 얘기할 땐 이 세가지 구성요소를 얘기합니다. YARN HDFS Resourc e Manager Name Node Node Manager Data Node Node Manager Data Node Node Manager Data Node Node Manager Data Node
  • 22. 수 많은 데이터 프레임워크들 02_하둡과 에코시스템 코디네이터 리소스매니저 데 이 터 수 집 데 이 터 배 치 분 석 데 이 터 처 리 실 시 간 데 이 터 분 석 대 화 형 분 석 워크플로우 관리 클라우드 에디터 데이터 시각화
  • 23. 수 많은 데이터 프레임워크들 02_하둡과 에코시스템 대화형 쿼리 엔진 데이터베이스 배치 데이터 분석 워크 플로우 코디네이터 메시지 처리 분산 리소스 관리 인메모리 데이터 처리 데이터 수집 시각화
  • 24. 수 많은 데이터 프레임워크들 02_하둡과 에코시스템 대화형 쿼리 엔진 데이터베이스 배치 데이터 분석 워크 플로우 코디네이터 메시지 처리 분산 리소스 관리 인메모리 데이터 처리 데이터 수집 시각화 MapReduce, Apache Tez Apache Hive, Apache HBase Presto, Impala, Apache Tajo Oozie, Ambari Zookeeper Apache Spark YARN, Apache Mesos Apache Kafka Apache Sqoop, Hiho, Flume, Chunkwa Apache Zeppelin, Apache Superset
  • 26. 기존 데이터 처리 과정의 비효율성 03_협업을 위한 하둡 아마도 우리들 Data Lake 분석할 CSV 데이터 주피터 노트북 시각화 ETL 쿼리 기존에는 데이터를 시각화하기 위해서 쿼리를 통해 원하는 데이터를 확인하고, 그것을 가공하고 추출해서(ETL), 시각화하기 까지 각 단계를 별도로 관리했습니다.
  • 27. 기존 데이터 처리 과정의 비효율성 03_협업을 위한 하둡 로그 수집 트랜잭션 데이터 NOSQL Batch Adhoc 분석 로그 집계 Batch 분석 비정형 분석 서비스 아마도 우리들 데이터 저장소가 하나면 다행이지만, 업무에서 사용하는 데이터 소스가 다양하다면 업무처리는 더 복잡해집니다.
  • 28. 하둡으로의 대체 03_협업을 위한 하둡 데이터 저장소가 하나면 다행이지만, 업무에서 사용하는 데이터 소스가 다양하다면 업무처리는 더 복잡해집니다. Batch 분석 비정형 분석 인메모리 분석 실시간 분석 Data lake (Hadoop HDFS) 아마도 우리들
  • 29. 데이터 시각화 03_협업을 위한 하둡 여러가지 데이터 소스를 자동으로 불러와 시각화를 도와주기 때문에 매번 새로 추가된 데이터를 불러와 차트를 만드는 작업을 할 필요가 없어집니다. Apache Zeppelin Apache Superset
  • 30. 데이터 플로우 03_협업을 위한 하둡 서비스 데이터베이스 Pub/Sub 로그 저장소 Cold Data Data lake Query EngineVisualization Workflow 아마도 우리들
  • 31. 데이터 플로우 03_협업을 위한 하둡 Workflow (Airflow) Service Flow Hadoop HDFS Pub/Sub Visualization Query Engine 로그데이터 수집 Pipeline Pipeline Schedule Query Query
  • 34. CSV
  • 36.