SlideShare a Scribd company logo
1 of 33
Download to read offline
Apache Tajo 프로젝트 소개 
및 최신 기술동향 
손지훈
발표자 소개 
● 손지훈 (Jihoon Son) 
o 박사 과정 수료 (Computer Science & Engineering, 
2010.3 ~) 
o Apache Tajo PMC and Committer (2014.5.1 ~) 
o Mentor of Google Summer of Code (2013) 
● 연락처 
o Email: jihoonson AT apache.org 
o LinkedIn: https://www.linkedin.com/in/jihoonson 
o Twitter: @jihoonson
Contents 
● Tajo란? 
● Tajo의 특징 
● Tajo 응용의 예 
● 적용 사례 
● 앞으로의 발전 방향
Tajo란? 
● 빅데이터 분석을 위한 데이터웨어하우스 시스템 
● SQL-on-Hadoop 
o 지속적으로 Hadoop에 저장되는 데이터를 관리 
o Hadoop에 저장된 대용량의 데이터에 대해 효과적으 
로 SQL 질의를 처리
Tajo란? 
Data sources 
Database 
ERP 
CRM 
Clickstream 
Weblogs, 
Documents, 
Text 
Social 
media 
Users 
Reporting, 
OLAP analysis, 
Data mining 
Data warehouse
Tajo의 특징 
● 하둡과 데이터베이스의 
기술적 융합 
o Hadoop의 분산 처리 기 
술 
▪ 확장성, 신뢰성 
o 데이터베이스의 SQL 질 
의 처리 기술 
▪ SQL 질의 처리 엔진, 질 
의 최적화
Tajo의 특징 
● 풍부한 SQL 기능 지원 
● 효율적인 SQL 질의 처리 
● 신뢰성 있는 질의 처리 
● 그 외 
o 확장성, 이종성
Tajo의 특징 
● 풍부한 SQL 기능 지원 
o 표준 호환 SQL 지원 
o 다양한 Join 지원 
▪ INNER, CROSS, LEFT/RIGHT/FULL OUTER, 
LEFT/RIGHT SEMI, LEFT/RIGHT ANTI JOINS 
o Window function 지원 
▪ 명시된 window frame에 대해, 각각의 window frame에 포함 
되는 데이터에 대한 결과값을 계산
Tajo의 특징 
● 풍부한 SQL 기능 지원 
o 표준 호환 SQL 지원 
o 다양한 Join 지원 
SELECT age, avg(salary) as avg_sal 
OVER (ORDER BY age) 
FROM empsalary; 
▪ INNER, CROSS, LEFT/RIGHT/FULL OUTER, 
LEFT/RIGHT SEMI, LEFT/RIGHT ANTI JOINS 
o Window function 지원 
▪ 명시된 window frame에 대해, 각각의 window frame에 포함 
되는 데이터에 대한 결과값을 계산 
age avg_sal 
30 4000 
32 4500 
... 
window frame
Tajo의 특징 
● 효율적인 SQL 질의 처리 
o 고유의 분산 질의 처리 엔진 
▪ Hadoop의 MapReduce를 사용하지 않음 
▪ 관계형 질의 처리 엔진 
● SQL 처리에 최적화 
▪ 대용량의 데이터를 빠르게 처리 
● 대용량의 데이터를 여러 클러스터 노드가 함께 처리
Tajo의 특징 
● 효율적인 SQL 질의 처리 
o 고유의 분산 질의 처리 엔진 
Tajo Master 
Tajo Worker Tajo Worker ... 
Tajo Worker 
SQL 
SQL engine 
SQL engine SQL engine
Tajo의 특징 
● 효율적인 SQL 질의 처리 
o 발전된 질의 처리 최적화 
▪ 데이터베이스의 첨단 질의 최적화 기법 적용 
● Join 순서 최적화, In-memory 질의 처리 기법 등 
▪ 클라우드 환경에 적합한 새로운 질의 처리 최적화 기법 적용 
● 동적 로드 밸런싱 (Dynamic Load Balancing) 
o 질의 수행 중 동적으로 워커들의 로드를 조절 
● 점진적 질의 최적화 기법 (Progressive Query Optimization) 
o 질의를 수행하면서 점진적으로 수행 중인 질의를 최적화 
● 시간이 오래 걸리는 질의 처리에 효율적
Tajo의 특징 
● 효율적인 SQL 질의 처리 
o 동적 로드 밸런싱 
Tajo Master 
T2 T1 T3 
Tajo Worker Tajo Worker ... 
Tajo Worker 
SQL engine 
SQL engine SQL engine
Tajo의 특징 
● 효율적인 SQL 질의 처리 
o 동적 로드 밸런싱 
Tajo Master 
T2 T5 T1 T3 T4 T6 
Tajo Worker Tajo Worker ... 
Tajo Worker 
SQL engine 
SQL engine SQL engine
Tajo의 특징 
● 신뢰성 있는 질의 처리 
o 장애 허용 질의 처리 
▪ 질의 처리 중, 일부 클러스터 노드에 장애가 발생해도 질의 
를 끝까지 마칠 수 있음 
o 높은 가용성 (High availability) 
▪ Tajo 클러스터를 총괄하는 Master 노드에 장애가 발생하면 
자동으로 백업 Master가 역할을 대신함 
▪ 단일 장애점 (Single Point of Failure) 문제 해결
Tajo의 특징 
● 신뢰성 있는 질의 처리 
o 장애 허용 질의 처리 
Tajo Master 
T2 T5 T1 T3 T4 T6 
Tajo Worker Tajo Worker ... 
Tajo Worker 
SQL engine 
SQL engine SQL engine
Tajo의 특징 
● 신뢰성 있는 질의 처리 
o 장애 허용 질의 처리 
Tajo Master 
T2 T5 T3 T1 T4 T6 T3 T4 T6 
Tajo Worker Tajo Worker ... 
Tajo Worker 
SQL engine 
SQL engine SQL engine
Tajo의 특징 
● 신뢰성 있는 질의 처리 
o 높은 가용성 (High availability) 
Tajo Master 
Tajo Master ... Tajo Master 
T2 T5 T1 T3 T4 T6 
Tajo Worker Tajo Worker ... 
Tajo Worker 
SQL engine 
SQL engine SQL engine
● 신뢰성 있는 질의 처리 
o 높은 가용성 (High availability) 
Tajo Master 
Tajo의 특징 
Tajo Master ... Tajo Master 
T2 T5 T1 T3 T4 T6 
Tajo Worker Tajo Worker ... 
Tajo Worker 
SQL engine 
SQL engine SQL engine
Tajo의 특징 
● 확장성 
o 복잡한 과정 없이, 클러스터에 노드를 단순히 추가함 
으로써 클러스터 확장 가능 
● 이종성 
o 서로 다른 컴퓨팅 능력을 가진 노드들로 구성된 클러 
스터에서도 잘 동작 
▪ 분산 질의 실행 시, 각 노드들의 컴퓨팅 능력을 고려하여 작 
업 할당
Tajo 응용의 예 
● 다양한 소스로부터 지속적으로 추가되는 데이터 
관리에 용이 
o 하나의 Hadoop 디렉토리에 저장된 데이터를 하나의 
테이블로 인식 
o Partitioned table 지원 
▪ 테이블을 저장할 때, 일정한 기준에 따라 테이블을 나누어 
저장 
● 예) 상품 판매 데이터를 저장할 때, 지점 별로 다른 디렉토리에 
나누어 저장 가능 
● 관리하기 용이하며, 질의 성능 향상에 사용될 수 있음 
▪ 현재 Hive와 호환되는 column partitioning 지원
Tajo 응용의 예 
sales_table 
sales 
Seoul 
Busan 
... 
2014-11-01.dat 
2014-11-02.dat 
... 
Gwangju 
User 
Sales data 
SQL query
Tajo 응용의 예 
● 배치 분석 
o 큰 데이터를 한 번에 처리 
▪ 시간이 오래 걸림 
▪ 일반적으로 처리할 질의가 미리 정의되어 있음 
▪ 사용자가 많지 않은 시간에 주로 수행 
o 예) "올해와 작년의 수익 차를 분기 별, 월 별, 지점 별 
로 보여라"
Tajo 응용의 예 
● 대화형 분석 
o 사용자가 시스템과 대화하듯 분석 질의를 수행 
▪ 일반적으로 시간이 짧게 걸림 
▪ 사용자가 임의의 질의를 수행 
● 탐험적 분석 
o 예) "지난 한시간 동안 서울 지점에서 가장 많이 판매 
된 물품 10개를 카테고리 별로 출력하라"
적용 사례 
● SK Telecom 
o 목적: 통신망 로그 분석 
o 클러스터 크기: 50대 이상 
o 일일 데이터 처리량: 200 TB 이상 
o 관련 자료 
▪ News: http://news.imaso.co.kr/123151 
▪ Slide: http://www.slideshare.net/deview/2a3big-data-launching- 
episodes
적용 사례 
● Gruter 
o 목적: 소셜 네트워크 서비스 분석 
o 클러스터 크기: 약 30대 
o 일일 데이터 처리량: 수백 기가 
● LOEN 엔터테인먼트 
o 목적: MelOn 서비스 로그 분석 
o 클러스터 크기: 약 50대
Tajo Releases 
● 버전 0.2.0 
o 릴리즈 날짜: 2013.11.20 
o 주요 내용: 더 많은 SQL 기능 지원 
● 버전 0.8.0 
o 릴리즈 날짜: 2014.05.01 
o 주요 내용: 안전성 개선
Tajo Releases 
● 버전 0.9.0 
o 릴리즈 날짜: 2014.10.21 
o 주요 내용: 더 많은 SQL 기능 지원 및 질의 처리 성능 
향상 
● 버전 0.9.1 
o 릴리즈 계획: 2014.11 
o 주요 계획 
▪ 비정형 파일 포멧 (JSON) 지원 
▪ 네트워크 비용 감소로 인한 질의 처리 성능 향상
앞으로의 발전 방향 
● 근사 질의 처리 (Approximate query processing) 
o 빅데이터에서 반드시 정확한 결과 값을 얻을 필요 없음 
o 정확도가 떨어지는 대신, 아주 빠른 시간 안에 결과 값 
도출 가능 
o 예) BlinkDB
앞으로의 발전 방향 
● 근사 질의 처리 (Approximate query processing) 
o 빅데이터에서 반드시 정확한 결과 값을 얻을 필요 없음 
o 정확도가 떨어지는 대신, 아주 빠른 시간 안에 결과 값 
도출 가능 
o 예) Online aggregation 
SELECT major, avg(score) 
FROM students 
GROUP BY major
앞으로의 발전 방향 
● 질의 처리 성능 향상 
o 최신 데이터베이스 질의 처리 기법 적용 
▪ Vectorized query processing, runtime code generation 
o 질의 최적화 기법 향상 
▪ 리소스를 효율적으로 활용하는 병렬 처리 기법 
▪ 색인의 효율적인 활용 
● 다양한 타입의 저장소 지원 
o HBase, MongoDB, local file system, ...
앞으로의 발전 방향 
● Database connectivity 지원 
o ODBC 
● Yarn 리소스 스케줄러 지원 
o Hadoop의 Yarn 리소스 스케줄러와 호환 
o Yarn을 이용하여 Tajo의 리소스를 스케줄링 
● 사용자 정의 함수 (UDF) 지원 
o CREATE/DROP FUNCTION 구문 지원
Join Us! 
http://tajo.apache.org/

More Related Content

Viewers also liked

클라우드컴퓨팅 V4
클라우드컴퓨팅 V4클라우드컴퓨팅 V4
클라우드컴퓨팅 V4Alex Yang
 
IoT 차세대 제품의 UX 통찰
IoT 차세대 제품의 UX 통찰IoT 차세대 제품의 UX 통찰
IoT 차세대 제품의 UX 통찰Billy Choi
 
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안욱래 김
 
[2016 11월 세미나] Kakao 프라이빗 클라우드와 컨테이너 기반 서비스 런칭기
[2016 11월 세미나] Kakao 프라이빗 클라우드와 컨테이너 기반 서비스 런칭기[2016 11월 세미나] Kakao 프라이빗 클라우드와 컨테이너 기반 서비스 런칭기
[2016 11월 세미나] Kakao 프라이빗 클라우드와 컨테이너 기반 서비스 런칭기OpenStack Korea Community
 
MS 차세대 모바일 게임 전략 및 XNA
MS 차세대 모바일 게임 전략 및 XNAMS 차세대 모바일 게임 전략 및 XNA
MS 차세대 모바일 게임 전략 및 XNASeo Jinho
 
투이컨설팅 제30회 Y세미나 : 설문결과
투이컨설팅 제30회 Y세미나 : 설문결과투이컨설팅 제30회 Y세미나 : 설문결과
투이컨설팅 제30회 Y세미나 : 설문결과2econsulting
 
포티넷 차세대 utm
포티넷 차세대 utm 포티넷 차세대 utm
포티넷 차세대 utm Yong-uk Choe
 
인셉션 프로젝트 최종 발표
인셉션 프로젝트 최종 발표인셉션 프로젝트 최종 발표
인셉션 프로젝트 최종 발표tikasy
 
2014 모바일 문서보안 및 통제시스템_시온
2014 모바일 문서보안 및 통제시스템_시온2014 모바일 문서보안 및 통제시스템_시온
2014 모바일 문서보안 및 통제시스템_시온시온시큐리티
 
차세대 UX/UI 기술 및 산업동향
차세대 UX/UI 기술 및 산업동향차세대 UX/UI 기술 및 산업동향
차세대 UX/UI 기술 및 산업동향JeongHeon Lee
 
NDC08_실시간비주얼그래프편집
NDC08_실시간비주얼그래프편집NDC08_실시간비주얼그래프편집
NDC08_실시간비주얼그래프편집noerror
 

Viewers also liked (13)

Loadcomplete
LoadcompleteLoadcomplete
Loadcomplete
 
차세대 OPAC의 동향 및 전망
차세대 OPAC의 동향 및 전망차세대 OPAC의 동향 및 전망
차세대 OPAC의 동향 및 전망
 
클라우드컴퓨팅 V4
클라우드컴퓨팅 V4클라우드컴퓨팅 V4
클라우드컴퓨팅 V4
 
IoT 차세대 제품의 UX 통찰
IoT 차세대 제품의 UX 통찰IoT 차세대 제품의 UX 통찰
IoT 차세대 제품의 UX 통찰
 
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
 
[2016 11월 세미나] Kakao 프라이빗 클라우드와 컨테이너 기반 서비스 런칭기
[2016 11월 세미나] Kakao 프라이빗 클라우드와 컨테이너 기반 서비스 런칭기[2016 11월 세미나] Kakao 프라이빗 클라우드와 컨테이너 기반 서비스 런칭기
[2016 11월 세미나] Kakao 프라이빗 클라우드와 컨테이너 기반 서비스 런칭기
 
MS 차세대 모바일 게임 전략 및 XNA
MS 차세대 모바일 게임 전략 및 XNAMS 차세대 모바일 게임 전략 및 XNA
MS 차세대 모바일 게임 전략 및 XNA
 
투이컨설팅 제30회 Y세미나 : 설문결과
투이컨설팅 제30회 Y세미나 : 설문결과투이컨설팅 제30회 Y세미나 : 설문결과
투이컨설팅 제30회 Y세미나 : 설문결과
 
포티넷 차세대 utm
포티넷 차세대 utm 포티넷 차세대 utm
포티넷 차세대 utm
 
인셉션 프로젝트 최종 발표
인셉션 프로젝트 최종 발표인셉션 프로젝트 최종 발표
인셉션 프로젝트 최종 발표
 
2014 모바일 문서보안 및 통제시스템_시온
2014 모바일 문서보안 및 통제시스템_시온2014 모바일 문서보안 및 통제시스템_시온
2014 모바일 문서보안 및 통제시스템_시온
 
차세대 UX/UI 기술 및 산업동향
차세대 UX/UI 기술 및 산업동향차세대 UX/UI 기술 및 산업동향
차세대 UX/UI 기술 및 산업동향
 
NDC08_실시간비주얼그래프편집
NDC08_실시간비주얼그래프편집NDC08_실시간비주얼그래프편집
NDC08_실시간비주얼그래프편집
 

Similar to Apache Tajo 프로젝트 소개 및 최신 기술동향

스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWSMatthew (정재화)
 
Introduction to Apache Tajo
Introduction to Apache TajoIntroduction to Apache Tajo
Introduction to Apache TajoGruter
 
스타트업사례로 본 로그 데이터분석 : Tajo on AWS
스타트업사례로 본 로그 데이터분석 : Tajo on AWS스타트업사례로 본 로그 데이터분석 : Tajo on AWS
스타트업사례로 본 로그 데이터분석 : Tajo on AWSGruter
 
Mastering Gomoku - Recap
Mastering Gomoku - RecapMastering Gomoku - Recap
Mastering Gomoku - RecapKwanghee Choi
 
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...Amazon Web Services Korea
 
Big data analysis with R and Apache Tajo (in Korean)
Big data analysis with R and Apache Tajo (in Korean)Big data analysis with R and Apache Tajo (in Korean)
Big data analysis with R and Apache Tajo (in Korean)Gruter
 
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
 
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017Amazon Web Services Korea
 
SQream DB, GPU-accelerated data warehouse
SQream DB, GPU-accelerated data warehouseSQream DB, GPU-accelerated data warehouse
SQream DB, GPU-accelerated data warehouseNAVER Engineering
 
4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴Terry Cho
 
E-commerce BigData Scale AI Journey
E-commerce BigData Scale AI JourneyE-commerce BigData Scale AI Journey
E-commerce BigData Scale AI Journeyhoondong kim
 
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019devCAT Studio, NEXON
 
Tajo korea meetup oct 2015-spatial tajo
Tajo korea meetup oct 2015-spatial tajoTajo korea meetup oct 2015-spatial tajo
Tajo korea meetup oct 2015-spatial tajoBD
 
쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기Brian Hong
 
AWS에서 돌아가는 SAP에 대해 당신이 궁금해 하던 실제이야기 - AWS Summit Seoul 2017
AWS에서 돌아가는 SAP에 대해 당신이 궁금해 하던 실제이야기 - AWS Summit Seoul 2017AWS에서 돌아가는 SAP에 대해 당신이 궁금해 하던 실제이야기 - AWS Summit Seoul 2017
AWS에서 돌아가는 SAP에 대해 당신이 궁금해 하던 실제이야기 - AWS Summit Seoul 2017Amazon Web Services Korea
 
빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)Channy Yun
 
장고로 웹서비스 만들기 기초
장고로 웹서비스 만들기   기초장고로 웹서비스 만들기   기초
장고로 웹서비스 만들기 기초Kwangyoun Jung
 
[246] foursquare데이터라이프사이클 설현준
[246] foursquare데이터라이프사이클 설현준[246] foursquare데이터라이프사이클 설현준
[246] foursquare데이터라이프사이클 설현준NAVER D2
 
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...Amazon Web Services Korea
 
Cloud Taekwon 2015 - AWS를 활용한 로그 분석
Cloud Taekwon 2015 - AWS를 활용한 로그 분석Cloud Taekwon 2015 - AWS를 활용한 로그 분석
Cloud Taekwon 2015 - AWS를 활용한 로그 분석Amazon Web Services Korea
 

Similar to Apache Tajo 프로젝트 소개 및 최신 기술동향 (20)

스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
 
Introduction to Apache Tajo
Introduction to Apache TajoIntroduction to Apache Tajo
Introduction to Apache Tajo
 
스타트업사례로 본 로그 데이터분석 : Tajo on AWS
스타트업사례로 본 로그 데이터분석 : Tajo on AWS스타트업사례로 본 로그 데이터분석 : Tajo on AWS
스타트업사례로 본 로그 데이터분석 : Tajo on AWS
 
Mastering Gomoku - Recap
Mastering Gomoku - RecapMastering Gomoku - Recap
Mastering Gomoku - Recap
 
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
 
Big data analysis with R and Apache Tajo (in Korean)
Big data analysis with R and Apache Tajo (in Korean)Big data analysis with R and Apache Tajo (in Korean)
Big data analysis with R and Apache Tajo (in Korean)
 
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
 
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
 
SQream DB, GPU-accelerated data warehouse
SQream DB, GPU-accelerated data warehouseSQream DB, GPU-accelerated data warehouse
SQream DB, GPU-accelerated data warehouse
 
4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴
 
E-commerce BigData Scale AI Journey
E-commerce BigData Scale AI JourneyE-commerce BigData Scale AI Journey
E-commerce BigData Scale AI Journey
 
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
 
Tajo korea meetup oct 2015-spatial tajo
Tajo korea meetup oct 2015-spatial tajoTajo korea meetup oct 2015-spatial tajo
Tajo korea meetup oct 2015-spatial tajo
 
쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기
 
AWS에서 돌아가는 SAP에 대해 당신이 궁금해 하던 실제이야기 - AWS Summit Seoul 2017
AWS에서 돌아가는 SAP에 대해 당신이 궁금해 하던 실제이야기 - AWS Summit Seoul 2017AWS에서 돌아가는 SAP에 대해 당신이 궁금해 하던 실제이야기 - AWS Summit Seoul 2017
AWS에서 돌아가는 SAP에 대해 당신이 궁금해 하던 실제이야기 - AWS Summit Seoul 2017
 
빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)
 
장고로 웹서비스 만들기 기초
장고로 웹서비스 만들기   기초장고로 웹서비스 만들기   기초
장고로 웹서비스 만들기 기초
 
[246] foursquare데이터라이프사이클 설현준
[246] foursquare데이터라이프사이클 설현준[246] foursquare데이터라이프사이클 설현준
[246] foursquare데이터라이프사이클 설현준
 
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
 
Cloud Taekwon 2015 - AWS를 활용한 로그 분석
Cloud Taekwon 2015 - AWS를 활용한 로그 분석Cloud Taekwon 2015 - AWS를 활용한 로그 분석
Cloud Taekwon 2015 - AWS를 활용한 로그 분석
 

More from Jihoon Son

Apache tajo configuration
Apache tajo configurationApache tajo configuration
Apache tajo configurationJihoon Son
 
Performance evaluation of apache tajo
Performance evaluation of apache tajoPerformance evaluation of apache tajo
Performance evaluation of apache tajoJihoon Son
 
Introduction to Apache Tajo: Future of Data Warehouse
Introduction to Apache Tajo: Future of Data WarehouseIntroduction to Apache Tajo: Future of Data Warehouse
Introduction to Apache Tajo: Future of Data WarehouseJihoon Son
 
Query optimization in Apache Tajo
Query optimization in Apache TajoQuery optimization in Apache Tajo
Query optimization in Apache TajoJihoon Son
 
Introduction to Apache Tajo: Data Warehouse for Big Data
Introduction to Apache Tajo: Data Warehouse for Big DataIntroduction to Apache Tajo: Data Warehouse for Big Data
Introduction to Apache Tajo: Data Warehouse for Big DataJihoon Son
 
Apache Tajo on Swift: Bringing SQL to the OpenStack World
Apache Tajo on Swift: Bringing SQL to the OpenStack WorldApache Tajo on Swift: Bringing SQL to the OpenStack World
Apache Tajo on Swift: Bringing SQL to the OpenStack WorldJihoon Son
 
Apache Tajo on Swift
Apache Tajo on SwiftApache Tajo on Swift
Apache Tajo on SwiftJihoon Son
 
대학과 오픈소스
대학과 오픈소스대학과 오픈소스
대학과 오픈소스Jihoon Son
 

More from Jihoon Son (8)

Apache tajo configuration
Apache tajo configurationApache tajo configuration
Apache tajo configuration
 
Performance evaluation of apache tajo
Performance evaluation of apache tajoPerformance evaluation of apache tajo
Performance evaluation of apache tajo
 
Introduction to Apache Tajo: Future of Data Warehouse
Introduction to Apache Tajo: Future of Data WarehouseIntroduction to Apache Tajo: Future of Data Warehouse
Introduction to Apache Tajo: Future of Data Warehouse
 
Query optimization in Apache Tajo
Query optimization in Apache TajoQuery optimization in Apache Tajo
Query optimization in Apache Tajo
 
Introduction to Apache Tajo: Data Warehouse for Big Data
Introduction to Apache Tajo: Data Warehouse for Big DataIntroduction to Apache Tajo: Data Warehouse for Big Data
Introduction to Apache Tajo: Data Warehouse for Big Data
 
Apache Tajo on Swift: Bringing SQL to the OpenStack World
Apache Tajo on Swift: Bringing SQL to the OpenStack WorldApache Tajo on Swift: Bringing SQL to the OpenStack World
Apache Tajo on Swift: Bringing SQL to the OpenStack World
 
Apache Tajo on Swift
Apache Tajo on SwiftApache Tajo on Swift
Apache Tajo on Swift
 
대학과 오픈소스
대학과 오픈소스대학과 오픈소스
대학과 오픈소스
 

Apache Tajo 프로젝트 소개 및 최신 기술동향

  • 1. Apache Tajo 프로젝트 소개 및 최신 기술동향 손지훈
  • 2. 발표자 소개 ● 손지훈 (Jihoon Son) o 박사 과정 수료 (Computer Science & Engineering, 2010.3 ~) o Apache Tajo PMC and Committer (2014.5.1 ~) o Mentor of Google Summer of Code (2013) ● 연락처 o Email: jihoonson AT apache.org o LinkedIn: https://www.linkedin.com/in/jihoonson o Twitter: @jihoonson
  • 3. Contents ● Tajo란? ● Tajo의 특징 ● Tajo 응용의 예 ● 적용 사례 ● 앞으로의 발전 방향
  • 4. Tajo란? ● 빅데이터 분석을 위한 데이터웨어하우스 시스템 ● SQL-on-Hadoop o 지속적으로 Hadoop에 저장되는 데이터를 관리 o Hadoop에 저장된 대용량의 데이터에 대해 효과적으 로 SQL 질의를 처리
  • 5. Tajo란? Data sources Database ERP CRM Clickstream Weblogs, Documents, Text Social media Users Reporting, OLAP analysis, Data mining Data warehouse
  • 6. Tajo의 특징 ● 하둡과 데이터베이스의 기술적 융합 o Hadoop의 분산 처리 기 술 ▪ 확장성, 신뢰성 o 데이터베이스의 SQL 질 의 처리 기술 ▪ SQL 질의 처리 엔진, 질 의 최적화
  • 7. Tajo의 특징 ● 풍부한 SQL 기능 지원 ● 효율적인 SQL 질의 처리 ● 신뢰성 있는 질의 처리 ● 그 외 o 확장성, 이종성
  • 8. Tajo의 특징 ● 풍부한 SQL 기능 지원 o 표준 호환 SQL 지원 o 다양한 Join 지원 ▪ INNER, CROSS, LEFT/RIGHT/FULL OUTER, LEFT/RIGHT SEMI, LEFT/RIGHT ANTI JOINS o Window function 지원 ▪ 명시된 window frame에 대해, 각각의 window frame에 포함 되는 데이터에 대한 결과값을 계산
  • 9. Tajo의 특징 ● 풍부한 SQL 기능 지원 o 표준 호환 SQL 지원 o 다양한 Join 지원 SELECT age, avg(salary) as avg_sal OVER (ORDER BY age) FROM empsalary; ▪ INNER, CROSS, LEFT/RIGHT/FULL OUTER, LEFT/RIGHT SEMI, LEFT/RIGHT ANTI JOINS o Window function 지원 ▪ 명시된 window frame에 대해, 각각의 window frame에 포함 되는 데이터에 대한 결과값을 계산 age avg_sal 30 4000 32 4500 ... window frame
  • 10. Tajo의 특징 ● 효율적인 SQL 질의 처리 o 고유의 분산 질의 처리 엔진 ▪ Hadoop의 MapReduce를 사용하지 않음 ▪ 관계형 질의 처리 엔진 ● SQL 처리에 최적화 ▪ 대용량의 데이터를 빠르게 처리 ● 대용량의 데이터를 여러 클러스터 노드가 함께 처리
  • 11. Tajo의 특징 ● 효율적인 SQL 질의 처리 o 고유의 분산 질의 처리 엔진 Tajo Master Tajo Worker Tajo Worker ... Tajo Worker SQL SQL engine SQL engine SQL engine
  • 12. Tajo의 특징 ● 효율적인 SQL 질의 처리 o 발전된 질의 처리 최적화 ▪ 데이터베이스의 첨단 질의 최적화 기법 적용 ● Join 순서 최적화, In-memory 질의 처리 기법 등 ▪ 클라우드 환경에 적합한 새로운 질의 처리 최적화 기법 적용 ● 동적 로드 밸런싱 (Dynamic Load Balancing) o 질의 수행 중 동적으로 워커들의 로드를 조절 ● 점진적 질의 최적화 기법 (Progressive Query Optimization) o 질의를 수행하면서 점진적으로 수행 중인 질의를 최적화 ● 시간이 오래 걸리는 질의 처리에 효율적
  • 13. Tajo의 특징 ● 효율적인 SQL 질의 처리 o 동적 로드 밸런싱 Tajo Master T2 T1 T3 Tajo Worker Tajo Worker ... Tajo Worker SQL engine SQL engine SQL engine
  • 14. Tajo의 특징 ● 효율적인 SQL 질의 처리 o 동적 로드 밸런싱 Tajo Master T2 T5 T1 T3 T4 T6 Tajo Worker Tajo Worker ... Tajo Worker SQL engine SQL engine SQL engine
  • 15. Tajo의 특징 ● 신뢰성 있는 질의 처리 o 장애 허용 질의 처리 ▪ 질의 처리 중, 일부 클러스터 노드에 장애가 발생해도 질의 를 끝까지 마칠 수 있음 o 높은 가용성 (High availability) ▪ Tajo 클러스터를 총괄하는 Master 노드에 장애가 발생하면 자동으로 백업 Master가 역할을 대신함 ▪ 단일 장애점 (Single Point of Failure) 문제 해결
  • 16. Tajo의 특징 ● 신뢰성 있는 질의 처리 o 장애 허용 질의 처리 Tajo Master T2 T5 T1 T3 T4 T6 Tajo Worker Tajo Worker ... Tajo Worker SQL engine SQL engine SQL engine
  • 17. Tajo의 특징 ● 신뢰성 있는 질의 처리 o 장애 허용 질의 처리 Tajo Master T2 T5 T3 T1 T4 T6 T3 T4 T6 Tajo Worker Tajo Worker ... Tajo Worker SQL engine SQL engine SQL engine
  • 18. Tajo의 특징 ● 신뢰성 있는 질의 처리 o 높은 가용성 (High availability) Tajo Master Tajo Master ... Tajo Master T2 T5 T1 T3 T4 T6 Tajo Worker Tajo Worker ... Tajo Worker SQL engine SQL engine SQL engine
  • 19. ● 신뢰성 있는 질의 처리 o 높은 가용성 (High availability) Tajo Master Tajo의 특징 Tajo Master ... Tajo Master T2 T5 T1 T3 T4 T6 Tajo Worker Tajo Worker ... Tajo Worker SQL engine SQL engine SQL engine
  • 20. Tajo의 특징 ● 확장성 o 복잡한 과정 없이, 클러스터에 노드를 단순히 추가함 으로써 클러스터 확장 가능 ● 이종성 o 서로 다른 컴퓨팅 능력을 가진 노드들로 구성된 클러 스터에서도 잘 동작 ▪ 분산 질의 실행 시, 각 노드들의 컴퓨팅 능력을 고려하여 작 업 할당
  • 21. Tajo 응용의 예 ● 다양한 소스로부터 지속적으로 추가되는 데이터 관리에 용이 o 하나의 Hadoop 디렉토리에 저장된 데이터를 하나의 테이블로 인식 o Partitioned table 지원 ▪ 테이블을 저장할 때, 일정한 기준에 따라 테이블을 나누어 저장 ● 예) 상품 판매 데이터를 저장할 때, 지점 별로 다른 디렉토리에 나누어 저장 가능 ● 관리하기 용이하며, 질의 성능 향상에 사용될 수 있음 ▪ 현재 Hive와 호환되는 column partitioning 지원
  • 22. Tajo 응용의 예 sales_table sales Seoul Busan ... 2014-11-01.dat 2014-11-02.dat ... Gwangju User Sales data SQL query
  • 23. Tajo 응용의 예 ● 배치 분석 o 큰 데이터를 한 번에 처리 ▪ 시간이 오래 걸림 ▪ 일반적으로 처리할 질의가 미리 정의되어 있음 ▪ 사용자가 많지 않은 시간에 주로 수행 o 예) "올해와 작년의 수익 차를 분기 별, 월 별, 지점 별 로 보여라"
  • 24. Tajo 응용의 예 ● 대화형 분석 o 사용자가 시스템과 대화하듯 분석 질의를 수행 ▪ 일반적으로 시간이 짧게 걸림 ▪ 사용자가 임의의 질의를 수행 ● 탐험적 분석 o 예) "지난 한시간 동안 서울 지점에서 가장 많이 판매 된 물품 10개를 카테고리 별로 출력하라"
  • 25. 적용 사례 ● SK Telecom o 목적: 통신망 로그 분석 o 클러스터 크기: 50대 이상 o 일일 데이터 처리량: 200 TB 이상 o 관련 자료 ▪ News: http://news.imaso.co.kr/123151 ▪ Slide: http://www.slideshare.net/deview/2a3big-data-launching- episodes
  • 26. 적용 사례 ● Gruter o 목적: 소셜 네트워크 서비스 분석 o 클러스터 크기: 약 30대 o 일일 데이터 처리량: 수백 기가 ● LOEN 엔터테인먼트 o 목적: MelOn 서비스 로그 분석 o 클러스터 크기: 약 50대
  • 27. Tajo Releases ● 버전 0.2.0 o 릴리즈 날짜: 2013.11.20 o 주요 내용: 더 많은 SQL 기능 지원 ● 버전 0.8.0 o 릴리즈 날짜: 2014.05.01 o 주요 내용: 안전성 개선
  • 28. Tajo Releases ● 버전 0.9.0 o 릴리즈 날짜: 2014.10.21 o 주요 내용: 더 많은 SQL 기능 지원 및 질의 처리 성능 향상 ● 버전 0.9.1 o 릴리즈 계획: 2014.11 o 주요 계획 ▪ 비정형 파일 포멧 (JSON) 지원 ▪ 네트워크 비용 감소로 인한 질의 처리 성능 향상
  • 29. 앞으로의 발전 방향 ● 근사 질의 처리 (Approximate query processing) o 빅데이터에서 반드시 정확한 결과 값을 얻을 필요 없음 o 정확도가 떨어지는 대신, 아주 빠른 시간 안에 결과 값 도출 가능 o 예) BlinkDB
  • 30. 앞으로의 발전 방향 ● 근사 질의 처리 (Approximate query processing) o 빅데이터에서 반드시 정확한 결과 값을 얻을 필요 없음 o 정확도가 떨어지는 대신, 아주 빠른 시간 안에 결과 값 도출 가능 o 예) Online aggregation SELECT major, avg(score) FROM students GROUP BY major
  • 31. 앞으로의 발전 방향 ● 질의 처리 성능 향상 o 최신 데이터베이스 질의 처리 기법 적용 ▪ Vectorized query processing, runtime code generation o 질의 최적화 기법 향상 ▪ 리소스를 효율적으로 활용하는 병렬 처리 기법 ▪ 색인의 효율적인 활용 ● 다양한 타입의 저장소 지원 o HBase, MongoDB, local file system, ...
  • 32. 앞으로의 발전 방향 ● Database connectivity 지원 o ODBC ● Yarn 리소스 스케줄러 지원 o Hadoop의 Yarn 리소스 스케줄러와 호환 o Yarn을 이용하여 Tajo의 리소스를 스케줄링 ● 사용자 정의 함수 (UDF) 지원 o CREATE/DROP FUNCTION 구문 지원