GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: Tajo와 SQL-on-HadoopGruter
- 관련 기술 트렌드 소개
- Tajo의 아키텍쳐와 로드맵
Tajo는 Big Data 분석 처리 엔진 분야에서 핫이슈로 부상하고 있는 SQL-on-Hadoop의 차세대 핵심 기술로 Apache Incubation 프로젝트로 등록되어 있는 오픈소스이며, Gruter가 개발을 주도하고 있는 프로젝트입니다.
Big Data Platform Field Case in MelOn (in Korean)
- Presented by Byeong-hwa Yoon, engineer manager at Loen Entertainment
- at Gruter TECHDAY 2014 Oct. 29 Seoul, Korea
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: Tajo와 SQL-on-HadoopGruter
- 관련 기술 트렌드 소개
- Tajo의 아키텍쳐와 로드맵
Tajo는 Big Data 분석 처리 엔진 분야에서 핫이슈로 부상하고 있는 SQL-on-Hadoop의 차세대 핵심 기술로 Apache Incubation 프로젝트로 등록되어 있는 오픈소스이며, Gruter가 개발을 주도하고 있는 프로젝트입니다.
Big Data Platform Field Case in MelOn (in Korean)
- Presented by Byeong-hwa Yoon, engineer manager at Loen Entertainment
- at Gruter TECHDAY 2014 Oct. 29 Seoul, Korea
"메이커 교육 코리아 (구, 메이커 교육 실천)" 의 2016년 10월 8일에 과천과학관에서 열린 첫번째 메이커 교육 포럼의 포럼집을 공개 공유합니다. 본 포럼은 메이커 교육 코리아의 회원들에 의해서 자발적으로 진행되었으며, 동참해주신 메이커 교육 코리아 회원들께 다시 한번 감사 말씀 드립니다.
포럼 강연자 (가나다순) l 강석봉(메이커,유엔디대표) 김진표(청담로봇 대표, 메이크메이커) 류승완(메이커, 사진가) 류승완(맥그로힐 에듀케이션 코리아 이사) 박주용(디자인학 박사, 메이커) 박세영(메이커) 성현록(오토데스크 이사, 성균관대 겸임교수) 신지현(한국IBM, 사회공헌팀 차장) 이정인(메이커교육, 매직에코) 이준혁(메이커, 콘텐츠 전문가) 이지선(숙명여대 교수) 전다은(메이커, 서울이노베이션팹랩) 정재준(LINUX 커널 연구회 대표) 최만(봉선초등학교 교사)
메이커 교육 코리아는 열린 커뮤니티를 지향하며 누구라도 오프라인 회원가입절차를 거쳐 참여가능 합니다.
메이커 교육 코리아 사이트 | MakerEd.or.kr / 페이스북 페이지 | www.facebook.com/MakerEd.Korea/ 메이커 교육 실천 페이스북 그룹 | www.facebook.com/groups/458166777716821/
크리에이티브 커먼즈 라이선스 메이커 교육 코리아에 의해 작성된 영메이커 프로젝트 결과물은(는) 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 4.0 국제라이선스에 따라 이용할 수 있습니다.
메이커 교육 코리아 웹사이트
http://www.makered.or.kr/
"메이커 교육 코리아 (구, 메이커 교육 실천)" 세번째 프로젝트로 6주간 진행된 영메이커 프로젝트 공개 공유합니다. 메이커 교육 코리아의 회원들에 의해서 자발적으로 진행되었으며, 동참해주신 메이커 교육 코리아 회원들께 다시 한번 감사 말씀 드립니다.
워크숍 참여자 (가나다순) l 강석봉(메이커,유엔디대표) 김진표(청담로봇 대표, 메이크메이커) 류승완(메이커, 사진가) 류승완(맥그로힐 에듀케이션 코리아 이사) 박주용(디자인학 박사, 메이커) 박세영(메이커) 성현록(오토데스크 이사, 성균관대 겸임교수) 신지현(한국IBM, 사회공헌팀 차장) 이정인(메이커교육, 매직에코) 이준혁(메이커, 콘텐츠 전문가) 이지선(숙명여대 교수) 전다은(메이커, 서울이노베이션팹랩) 정재준(LINUX 커널 연구회 대표) 최만(봉선초등학교 교사) 황정옥(중앙일보 키즈팀 기자)
메이커 교육 코리아는 열린 커뮤니티를 지향하며 누구라도 오프라인 회원가입절차를 거쳐 참여가능 합니다.
메이커 교육 코리아 사이트 | MakerEd.or.kr / 페이스북 페이지 | www.facebook.com/MakerEd.Korea/ 메이커 교육 실천 페이스북 그룹 | www.facebook.com/groups/458166777716821/
크리에이티브 커먼즈 라이선스 메이커 교육 코리아에 의해 작성된 영메이커 프로젝트 결과물은(는) 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 4.0 국제라이선스에 따라 이용할 수 있습니다.
메이커 교육 코리아 웹사이트
http://www.makered.or.kr/
You’re not the only one still loading your data into data warehouses and building marts or cubes out of it. But today’s data requires a much more accessible environment that delivers real-time results. Prepare for this transformation because your data platform and storage choices are about to undergo a re-platforming that happens once in 30 years.
With the MapR Converged Data Platform (CDP) and Cisco Unified Compute System (UCS), you can optimize today’s infrastructure and grow to take advantage of what’s next. Uncover the range of possibilities from re-platforming by intimately understanding your options for density, performance, functionality and more.
클라우드 컴퓨팅과 Daum의 사례- 윤석찬 (KREN 연구 협력 포럼, 2013) Channy Yun
출처: http://www.koren.or.kr/board/board.php?task=view&db=data2&no=44
<개발자에서>
최근에 클라우드 기술이 부각되면서 다음에서도 발빠르게 사내 프라이빗 클라우드 서비스를 준비중이다. 가장 먼저 한 일은 사내 개발자들이 언제든지 자신의 가상머신(VM)을 할당 받아 테스트해 볼 수 있는 사내 클라우드 플랫폼 구축이었다.
2011년 초 오픈소스인 클라우드스택을 최적화해 구축했으며, 개발자들은 공용 테스트 서버나 서비스 서버에서 못하던 자신만의 최신 기술 습득이나 테스트를 아무 구애 받지 않고 자기 서버에서 해 볼 수 있게 됐다. 이 플랫폼은 앞으로 클라우드 파운더리 기반의 사내 PaaS과 하둡 테스트베드로도 활용하고 있으며, 실제 다음 서비스에서 클라우드 컴퓨팅 기술을 활용하는 기초가 되고 있다.
- http://www.bloter.net/archives/107844
100% Serverless big data scale production Deep Learning Systemhoondong kim
- BigData Sale Deep Learning Training System (with GPU Docker PaaS on Azure Batch AI)
- Deep Learning Serving Layer (with Auto Scale Out Mode on Web App for Linux Docker)
- BigDL, Keras, Tensorlfow, Horovod, TensorflowOnAzure
어느 해커쏜에 참여한 백엔드 개발자들을 위한 교육자료
쉽게 만든다고 했는데도, 많이 어려웠나봅니다.
제 욕심이 과했던 것 같아요. 담번엔 좀 더 쉽게 !
- 독자 : 백엔드 개발자를 희망하는 사람 (취준생, 이직 희망자), 5년차 이하
- 주요 내용 : 백엔드 개발을 할 때 일어나는 일들(개발팀의 일)
- 비상업적 목적으로 인용은 가능합니다. (출처 명기 필수)
Chaos Engineering을 위한 최신 도구 업데이트 - 윤석찬 (AWS 테크에반젤리스트)Channy Yun
- 발표 영상: https://www.youtube.com/watch?v=mLWD4KCQuT4
카오스 엔지니어링(Chaos Engineering)을 테스트해 볼 수 있는 각종 도구에 대해 최신 업데이트를 해드립니다. 로컬 장애 주입용 도구 부터, AWS System Manager기반 Runcommand 도구, AWS Lambda 도구, 그리고 ToxiProxy, ChaosToolkit 같은 오픈 소스 기반 도구와 간단한 데모를 함께 보여드립니다.
How to Measure DevRel's Perfomances: From Community to Business - Channy Yun ...Channy Yun
Developer relations are an impactable to generate business values in many software companies who hope to gain mindshare of developers in various approaches from contributing open sources to gaining meaningful sales leads. In this session, you’ll learn about how to measure the perfomrmance of developer relations for building community, increasing impacts and generating leads for sales.
https://tokyo-2018.devrel.net/speakers/yun/
카오스 엔지니어링(Chaos Engineering)이란 프로덕션 서비스의 각종 장애 조건을 견딜 수 있는 시스템의 신뢰성을 확보하기 위해 분산 시스템을 실험 하고 배우는 분야입니다. 즉, 개발자들이 현실 세계에서 발견되는 시스템 장애를 미리 탐지하여 복원성 높은 아키텍처를 구성하는 방법을 공유합니다.클라우드 컴퓨팅의 발전과 데브옵스 방법론을 기반으로 자동화를 통해 좀 더 쉽게 개발자들이 직접 분산 시스템을 통제된 환경에서 실험을 하는 동안 나오는 결과를 관찰함으로써 현실에서 실제 행동 방법을 배울 수 있습니다. 본 세션에서는 카오스 엔지니어링의 기본 개념과 함께 Kubernetes용 Chaos Tool인 KubeMonkey를 통해 무작위로 클러스터의 포드를 삭제하여 장애 복구 서비스 아키텍처를 검증하는 방법을 설명합니다.
DockerCon 2014에서 Adrian Cockcroft가 발표한 The state of the art in Microservice 중 해외 사례 발췌본
https://blog.docker.com/2014/12/dockercon-europe-keynote-state-of-the-art-in-microservices-by-adrian-cockcroft-battery-ventures/
2005년 구글맵으로 부터 시작된 웹 기반 지도 API 서비스는 웹 2.0의 데이터 플랫폼 서비스의 주요 사례로 떠올랐다. 그 이후 야후!, 마이크로소프트 등에서 지도 플랫폼 서비스와 API 제공이 잇달았으며, 국내에서도 다음이 최초로 항공 사진(스카이뷰)과 거리 사진(로드뷰)을 제공하고 네이버도 참여함으로서 로컬 기반 서비스의 폭발적 성장의 견인차 역할을 하였다. 노키아의 Here 및 오픈스트릿맵 등 제 3의 사업자 및 협업 기반 플랫폼이 성장하였으며, Open Layer 라이브러리 및 Open GIS 등 다양한 공개 소프트웨어 들도 함께 성장하였다.
특히, 스마트폰의 보급과 아울러 모바일용 지도 SDK를 적극 보급 및 지원하는 추세로 기존의 Ajax 기반의 이미지 기반 웹 지도 표현 기술은 WebGL 혹은 Canvas를 통해 3차원 기술을 도입하면서 웹 호환성 및 성능을 동시에 높히고 있다. 구글 스케치업을 통해 시작된 공간 3차원 서비스는 약간 주춤하지만 45도 이미지너리 및 DEM 기반 데이터는 계속 추가되고 있다.
최근에는 구글맵 엔진 서비스와 같은 전문 사용자의 참여를 이끌어 내어 클라우드 소싱 형태의 지도 데이터 생성 커뮤니티를 통해 저개발 국가 및 북한과 같은 미공개 지도 데이터 생산을 만들고 있다.
2011년부터 구글 부터 지도 API 서비스 유료화를 단행하여 보안 강화 및 품질 및 성능 향상을 통해 제 3자 재판매를 통한 사업을 진행하고 있다. 또한, 최근 많은 기업들이 글로벌 홈페이지에 자사의 위치나 고객센터를 이용자들이 찾는데 활용하고 있으며, 이를 활용해 물류•관제•입지분석•위험관리•마케팅 등에 활용하고 있다.
현재 글로벌 지도 API 플랫폼은 단순히 베이스맵을 지원하는데 그치지 않고 공간 정보를 시각화 및 표현하는데 필요한 다양한 기능을 제공하면서, 정보 전달 역할을 강화하고 있다. 또한, Mapbox 등 지도 타일의 다양한 스타일과 테마 기능을 통해 좀 더 미려한 지도를 제공하기도 한다.
향후 글로벌 지도 API 플랫폼은 단보다 고도화된 시스템을 활용해 데이터 분석 및 2차원 시각화 그리고 3차원 공간 정보 활용으로 진화하고 있다.
Realtime Big data Anaytics and Exampes of Daum (2013)
1. 실시간 빅 데이터 기술 현황 및
Daum 활용 사례 소개
윤석찬
다음커뮤니케이션
channy@daumcorp.com
2. Agenda
Daum의 대용량 분산 기술
– 대용량 스토리지 제공 (Tenth)
– 폭증하는 소셜 데이터 (Santa/Wcache)
실시간 분석 기술 소개 및 동향
– 실시간 분석 및 SQL on Hadoop 기술 소개
Daum의 실시간 분석 활용 사례
– 미디어 다음 실시간 분석 사례
– 다음탑 실시간 분석 사례
4. 1. 대용량 스토리지 제공
명실 상부한
국내 최대
저장용량
제공 중
per User
2004
2006
2012
5. How to? Tenth(2005) 프로젝트
대부분 첨부 파일은 30일이 지나면 안본다?
오래된 파일은 값싼 스토리지에 저장해 두고
사용자가 원할때 빨리 찾아주면 되지 않을까?
• 외부 분산 스토리지 기술
Google GFS (2003)
Yahoo HDFS (2007)
NHN OwFS (2010)
김남희(2008), Tenth: Daum의 대용량 분산 파일 시스템 소개
http://www.platformday.com/2008/files/tenth-daum.pdf
6. Tenth vs. HDFS
Tenth는 한메일, 카페 첨부 파일 등 대용량 파일을 저렴하게 저장하
기 위한 분산 파일 시스템으로 2005년 부터 개발
– 2006년 라이코스메일, 카페 도입
– 2007년 한메일 기가 용량 도입
– 2009년 동영상 업로드팜 도입
– 2010년 다음 클라우드 도입
2013 현재, 파일 800억개(Dual Backup), 30페타바이트 (Zipped)
Tenth
비교
HDFS
2005
개발 시작
2006
C++
구현 언어
Java
첨부 파일을 저장하기 위해 하나의
스토리지 처럼 이용 가능
이용 목적
분산 시스템에서 파일 저장 용
도로 활용
다중 (MySQL이용)
네임 노드
싱글
1~4MB (fixed chunks)
파일 형태
64MB (fixed blocks)
미지원
디렉토리 구조
지원함
7. 2. 폭증하는 소셜 데이터
촛불집회 후 수 십만명이 동시에 글을 쓰면?
데이터베이스(RDBMS)는 과도한 쓰기(수정)를
하면 서버가 다운될 수 밖에 없다.
윤석찬(2008), 대통령 탄핵 청원으로 본 아고라의 기술적 도전
http://blog.creation.net/260
8. How to? 분산 데이터 캐시
① 글 조회수를 서버 메모리에 모아 두었다가
어느 정도 모이면 한꺼번에 업데이트하면 어떨까?
최범균(2008), EHCache를 이용한 Gaia 캐시 구현,
http://javacan.tistory.com/123
② DB 앞에 데이터 캐시 서버를 두면 어떨까?
Pizza(2002)
Santa(2008)
Wcache(2010)
회사 내부에서 사용하는 인하우스 미들웨어로 JDBC 병목해
결, 데이터 캐시 서버 및 대용량 캐시 서버 팜 등으로 진화.
9. Twitter도 다르지 않았다!
전 세계 사람들이 함께 토론하면 어떻
게 될까? 라는 딜레마에 빠짐 잦은 장애
윤석찬(2009), 트위터의 장애 극복 이야기
http://channy.creation.net/blog/714
13. Hadoop 기술 batch analytics
REDUCE
MAP
Input
…
복잡한 문제를 작은 문제로 쪼갠다
…
문제를 여러 서버에 나누어서 해결한다
결과를 모아서 합친다
Output
…
14. Hadoop의 장단점
장점 : 기존 분석 기술에 비해 저렴하게 데이터 분석 가능
– 데이터를 바라 보는 관점의 차이 (저렴한 처리 비용)
– 샘플링이 필요 없음 (대용량 처리 가능)
– 운영 비용이 적음 (인프라 운영이 관리 가능)
– 분석도구나 프로그래밍 언어에 독립적임
– 다양한 개발 도구 (오픈 소스 지원)
단점: 분석 방식의 변화 및 내재화 비용
– 개념의 변화가 필요 (Map/Reduce식 사고 전환 필요)
– Hadoop은 진화 중(벤더 배포판 사용 기회 늘어남)
– 아직 구현되지 않은 부분이 많음(버전 호환성이 낮은 편)
– 장애에 대한 대비 필요(메모리 및 네트웍 관련 시행착오)
– 실시간 분석에 대한 필요성 (대안 기술 선택적 사용)
15. NoSQL Not Only SQL
Yahoo! Research(2010), Cloud Serving Benchmark
http://research.yahoo.com/files/ycsb-v4.pdf
대용량 데이터 업데이트 및 조회 시,
기존 RDBMS에 비해 빠른 성능 제공
구조가 간단한 대량 이벤트 및 로그
데이터 저장 및 조회 시 유용
16. NoSQL의 장단점
장점: 빠르고 유연한 데이터 저장 및 조회 능력
– 데이터가 증가함에 따라서 노드의 갯수만 늘리면 됨(확장성과 가용성)
– Key-Value 형식으로 저장하므로 유연한 데이터 구조(Schemaless)
– 데이터 인덱싱으로 빠른 응답 가능(고성능)장점 : 기존 분석 기술에 비해
저렴하게 데이터 분석 가능
단점: 분석 방식의 변화 및 내재화 비용
– 스키마 설계, 서버 네트워크 구성, 메모리/IO 등에 시행착오
– 데이터 무결성(integrity)을 위한 처리 비용이 큼
• 트랜잭션과 같은 복잡한 처리에 적합하지 않음
• 장애시 데이터 복구에 드는 노력이 많이 듦
– Schemaless라서 Join 과 같은 복잡한 쿼리 사용 어려움
• MongoDB 같은 경우, 빠른 인덱싱 및 SQL 친화적인 지원 가능
17. Realtime
Event-streaming
분석에 포함 되지 못하는 실시간 데이터 파악
오픈소스
기술명
구현 방식
구현 언어
문서화
즉시 Rule
추가 기능
성숙도
커뮤
니티
Scaleout
방식
Esper
선언적 SQL
Like
Java
매우 좋음
가능
높음
중간
Droools
Fusion
선언적 SQL
Like 및 Rule
Java
좋음
가능
높음
작음
Storm
Scaleup
방식
Job 설계
Cloujure
있음
Zoopkeeper
이용
중간
빠르게
성장중
Apache S4
Job 설계
Java
평균
Zoopkeeper
이용
낮음
중간
Apache
Kafka
Job 설계
Java
좋음
Zoopkeeper
이용
중간
작음
김병곤(2013), 데이터를 실시간으로 모아서 처리하는 다양한 기법
http://www.youtube.com/watch?v=HmVegCGWbsU
18. 실시간 분석의 어려움
– Hadoop은 배치(Batch) 처리 방식이라 실시간에 적합하지 않음
– NoSQL은 데이터 저장만 빠르지 분석 데이터를 걸러내기 어려움
Storm
https://github.com/nathanmarz/storm/wiki
– Twitter(구, BackType)에서 직접 개발해서 오픈소스화
– Data Stream을 바라보고 실시간으로 데이터를 바라보는 로직을 구현
– 로직(Topology)를 Storm Cluster로 던지면 적절히 실행해서 분석
Data Stream
NoSQL
Data Stream
Node.js
Spout
Bolt
19. SQL on Hadoop
분석 전처리 작업 없이 데이터 현황 파악 필요 시
– 인메모리/파일 기반 분산 기술을 활용한 쿼리 엔진
– Map/Reduce를 사용할 필요가 없는 질의 조건일 때 활용
주요 오픈 소스 기술
– Impala: Cloudera Hadoop 배포판 및 HiveQL 호환
– Apache Tajo: HDFS 지원 및 표준 SQL 호환
– Apache Dremel: MapR에서 주도하며, 아직 초기 개발 단계
상용 서비스: Google BigQuery
– Dremel 기술을 활용한 상용 서비스
Cloudera Impala
Horton Hawq
MapR Stinger
Apache Tajo
Apache Drill
20. Berkeley Stack
주요 특징
–
–
인메모리 기반의 새로운 오픈소스 분석 기술로 특정
데이터의 경우, Haoop에 비해 수 십배 빠른 처리 속도
기존 Hadoop 기술과 호환성 극대화하여 개발자 지원,
But 인메모리 가지는 한계 있음
Spark http://spark-project.org
–
–
–
스토리지 In/Out 대신 주요 데이터셋을 메모리에 올려
서 Iteration에 최적화 시킴 (머신러닝/그래프 탐색)
Interactive Data Mining에 대한 최적화
(R/Excel/Python 등)
기존 HDFS 호환 및 Scala, Java, Python 기반 프로
그래밍 가능
Spark Streaming
–
스트리밍 데이터에 대한 분석 기능 제공
Shark http://shark.cs.berkeley.edu/
–
HiveQL 기반의 분석 기능 제공
UC BERKELEY
22. SQL on Hadoop 100배, 200배 성능의 진실
http://jaso.co.kr/480
현재 SQL-On-Hadoop 진영에서 제시하는 대부분의 성능 수치는 일반적인 질
의나 전체 질의에 대해서 평균 몇 배 빠르다가 아닌 자신들이 유리한 조건
에서 테스트한 결과만을 언급하는 경우가 많다. 필자의 테스트 결과
를 보면 대략 평균 3 ~ 5배 정도이고 질의의 종류에 따라 수 십배 정도 빠를 수
도 있고, 더 느릴 수도 있다.
자신의 데이터 속성과 질의 속성에 맞는 플랫폼을 선택하는 안
목이 필요할 때이다. 미국산 벤더, 블로그, 언론에서 제시한 수치라고 맹신하
는 것은 금물이다.
SQL on Hadoop 100배, 200배 성능의 진실 (김형준) 중에서…
23. Daum 빅데이터 활용 사례
•
–
–
–
–
–
–
•
쇼핑 하우 상품 클릭 분석 사례
다음 Top 토픽 분석 및 추천 서비스
UCC 문서의 스팸 유저 필터링
사물 검색 이미지 역색인
자연어 처리 텍스트 분석
모바일 광고 데이터별 매체 분석 등
연구 개발 사례
–
–
이미지 유사성 매칭 분석
대용량 시맨틱 웹 검색 엔진 개발
•
마이 아고라
검색 광고 노출 최적화
최근 방문 카페 저장
사내 캐시 서버(Redis)
사내 Git 저장소(Redis)
데이터 처리 (Hbase)
•
•
•
•
검색 엔진 색인 문서 저장
서버 모니터링 데이터 저장
로그인 로그 저장
카페 방문 로그 저장
윤석찬(2012), Daum 빅 데이터 기술 활용 사례
http://www.slideshare.net/Channy/daums-hadoop-usecases
http://devon.daum.net/2012/session/o1
이미 공유 많이 했어요!!
찾아보세요~~
서비스 적용 (MongoDB/카산드라)
•
•
•
•
•
전사 로그를 통한 통계 분석
광고 로그 분석을 통한 타겟팅
검색 품질 랭킹 분석 및 개선
광고 및 클릭 로그 분석을 통한 타켓팅
카페 로그 분석을 통한 사용자 카페 추천
게임 서버 로그 분석 등
데이터 분석 사례
–
–
–
–
–
–
•
•
로그 분석 사례
김용우, 이선호(2012), Hadoop 실전 사용기
http://devon.daum.net/2012/session/o2
유응섭, 최준건(2012), 알고쓰자! NoSQL
http://devon.daum.net/2012/session/o3
안세준(2012), 삽질로 일궈낸 카산드라 사용기
http://devon.daum.net/2012/session/o4
윤석찬(2012), Daum 빅 데이터 비지니스 분석 사례
http://www.slideshare.net/Channy/daum-bigdata-analytics-usecases
24. Daum 실시간 분석 사례
•
로그 분석 사례
–
–
–
–
–
–
•
데이터 분석 사례
–
–
–
–
–
–
•
전사 로그를 통한 통계 분석
광고 로그 분석을 통한 타겟팅
검색 품질 랭킹 분석 및 개선
광고 및 클릭 로그 분석을 통한 타켓팅
카페 로그 분석을 통한 사용자 카페 추천
게임 서버 로그 분석 등
쇼핑 하우 상품 클릭 분석 사례
다음 Top 토픽 분석 및 추천 서비스
UCC 문서의 스팸 유저 필터링
사물 검색 이미지 역색인
자연어 처리 텍스트 분석
모바일 광고 데이터별 매체 분석 등
연구 개발 사례
–
–
이미지 유사성 매칭 분석
대용량 시맨틱 웹 검색 엔진 개발
•
서비스 적용 (MongoDB/카산드라)
•
•
•
•
•
•
마이 아고라
검색 광고 노출 최적화
최근 방문 카페 저장
사내 캐시 서버(Redis)
사내 Git 저장소(Redis)
데이터 처리 (Hbase)
•
•
•
•
검색 엔진 색인 문서 저장
서버 모니터링 데이터 저장
로그인 로그 저장
카페 방문 로그 저장
• 서비스 분석
– 미디어 다음 실시간 분석
– 모바일/PC탑 실시간 분석
• 데이터 수집
– Twitter 실시간 데이터 수집기
26. 실시간 분석이 필요할 때…
활용 대상 영역
– 쇼핑몰 사이트의 사용자 클릭 스트림을 통해 실시간 개인화
– 사용자 위치 정보 기반 광고 및 추천 기능
– 시스템 이벤트를 이용한 실시간 보안 감시
– 차량 추적 및 위치 정보 수집을 이용한 도로 교통 상황 파악
– 사용자의 액션 수집을 이용한 이상 행위 탐지
기획자의 요구 사항
– 데이터가 변화되는 모습을 화면에서 바로 보고 싶다!
– 간결한 차트와 선택 및 실시간 변화를 보고 싶다!
기술 요구 사항
– 로그 수집, 실시간 분석 및 장기 분석을 위한 저장소 필요
– 주기적 차트 생성 및 쿼리에 대한 브라우저 기반 기능도 구현 필요
27. 1. 미디어 다음 실시간 분석 사례
미디어 콘텐츠에 대한 실시간 현황 파악
– 이슈에 대한 실시간 상황 파악을 위한 관리 도구 제공
미디어 콘텐츠에 대한 실시간 현황 파악
– ‘나는가수다’, ‘K팝스타’ 같은 디지털 브랜드에 대한 변화 측정 필요
29. 서비스 구현 시 활용 기술
Kestrel
– http://robey.github.io/kestrel/
– Blaine Cook의 "starling"을 기반한 JVM 분산 메시지 큐 서버로
서, memcached 및 thrift 프로토콜을 지원
Storm
– https://github.com/nathanmarz/storm/wiki
– 데이터 스트림에 대한 분석 기능을 담당
Redis
– http://redis.io/
– 디스크 I/O 없이 빠르게 처리하기 위해서 in-memory key-value
store로서 임시 분석값을 저장
Cassandra
– http://cassandra.apache.org/
– 많이 이용되는 NoSQL 서버로서 분석값의 영구 저장소로서, Hbase
나 MySQL 등이 활용되기도 함
38. 2. Daum Top 실시간 분석 사례
다음 PC웹 및 모바일 웹 첫화면 콘텐츠 아이템에 대한 실시간 트래픽 파악
사용자에게 맞는 콘텐츠 추천 및 파급력 분석 가능
39. 3. Twitter 실시간 데이터 수집기
Twitter, 티스토리로 부터 오는 Stream Data 저장소
실시간 검색 인덱스를 위한 데이터 수집 및 제공
40. c.f. 모바일 앱 크래시 통계
모바일 앱 디버깅 방식
– 실시간으로 Crashing 데
이터 수집 필요
(Storm/HBase?)
• WebView에서 나는 오류도
많음 빠르게 수정 필요
– 특정 크래시와 관련 버그에
대한 학습 방법이 필요함
(Spark/Shark?)
• 버그와 크래쉬 사이의 관계
최종 사용 기술
– Hbase M/R
오버 엔지니어링은 금물!
41. 실시간 분석 구축 시 유의 사항
정말 필요한가?
– Storm/S4 같은 기술을 도입 전 정말 필요한지 확인 해야 함
– 실시간 분석은 명확한 업무 정의가 된 경우에만 수행 해야 함
– 기술 선택 (Batch/Realtime/Query)에 대한 이해 파악 필요
고난을 각오해라!
– 잘 알려진 케이스는 많으나 실제로 구현하다 보면 어려움 봉착
– 시스템 엔지니어링 운영 기술 및 대용량 메모리(~98GB) 기반 서
버팜 등이 필요함
역시 오픈 소스!
– 오픈 소스 커뮤니티의 규모와 문서화 케이스 등으로 지원 가능한
지 확인 후에 진입하는 것이 좋다.
42. References
1.
김병곤(2013), 데이터를 실시간으로 모아서 처리하는 다양한 기법
–
http://www.youtube.com/watch?v=HmVegCGWbsU
–
http://readme.skplanet.com/?p=4605
2.
권동훈(2013), Hadoop에서의 실시간 SQL 질의: Impala
–
3.
http://helloworld.naver.com/helloworld/246342
김우승(2012), 실시간 빅 데이터(Real-time Big Data) 프로세싱 맛보기
–
4.
http://kimws.wordpress.com/2012/03/07/%EC%8B%A4%EC%8B%9C%EA%B0%84
-%EB%B9%85-%EB%8D%B0%EC%9D%B4%ED%84%B0real-time-big-data/
하호진(2012), Storm과 Esper로 실시간 분석 샘플 사용기
–
5.
http://mimul.com/pebble/default/2012/03/14/1331718971671.html
심탁길(2012), 실시간 대용량 데이터 분석 기술과 적용 사례
–
http://www.ktcloudware.com/resources/platform/07.pdf
43. Daum에는
데이터도 많고 전문가도 많습니다!
http://recruit.daum.net
@channyun
channy@daumcorp.com