Offcanvas

BI / 개발자 / 디지털 트랜스포메이션 / 리더십|조직관리 / 빅데이터 | 애널리틱스 / 애플리케이션

인터뷰 | “통제 욕구 버려야 집중할 수 있다” 파이즈스타 CTO의 데이터 인프라 접근법

2023.01.19 Peter Sayer  |  CIO
마케팅 플랫폼 파이브스타즈(FiveStars)의 CTO 맷 도카는 데이터 인프라를 재설계하며 데이터 분석 작업에 집중하기 위해 다른 데이터 작업을 외주에 맡겼다. 그는 모든 것을 직접 해야 한다는 강박관념을 버려야 한다고 강조했다. 
 
ⓒGetty Images Bank

인프라를 직접 구축하고 관리하면 통제의 폭이 넓어진다. 그러나 인프라 전체를 계속 통제하려고 애쓰다 보면 다른 분야를 혁신하는 데 필요한 자원을 뺏기게 된다.

소규모 사업장을 위한 마케팅 플랫폼을 운영하는 파이브스타즈(FiveStars)의 CTO 맷 도카는 이게 비효율적이라 생각한다. 그래서 가능한 것은 모두 외주에 맡기는 것이 그의 철학이다. 이는 그가 자체 서버 운영을 꺼리는 이유이기도 하다. 

도카는 최근 5년간 진행해온 데이터 재설계 프로젝트를 마무리 중이다. 일상적인 관리 작업 대부분을 자동화하거나 외주 처리하고 내부 자원은 데이터 애널리틱스에 집중하는 것이 목표다. 여기서도 데이터 엔지니어링에 대한 그의 태도가 여실히 드러난다. 

파이브스타즈는 소규모 사업장을 대상으로 온라인 충성고객 카드 서비스를 제공한다. ‘아홉 개 사면 하나를 공짜’로 주는 스탬프 카드의 디지털 버전이라고 보면 된다. 고객의 전화번호와 결제 카드에 연결되는 서비스다. 이 서비스를 사용하는 소규모 사업장은 1만 곳이 넘는다. 

도카는 파이브스타즈에서 관리하는 충성고객 프로그램에 가입한 미국인이 약 7천만 명인 것으로 추산한다. 최근에는 결제 처리 분야에 진출해 자체적인 PCI 호환 결제 단말기를 제공하고 있다. 고객 중 약 20%가 이를 도입한 상태다. 

그 많은 거래 내역을 다 기록하려면 엄청난 양의 데이터를 처리해야 한다. 이에 더해 파이브스타즈 단말기에는 연결 상태, 배터리 잔량, 애플리케이션 성능 정보 등을 주기적으로 보고하는 텔레메트리 시스템이 내장되어 있다. 고객에게 그저 단말기를 갖다주면서 고장 날 때 연락하라고 떠넘기는 기존의 결제 처리 업체들보다 한발 앞서 있다. 

그는 “고객이 결제나 포인트 적립을 원할 때 최고의 경험을 제공하는 것이 목표다. 따라서 엄청난 양의 장치 텔레메트리 데이터를 우선시한다. 거래 내역, 포인트나 신용카드 정보 자체는 그리 중요하지 않다"라고 강조했다.

이를 위해서는 방대한 데이터 분석 작업이 필요했지만, 10인으로 구성된 데이터 팀은 데이터 인프라 관리 작업에 매여 있어서 시간을 낼 수 없었다.

파이브스타즈 데이터 인프라를 최초로 구축한 데이터 팀은 IT가 아닌 비즈니스의 영업 및 마케팅팀이었다. 도카는 그렇다 보니 데이터 팀은 데이터에는 매우 정통했지만, 인프라 관리 경험을 쌓을 수 없었다고 지적했다. 

데이터 팀을 인계받은 도카는 팀원들이 서버 자동화 코드, 데이터베이스 질의, 분석 등 모든 작업을 수기로 작성한다는 사실을 알게 되었다. 도카는 "팀원들은 배시(bash) 스크립트를 작성했다. 배시 스크립트를 추상화하여 제거할 수 있는 시스템은 10년 전에도 있었다"라고 말했다.

문제의 시스템은 불안정했고 대부분 수동 방식이었으며 비공식적인 내부 지식을 바탕으로 하고 있었다. 그 결과, 데이터 분석가들은 시스템을 운영하기에도 벅찼고 "새로운 데이터 인사이트를 분석으로 발전시키는 데 애를 먹었다"라고 한다. 
 

'방황기': 에어플로우에서 어센드로 

2019년 당시에는 이런 문제가 발생할 때마다 아파치 에어플로우(Airflow)가 답이었다. 에어플로우는 데이터 엔지니어링 워크플로우를 관리하기 위한 파이썬 기반의 오픈소스 플랫폼이다. 도카의 데이터 팀이 수기로 했던 그런 업무를 수행할 목적으로 에어비앤비(AirBnB)에서 처음 개발됐다. 

도카는 자원이 많이 들어가는 파이브스타즈의 자체 시스템 대신 에어플로우를 호스팅 해 쓰기로 했다. “팀원들은 데이터 분석가나 데이터 엔지니어이지 능숙한 SRE(사이트 신뢰성 엔지니어)는 아니기 때문에 자체 인프라를 호스팅하는 일에서 벗어나고 싶었다. 직접 시간을 들이기에는 비효율적인 일이기도 했다”라고 말했다. 

도카는 에어플로우를 채택해 서버 이외의 다른 것을 더 이상 신경 쓰지 않아도 됐다. 그는 "표준화와 기본적인 운영이 크게 개선됐다”라고 말했다. 

그러나 도카는 "사용자가 실제로 에어플로우에서 어떻게 작업하는가는 전적으로 개발팀에게 달려 있어서 새로운 프로젝트마다 조직화 작업을 하는 데 여전히 큰 노력을 기울여야 했다"라며 아쉬움을 드러냈다. 특히 그는 사용자가 직접 모범 사례 문서를 작성해야 한다는 점이 불만스러웠다.

결국, 도카는 에어플로우로 이주한 지 1년도 채 안 돼 대안을 찾기 시작했다. 그가 원한 도구는 더 많은 데이터 공학 프로세스를 자동화할 수 있어야 했다. 동시에 비즈니스에 미치는 영향은 크지 않지만 시간만 많이 잡아먹는 의사결정을 표준화하길 원했다. 

여기저기 알아봤지만, 그가 찾은 대다수 도구는 문제를 부분적으로 해결하는 데 그쳤다. 

그는 "예컨대 DBT는 단일 스노우플레이크(Snowflake) 인스턴스 내에서 데이터를 변경하는 방법에만 초점을 맞췄다. 온갖 소스로부터 스노우플레이크에 데이터를 넣으려면 어떻게 해야 할지 알 수 없었다”라며 “모든 데이터 흐름을 표준화된 방식으로 처리하는 파이트트랜(Fivetran) 같은 플랫폼이 있었지만 처리 언어를 제대로 제공하지 않았다”라고 덧붙였다. 

도카는 여러 선택지를 검토한 끝에 어센드(Ascend.io)를 골랐다. 그는 "SQL 질의나 파이썬 코드를 작성하는 표준 방식이 있다는 사실이 매우 마음에 들었다. 이를 통해 리니지(lineage)와 토폴로지(topology)가 생성된다. 시스템은 모든 데이터가 어디서 왔고 어떻게 이 최종 분석 단계에 도달했는지 자동으로 파악할 수 있다"라고 말했다. 

도카는 이를 통해 서버 운영 문제는 물론 업무 방식과 관련된 문제도 해소할 수 있었다고 전했다. 

그는 "이를 통해 데이터 엔지니어와 데이터 분석가들이 정신적 부담을 크게 덜게 돼 오로지 당면한 문제와 애널리틱스 작업에 집중할 수 있게 됐다”라고 말했다. 도카는 데이터 분석가들이 한결 쉽게 본인들의 업무에 집중하는 것은 물론 서로의 업무 진행 상황도 파악할 수 있다고 덧붙였다.

그는 “데이터 분석가마다 하고 있는 일의 경위가 자동으로 남아 문서화된다. 따라서 새로운 사람이 합류하더라도 쉽게 현황을 파악할 수 있다”라고 설명했다. 
 

데이터 소스 연결에 단 2분 

어센드는 또 다른 아파치 프로젝트인 스파크(Spark)를 애널리틱스 엔진으로 사용한다. 파이스파크(PySpark)라는 자체 파이썬 API를 갖추고 있다. 

처음 에어플로우에서 몇 개의 핵심 사용 사례를 이주시키는 작업은 한 달이 채 걸리지 않았다. 도카는 "켜는 데 한 시간, 포스트그레스(Postgres)와 우리 데이터 소스 중 일부를 연결하는 데 2분이 걸릴 정도로 매우 빨랐다"라고 말했다.

워크플로우 복제는 SQL을 에어플로우에서 어센드로 복사하는 것만큼 쉬웠다. 그는 "일단 동등하게 작동시키고 나면 [오래된] 흐름은 차단하고 [새로운] 출력 커넥터를 필요한 곳에 배치하기만 하면 됐다"라고 설명했다.

어센드의 가장 큰 장점은 코드 변경 사항을 실행하는 속도가 워낙 빨라서 담당 팀이 실시간으로 개발과 수정을 진행할 수 있다는 점이다. 그는 "시스템은 어디에서 워크플로우 일부가 변경되었는지를 파악할 수 있다. 바뀐 게 없을 시에는 아예 실행되지 않아 컴퓨팅 리소스를 낭비하지 않는다. 덕분에 능률이 크게 올라갔다"라고 설명했다.

단, 여전히 밤새 기다려야 하는 작업도 있었다. 그는 "새벽 2시에서 5시 사이에만 다운로드할 수 있는 업스트림 서비스가 있다. 그 시간에 다운로드 되도록 코드를 맞추는 일이 번거롭긴 했지만 어센드의 탓은 아니었다"라고 말했다.
 

문화 변화를 이끈다는 것

어센드로 이전했다고 해서 대대적인 재훈련이나 채용이 필요했던 것도 아니었다. 도카는 "모든 것을 추상화했기에 구축 작업은 이제 거의 0에 가깝다"라고 말했다. 현재 새로운 시스템 상에서 작업을 실행 하는 인원이 3명, 데이터에서 인사이트를 생성하고 보고하는 일을 하는 분석가가 6명 정도 있다.

그는 "인프라 작업의 대부분이 사라졌다. 물론 ETL 작업은 아직 좀 있다. 절대 사라지지 않는 변환 및 정리 작업이다. 그래도 표준화된 방식으로 수행된다. 단, 한 가지 소화하는 데 시간이 걸렸던 것은 에어플로우를 쓰기 위해 소위 바닐라 파이썬에서 스파크 파이썬로 전환하는 일이었다. 단순히 절차적 코드를 작성하는 것과는 느낌이 다르다"라고 덧붙였다. 

그렇다고 난해한 작업은 아니었다. 써본 적이 없어 익숙해지는 데 시간이 걸렸을 뿐이다. 

도카의 데이터 엔지니어링 전환 사례에서 반복해서 등장한 주제는 직접 구축하는 대신 구매할 수 있는 제3자의 시스템을 것을 찾아내는 것이었다.

그는 "인프라 구축, 소유, 실행을 사내에서 진행하면 통제권을 확보하고 더 많은 경험을 쌓을 수 있다는 장점도 있지만, 많은 시간과 자원이 낭비될 수 있다는 치명적 단점이 있다. 인프라 개발을 위한 최고의 전문지식을 갖추지 못한 경우도 허다하다"라고 지적했다.

동료들에게 시스템 추상화를 납득시키기는 쉽지 않았다. 그는 "좀 더 추상화된 시스템으로 이전할 때 흔히 벌어지는 일이다”라고 말했다.

도카는 투자자나 고문 자격으로 여러 스타트업과 일해 오고 있기도 하다. 그는 기술에 대한 열정으로 무장한 창업자들에게 인프라를 직접 운영하지 말고 호스팅을 대신 맡아줄 동급 최고의 업체를 선정하라고 늘 조언한다고 한다. 단지 시간이 절약되기 때문만은 아니다. "동급 최고의 업체와 일하면 모범 사례를 손쉽게 익힐 수 있다"라고 그는 전했다. 

그는 기업 IT 리더들이 내부 팀을 다룰 때도 똑같은 조언을 제시한다. 그는 "CTO로 보낸 11년 동안 내가 한결같이 목격했던 행태는 바로 사람들이 무슨 이유에서든 모든 것을 직접 해야 한다는 강박에 사로잡혀 있다는 것이었다. 나는 이 점을 항상 의아해했다. 따라서 시간을 낭비하지 않기 위해서는 이런 관성에 계속 깨려고 노력해야 한다”라고 말했다. ciokr@idg.co.kr
추천 테크라이브러리

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2023 International Data Group. All rights reserved.