2019.01.23

피트니스 앱 '스트라바'가 아마존 '레드시프트'를 버린 이유

Scott Carey | Computerworld UK
샌프란시스코에 위치한 인기 피트니스 앱 업체 스트라바(Strava)는 최근 자사의 대규모 데이터 레이크를 아마존 레드시프트에서 클라우드 스타트업 스노우플레이크(Snowflake)로 이전했다. 이유는 다른 스노우플레이크 고객과 다르지 않다. 레드시프트에서 처리하는 데이터 공학과 분석 수요가 증가하면서, 필요한 동시성 요구를 맞추지 못했고 쿼리 시간도 늘어났기 때문이다.



실제로 스트라바는 스노우플레이크로 이전하기 전에 점심시간이나 밤에 쿼리를 실행해야 했다. 스트라바의 분석 및 데이터 공학 책임자 케이시 타니무라는 "더는 시스템을 유지하기 힘들었다. 10억 줄 중에서 일부만 느려진 것일 수도 있지만, 팀의 생산성과 흐름을 유지하는 것은 우리에게 매우 중요했다"라고 말했다.

예를 들어, 지난해 스트라바의 한 분석가는 사용자가 어디에 참여하기를 좋아하며 어디에서 호응을 얻고 있는지(특히 콘텐츠에 대한 페이스북 '좋아요') 파악하기 위해 스트라바 모바일 앱 내에서의 활동 피드를 분석했다. 타니무라는 "당시에는 1시간 분량의 쿼리를 이용해 데이터를 찾는데 몇 주가 걸렸다. 그러나 이전 후에는 데이터를 검색하는 것과 거의 동시에 결과를 확인할 수 있게 됐다"라고 말했다.

스트라바는 현재 13조 개의 GPS 데이터 포인트, 주당 1,500만 회의 업로드, 15억 개의 분석 포인트를 포함해 120TB의 데이터를 저장하고 있다. 분석팀은 이를 이용해 사용자 경험을 해칠 가능성이 있는 부분을 찾아낸다.

스노우플레이크로의 마이그레이션은 지난해 3월에 시작해 6월에 끝났다. 타니무라는 "전반적인 과정이 '쉬웠다'. 다른 마이그레이션 변경사항을 살펴보고 온갖 문제와 데이터 정확도 문제가 생길까 우려했지만 결과적으로 그렇지 않았다. 재교육이 필요하지 않았고 아직도 마이SQL 상태 그대로다"라고 말했다. 또한 스트라바는 스노우플레이크에서 실행할 데이터 시각화를 위해 루커(Looker) 프론트엔드를 전환해 더 많은 기업 사용자가 SQL을 몰라도 사용자 데이터를 활용할 수 있도록 지원했다.

스노우플레이크의 특징
스노우플레이크가 레드시프트를 사용하던 기업에 깊은 인상을 준 것은 연산과 저장을 분리해 일부 동시 실행 문제를 해결한 것이 한 요인이다. 스트라바의 데이터 엔지니어 칼린 엥은 "레드시프트는 동시 실행을 잘 처리하지 못했다. 반면 스노우플레이크는 동시 실행 상황을 잘 처리했다. 연산과 저장을 분리하면서 독립적인 연산 클러스터를 생성해 모든 사용자가 서로 경쟁하지 않고 데이터에 접근할 수 있는 것이 특징이다"라고 말했다.

스노우플레이크는 각 작업 부하가 사실상 단독형 데이터 웨어하우스로 실행되도록 실제 새로운 클라우드 인스턴스(AWS의 S3 등)를 생성한다. 이를 통해 데이터 공학 쿼리가 전체 BI 성능에 피해를 주지 않도록 무한에 가까운 스케일과 동시 실행을 보장한다.

아마존의 레드시프트 데이터베이스를 비판하는 것은 스트라바 뿐만이 아니다. 지난해 소매기업 노스(Not On The High Street)는 레드시프트의 확장성 부재를 비판했고 1년 전에는 식품 배달 기업 딜리버루(Deliveroo)가 '동시 사용자를 처리할 수 없다'며 스노우플레이크로 이전했다.

이런 사례를 보면 엔지니어링 리소스를 확보하여 더 많은 사용자가 데이터에 접근하고 통찰을 뽑아내는 것이 핵심인 것처럼 보인다. 그러나 비용 또한 레드시프트를 떠나는 주요 이유 중 하나다.

타니무라는 "우선순위는 플랫폼과 수익을 키워 이를 비용 절감으로만 여기지 않도록 하는 것이다. 우리는 무엇이 사용자 확보, 마케팅 인식, 고객 유치에 도움이 되고, 사람들이 제품을 사용하는 데 도움이 되는지 파악하는 흥미로운 작업을 하고 있다. 따라서 가장 중요한 부분을 개발하면서 비용을 적정하게 유지하는 것에 집중하고 있다"라고 말했다.
 
새 기능
현재 3,500만 명 이상이 스트라바를 이용해 자전거, 달리기, 걷기를 기록한다. 이에 따라 기업도 풍부한 데이터 세트를 확보할 수 있다. 결정적으로 이 새로운 데이터 인프라는 쿼리 시간을 크게 줄여, 작지만 성장 중인 데이터 공학팀에서 더 많은 것을 실험할 수 있게 했다. 쿼리 최적화나 인프라가 견딜 수 있을지 걱정하지 않고 마음껏 분석할 수 있게 된 것이다.

스트라바는 데이터 인프라를 확충한 이후, 데이터로 더 많은 것을 테스트해 글로벌 히트맵(Heatmap) 같은 것을 만들어내거나 심박동 수를 통해 운동 노력을 정량화하거나 GAP(Grade Adjusted Pace) 지표를 최적화할 수 있게 됐다. 예를 들어, 사용자들은 2018년 앱 사용량을 보여주는 연말 동영상을 만들 수 있었는데, 이전의 데이터 인프라에서는 작업이 더 복잡하고 느렸을 것이다.

타니무라는 "많은 새로운 데이터 공학 프로젝트를 진행중이다. 제품 경험을 개선하고 새로운 제품을 개발하며 데이터를 사용자에게 돌려줘 그들의 운동을 돕고 그들이 목표를 달성할 수 있도록 하는 흥미로운 것들이다"라고 말했다. ciokr@idg.co.kr



2019.01.23

피트니스 앱 '스트라바'가 아마존 '레드시프트'를 버린 이유

Scott Carey | Computerworld UK
샌프란시스코에 위치한 인기 피트니스 앱 업체 스트라바(Strava)는 최근 자사의 대규모 데이터 레이크를 아마존 레드시프트에서 클라우드 스타트업 스노우플레이크(Snowflake)로 이전했다. 이유는 다른 스노우플레이크 고객과 다르지 않다. 레드시프트에서 처리하는 데이터 공학과 분석 수요가 증가하면서, 필요한 동시성 요구를 맞추지 못했고 쿼리 시간도 늘어났기 때문이다.



실제로 스트라바는 스노우플레이크로 이전하기 전에 점심시간이나 밤에 쿼리를 실행해야 했다. 스트라바의 분석 및 데이터 공학 책임자 케이시 타니무라는 "더는 시스템을 유지하기 힘들었다. 10억 줄 중에서 일부만 느려진 것일 수도 있지만, 팀의 생산성과 흐름을 유지하는 것은 우리에게 매우 중요했다"라고 말했다.

예를 들어, 지난해 스트라바의 한 분석가는 사용자가 어디에 참여하기를 좋아하며 어디에서 호응을 얻고 있는지(특히 콘텐츠에 대한 페이스북 '좋아요') 파악하기 위해 스트라바 모바일 앱 내에서의 활동 피드를 분석했다. 타니무라는 "당시에는 1시간 분량의 쿼리를 이용해 데이터를 찾는데 몇 주가 걸렸다. 그러나 이전 후에는 데이터를 검색하는 것과 거의 동시에 결과를 확인할 수 있게 됐다"라고 말했다.

스트라바는 현재 13조 개의 GPS 데이터 포인트, 주당 1,500만 회의 업로드, 15억 개의 분석 포인트를 포함해 120TB의 데이터를 저장하고 있다. 분석팀은 이를 이용해 사용자 경험을 해칠 가능성이 있는 부분을 찾아낸다.

스노우플레이크로의 마이그레이션은 지난해 3월에 시작해 6월에 끝났다. 타니무라는 "전반적인 과정이 '쉬웠다'. 다른 마이그레이션 변경사항을 살펴보고 온갖 문제와 데이터 정확도 문제가 생길까 우려했지만 결과적으로 그렇지 않았다. 재교육이 필요하지 않았고 아직도 마이SQL 상태 그대로다"라고 말했다. 또한 스트라바는 스노우플레이크에서 실행할 데이터 시각화를 위해 루커(Looker) 프론트엔드를 전환해 더 많은 기업 사용자가 SQL을 몰라도 사용자 데이터를 활용할 수 있도록 지원했다.

스노우플레이크의 특징
스노우플레이크가 레드시프트를 사용하던 기업에 깊은 인상을 준 것은 연산과 저장을 분리해 일부 동시 실행 문제를 해결한 것이 한 요인이다. 스트라바의 데이터 엔지니어 칼린 엥은 "레드시프트는 동시 실행을 잘 처리하지 못했다. 반면 스노우플레이크는 동시 실행 상황을 잘 처리했다. 연산과 저장을 분리하면서 독립적인 연산 클러스터를 생성해 모든 사용자가 서로 경쟁하지 않고 데이터에 접근할 수 있는 것이 특징이다"라고 말했다.

스노우플레이크는 각 작업 부하가 사실상 단독형 데이터 웨어하우스로 실행되도록 실제 새로운 클라우드 인스턴스(AWS의 S3 등)를 생성한다. 이를 통해 데이터 공학 쿼리가 전체 BI 성능에 피해를 주지 않도록 무한에 가까운 스케일과 동시 실행을 보장한다.

아마존의 레드시프트 데이터베이스를 비판하는 것은 스트라바 뿐만이 아니다. 지난해 소매기업 노스(Not On The High Street)는 레드시프트의 확장성 부재를 비판했고 1년 전에는 식품 배달 기업 딜리버루(Deliveroo)가 '동시 사용자를 처리할 수 없다'며 스노우플레이크로 이전했다.

이런 사례를 보면 엔지니어링 리소스를 확보하여 더 많은 사용자가 데이터에 접근하고 통찰을 뽑아내는 것이 핵심인 것처럼 보인다. 그러나 비용 또한 레드시프트를 떠나는 주요 이유 중 하나다.

타니무라는 "우선순위는 플랫폼과 수익을 키워 이를 비용 절감으로만 여기지 않도록 하는 것이다. 우리는 무엇이 사용자 확보, 마케팅 인식, 고객 유치에 도움이 되고, 사람들이 제품을 사용하는 데 도움이 되는지 파악하는 흥미로운 작업을 하고 있다. 따라서 가장 중요한 부분을 개발하면서 비용을 적정하게 유지하는 것에 집중하고 있다"라고 말했다.
 
새 기능
현재 3,500만 명 이상이 스트라바를 이용해 자전거, 달리기, 걷기를 기록한다. 이에 따라 기업도 풍부한 데이터 세트를 확보할 수 있다. 결정적으로 이 새로운 데이터 인프라는 쿼리 시간을 크게 줄여, 작지만 성장 중인 데이터 공학팀에서 더 많은 것을 실험할 수 있게 했다. 쿼리 최적화나 인프라가 견딜 수 있을지 걱정하지 않고 마음껏 분석할 수 있게 된 것이다.

스트라바는 데이터 인프라를 확충한 이후, 데이터로 더 많은 것을 테스트해 글로벌 히트맵(Heatmap) 같은 것을 만들어내거나 심박동 수를 통해 운동 노력을 정량화하거나 GAP(Grade Adjusted Pace) 지표를 최적화할 수 있게 됐다. 예를 들어, 사용자들은 2018년 앱 사용량을 보여주는 연말 동영상을 만들 수 있었는데, 이전의 데이터 인프라에서는 작업이 더 복잡하고 느렸을 것이다.

타니무라는 "많은 새로운 데이터 공학 프로젝트를 진행중이다. 제품 경험을 개선하고 새로운 제품을 개발하며 데이터를 사용자에게 돌려줘 그들의 운동을 돕고 그들이 목표를 달성할 수 있도록 하는 흥미로운 것들이다"라고 말했다. ciokr@idg.co.kr

X