팀 단위에서 마이크로 서비스 적용 하기

엔씨소프트 / 박수혁

대용량 게임 데이터 ETL 서비스의 마이크로 서비스 전환 전략


발표자 : 박수혁(park.suhyuk) ( )

시간 : TBD (20분)

난이도 : 쉬움

키워드 : 게임 데이터, 데이터 수집, 변환 및 적재 (ETL), 마이크로 서비스 아키텍처 (MSA)


내용

엔씨소프트 데이터플랫폼실의 ETL 플랫폼은 크게 두 번의 변화의 시기가 있었습니다.
첫 번째는 오라클 기반의 인포매티카라는 상용 BI 도구를 통해 모든 ETL 처리를 하던 환경에서 Hadoop 기반의 MapReduce 와 Pig 를 이용한 ETL로 전환했던 시기였고, 두 번째는 Hadoop Ecosystem 의 성장에 따라 Hive, Cascading, Spark 등의 생산성이 뛰어난 도구와 프레임워크를 이용하여 다양한 게임에 대한 지표를 마구 마구 즐겁게 찍어낼 수 있었던 시기였습니다.
그러한 변화를 겪으면서 생겨난 수집, 가공 데이터와 지표 등이 수천 개에 이르게 되었고, 클러스터도 초반에는 리소스와 저장공간과 리소스도 충분했지만, 데이터와 게임의 가지수는 점점 늘어가고, 한 번 만들어진 지표와 ETL 작업들은 함부로 삭제되어서는 안 되기 때문에, 운영과 유지보수에 너도 나도 지쳐가고 있었습니다. 과거의 화려한 시기에 만들어졌던 수 천개의 ETL 작업들은 장애와 운영으로 돌아왔고, 개발자들은 ETL 처리의 장애를 최소화하고, 운영의 효율성을 새로운 도전과제로 만나게 됩니다.
최근 2년간 사내에서 발생한 데이터에 대한 수집, 변환 및 적재 작업을 어떻게 효과적으로 개발, 운영하기위해 어떠한 고민들을 했었는지, 그리고 우여곡절 끝에 만나게된 마이크로 서비스 아키텍처와 어떻게 사이가 가까워져 가고 있는지에 대한 이야기입니다.

대상 청중

- 데이터 엔지니어, 데이터 플랫폼 개발/운영자
- 기업내 환경에서 데이터 수집, 변환 업무를 수행하는 개발자, 운영자
- 다양한 언어/환경에서 운영되는 레거시 시스템들의 통합을 검토하시는 분들
- "팀 단위 규모에서도 마이크로 서비스 아키텍처 도입이 가능할까?"에 대해 고민해 보셨던 분들

발표 이해에 도움 되는 사전 지식

- ETL(Extract Transform Load) 업무에 대한 기초적인 이해
- MSA(Micro Service Architecture) 에 대한 개념


연사 소개

안녕하세요 박수혁입니다.
엔씨소프트 데이터플랫폼실 데이터수집기술팀에서 대용량 데이터 처리 및 수집 업무를 담당하고 있습니다.
게임과 그림 그리기를 좋아하는 그리고 백발이 되어서도 코딩을 하고픈 개발자입니다.