BigQuery와 Google Compute Engine으로 적극적인 데이터 활용 기반 마련
NBT에 대하여
NBT는 2012년 설립된 스타트업입니다. 세계 최초 모바일 잠금화면에 포인트 플랫폼을 접목한 ‘캐시슬라이드(cashslide)'를 개발해 현재 2,500만 이상의 사용자를 확보했고, 해외 시장에도 적극 진출하여 중국에 ‘쿠화(coohua)'를 안착시켰습니다. NBT는 기술을 바탕으로 세상에 의미있게 바꿀 '제품과 서비스', '일하는 방식과 문화' 그리고 ‘사람들’을 꿈꿉니다.
어떤 어려움을 겪고 계신지 알려주세요. Google Cloud가 도와드리겠습니다.
문의하기NBT는 모바일 포인트 플랫폼 서비스를 위해 갖가지 데이터를 수집, 분석하고 있습니다. 늘어나는 서비스만큼 폭발하는 데이터들을 빠르고 효과적으로 분석할 수 있는 클라우드 서비스가 필요했습니다. NBT는 BigQuery와 Google Cloud Platform을 통해 데이터의 접근성과 실시간 분석 환경을 갖췄고, 안정적으로 데이터 기반 서비스를 운영하고 있습니다.
구글 클라우드 사용 효과
- 시간 단위의 쿼리 처리가 초 단위로 단축
- 기존 데이터 분석 서비스와 유연한 연결성
- 효과적인 데이터 파이프라인 확보
빠르고 안정적인 로그 데이터 분석 솔루션 구축
스마트폰 잠금 화면을 플랫폼으로 광고를 서비스하는 ‘캐시슬라이드’를 비롯해 모바일 포인트 광고 네트워크 서비스인 ‘애디슨오퍼월’, 모바일 포인트 쇼핑 플랫폼, 실시간 퀴즈쇼 ‘더 퀴즈 라이브’ 등 여러가지 포인트 기반의 플랫폼 서비스를 개발하고 있습니다.
NBT는 운영하는 서비스가 많고 앱 출시 주기도 짧은 편입니다. 광고 미디어는 이용자의 빠른 반응이 중요하기 때문에 이용자의 반응을 예민하게 살펴봐야 합니다. NBT는 2012년 창업 단계부터 모든 로그 데이터를 수집, 분석해 왔고, 이를 바탕으로 빠른 판단과 실행으로 서비스를 다양화하는 것을 중요하게 생각해 왔습니다. Google Cloud Platform, Firebase와 BigQuery는 NBT가 빠르게 움직일 수 있도록 해주는 해주는 밑바탕이 되고 있습니다.
“빠르고 안정적인 실시간 데이터 처리 환경의 필요”
“서비스들이 쏟아내는 실시간 로그 데이터가 막대합니다. 이 데이터들을 모아 놓는 것 뿐 아니라 세밀한 분석이 필요했는데, 쿼리를 전송하면 한정된 자원 때문에 답을 얻기까지 많은 시간이 필요했습니다. 쿼리가 작동하는 동안에는 모든 자원이 집중되기 때문에 다른 사람이 데이터에 접근하지 못하는 상황이 일어나기도 했습니다.”
NBT 박정춘 이사는 Google Cloud Platform의 도입 이유로 안정적이고 매끄러운 분석 환경을 꼽았습니다. NBT 내부에서는 지난 2016년부터 데이터 분석에 대해 새로운 방법을 도입해야겠다는 필요성이 제기됐습니다. 데이터에 대한 접근성과 편의성을 높이고 인프라 관리도 효율적으로 처리할 수 있다면 NBT가 추구하는 빠른 시장 대응에도 유리해질 수 있습니다.
NBT는 여러가지 서비스를 두고 고민했는데, Firebase를 통해 서비스 로그를 수집하고 Google Compute Engine과 BigQuery를 통해 분석하는 큰 흐름을 구성했습니다. Google Cloud Platform 위에 하나의 데이터 파이프라인을 구성한 것입니다.
“Google Cloud Platform은 안정성이나 자원 관리에 대한 부담을 덜어낼 수 있었고, BigQuery의 데이터 처리 속도는 비교 자체가 의미가 없을 만큼 빠르고 안정적이었습니다. 한 두 시간씩 걸리던 쿼리가 몇 초만에 끝났습니다. 현업에서는 쿼리가 인프라에 어떤 영향을 줄 지에 대한 걱정 대신 데이터로 무엇을 할 지에 대해서만 생각하면 됐습니다.”
현재 NBT는 Google Compute Engine 위에 ‘Apache Kafka’를 통해 GCS에 데이터를 쌓고 있습니다. 쌓인 데이터를 스트리밍으로 분산 처리를 한 뒤 분석용 데이터는 BigQuery에 실시간데이터는 Elasticsearch에 쌓입니다. NBT가 운영하는 여러 서비스의 앱과 다른 클라우드 인프라에서 만들어내는 데이터에 대한 모든 것들을 Google Cloud Platform에서 체계적으로 모아 분석까지 처리하는 구조입니다.
“처음 클라우드 서비스를 선택할 때는 플랫폼의 특정 기능이나 서비스를 기준으로 세우지 않았습니다. NBT 내부에서 오랫동안 다져온 데이터 활용 경험을 토대로 오픈소스 기반의 데이터 분석 파이프라인이 갖춰져 있었고, 이 데이터 파이프라인을 효과적으로 운영할 수 있는 서비스를 찾는 것이 목표였습니다. Google Compute Engine을 비롯한 Google Cloud Platform은 마치 조각을 맞추듯 원하는 요소들을 언제든 하나하나 손쉽게 붙여 데이터 분석 파이프라인의 활용도를 높여주는 환경이었습니다.”
박정춘 이사는 Google Cloud Platform의 유연성을 높이 샀습니다. 특히 다른 서비스나 시스템과 연동이 수월했던 점이 인상 깊었다는 설명입니다. Firebase부터 Data Studio, AppS script를 비롯해 Google Workspace의 Google Sheets까지 데이터가 자연스럽게 이어지고, 기존의 오픈소스 기반 데이터 파이프라인의 처리 과정과 연결도 매끄러웠습니다. 클라우드 개발 경험이 많았지만 처음 Google Cloud Platform은 이전에 접했던 서비스들과 분명히 다른 접근법을 갖고 있다는 것이 박정춘 이사의 설명입니다.
“클라우드로 만들어내는 결과물이 비슷하다고 해도 그 과정과 철학, 접근 방법이 많이 달랐습니다. Google Cloud Platform은 모든 요소들을 API처럼 활용할 수 있었습니다. 각각의 제품을 구입하는 것이 아니라 제가 필요한 기능들의 세세한 모음같다는 인상을 받았습니다. 그래서 불필요한 덩어리를 어쩔 수 없이 붙이는 일 없이 서비스의 작은 부분까지 입맛에 맞게 만들 수 있었습니다.”
BigQuery 역시 기존 서비스와 연결이 쉽고 매끄러웠습니다. 애초 NBT는 데이터를 보관하고, 쿼리를 통해 원하는 형태로 가공하는 기능을 고도화하는 역할을 위해 BigQuery를 살펴보게 됐습니다. BigQuery는 자체적으로도 데이터 보관, 처리, 분석이 쉬웠고, Google Compute Engine에서 운영되는 오픈소스 기반의 데이터 파이프라인에 연결도 쉬웠습니다. 전체적으로 파이프라인이 강력한 쿼리 성능을 갖게 되는 효과를 가져왔습니다.
서비스의 유연성은 앱 개발 환경에도 연결됩니다. NBT는 앱 개발의 많은 부분에 Firebase를 활용합니다. NBT의 서비스는 앱을 기반으로 작동하기 때문에 앱과 관련된 데이터를 수집하기에 유리합니다. Firebase는 앱 활용 습관을 추적하고, 에러 분석과 푸시 전송에 대한 반응까지 가져옵니다. 이 데이터는 Google Compute Engine에 구축한 오픈소스 기반 데이터 처리 솔루션을 거쳐 다시 BigQuery로 쌓입니다. 앱이 처음 출시될 때부터 운영되는 모든 과정에서 세세한 로그 데이터가 수집되기 때문에 서비스에 대한 반응을 파악해 운영과 새로운 서비스를 만드는 데에 큰 영향을 끼칩니다.
“Google Cloud Platform으로 데이터를 집중하고, BigQuery로 분석 결과를 뽑아내면서 한 두 시간씩 걸리던 쿼리 과정을 몇 초 수준으로 줄여 즉각적인 답을 내어 주었습니다. Google Cloud Platform은 안정성이나 자원 관리에 대한 부담이 없었고, 처리 속도가 비교할 수 없을 만큼 빨랐습니다. 전반적으로 운영이 쉬워서 현업에서는 분석된 데이터로 무엇을 할 지만 생각하면 됐습니다.”
즉각적인 쿼리 분석, 데이터 접근성 높여
데이터의 가치는 실제로 그 결과가 업무에 얼마나 쓰일지에 달려 있습니다. 기업들이 앞다투어 데이터 파이프라인을 갖추는 이유도 데이터 전문가가 아니어도 여러 환경에서 데이터를 통해 상황을 읽고, 통찰력을 얻어 의사결정을 하는 업무 문화를 뿌리내리는 데에 있습니다.
“직원들이 필요한 정보에 바로 접근할 수 있도록 데이터 셋을 정리해서 제공하고 있습니다. 미리 마케팅이나 운영 등 필요한 부서에 제공되는 주요 지표는 미리 예약 쿼리를 통해 자동으로 만들고 여러가지 경로로 제공합니다. 중요한 지표는 항상 고개만 돌리면 볼 수 있도록 사내 모니터에 실시간으로 뿌리기도 합니다. 데이터의 원본을 비롯해 조금 더 깊은 내용을 보고 싶다면 권한을 바탕으로 단계적으로 접근할 수 있도록 했습니다.”
대부분 업무에 필요한 데이터는 정해져 있습니다. 서비스 이용에 대한 데이터를 매일 같은 시간에 집계하고, 이를 바탕으로 문제를 파악하고, 이용자들의 요구사항을 읽어내는 것부터 매출이나 버그 등 경영과 운영에 대한 정보들이 집계되는 것이지요.
NBT가 운영하는 모든 서비스들은 대부분 같은 데이터 파이프라인을 통해 데이터를 기록하고 분석할 수 있도록 설계되기 때문에 신규 서비스라고 해도 익숙하게 데이터를 들여다볼 수 있습니다. 이전에는 조금 다른 데이터가 필요하면 개발 부서에 분석을 요구해야 했습니다. 이 과정은 번거로운 것 뿐 아니라 분석 결과를 얻는 데까지 걸리는 시간도 짧지 않았습니다. 데이터 파이프라인을 구축한 이후로는 직원 모두에게 기본으로 제공되는 데이터 세트 외에 추가로 필요한 데이터를 다각도로 활용할 수 있는 문이 열렸습니다.
또한 Google Cloud Platform의 Google Data Studio를 이용하면 업무에 따라 접근 권한을 부여할 수 있고, 미리 선택된 데이터 세트 안에서 필요한 정보들을 직접 만져가며 원하는 정보를 얻어낼 수 있습니다. 접근성을 높이면서도 동시에 보안도 탄탄하게 지킬 수 있습니다. 이 때도 오랫동안 데이터를 쌓고 분석해 온 경험과 BigQuery의 빠른 처리 속도를 바탕으로 데이터를 다양한 각도에서 살펴볼 수 있습니다. 물론 이 외에도 특별한 경우 원본 데이터를 바탕으로 완전히 새로운 분석이 필요한 경우가 있습니다.
“BigQuery의 효과는 이전에 쓰던 빅데이터 환경과 비교가 어려울 정도입니다. 한 두 시간씩 걸리던 쿼리 과정이 BigQuery를 이용하면 몇 초 안에 원하는 답을 꺼내 줍니다. BigQuery 안에는 데이터웨어하우스 수준으로 모든 데이터들이 갖춰져 있고, 즉각적인 답을 내어주기 때문에 반복해서 쿼리를 전송해도 전체 데이터 시스템에 영향을 끼치지 않고 바로 원하는 답을 찾아갈 수 있습니다.”
자연스럽게 진화하는 데이터 파이프라인
“처음부터 데이터 파이프라인을 따로 구상해서 시작했던 것은 아닙니다. 비즈니스 초기부터 데이터의 중요성을 염두에 두고 비즈니스를 시작했고, 서서히 데이터와 분석의 수요가 늘어나면서 데이터를 다루는 경험이 쌓이게 됐습다. 그 과정에서 자연스럽게 데이터의 흐름이 생기면서 적절한 도구를 더해가다 보니 데이터 파이프라인이 만들어졌습니다.”
데이터를 오랫동안 활용한 경험이 있지만 앱에서 쏟아지는 수많은 데이터를 적절한 시기에 분석해내는 일은 그렇게 간단한 일이 아닙니다. 골칫거리 중 하나는 제한된 자원 안에서 속도와 안정성을 동시에 만족하는 데이터 관리 솔루션을 찾아내는 것이었습니다. NBT는 서비스를 운영하면서 여러 클라우드의 데이터 분석 솔루션을 활용하기도 했고, 하둡 클러스터를 도입하기도 했습니다. 이후 Apache Kafka를 쓰기 시작하면서 데이터를 한 곳에 모을 수 있는 밑바탕이 마련됐고, 여기에 실시간 분석을 위한 ElasticSearch와 데이터 통합 관리 도구인 BigQuery가 더해지면서 원하는 분석 결과를 쉽고 빠르게 뽑아낼 수 있게 됐습니다. Google Data Studio나 Google Sheets 등 실제 현업에서 데이터가 활용되는 과정까지 매끄럽게 연결되는 일련의 과정이 완성된 것이지요.
데이터 파이프라인의 완성은 데이터를 실제로 활용할 수 있는지의 여부에 달려 있습니다. 이전에는 개발자가 아니면 원하는 정보를 얻어낼 수 없었습니다. 하지만 이제는 데이터가 언제든 분석될 수 있도록 준비되어 있고, 간단한 명령어로 쿼리를 전송하면 되기 때문에 필요하면 사내의 누구라도 데이터를 자유롭게 활용할 수 있습니다.
NBT는 해외 리전에서 Google Cloud Platform을 이용하는데 기본적인 서비스 속도에 지연이 전혀 없습니다. 태풍 때문에 기존에 설계해 둔 네트워크 연결이 중단된 적이 있었는데, 서비스가 멈출 것이라는 걱정과 달리 다른 경로를 통해서 서비스가 이어져 안정성도 만족스러웠습니다.
NBT의 다음 고도화는 ‘컨테이너'입니다. 벌써 Google Cloud Platform 위에서 Kubernetes 기반으로 서비스를 개발, 운영하는 것을 검토하고 있습니다.
“빠르게 바뀌는 비즈니스 환경에서 빠르게 서비스를 실행하고 검증, 배포하려면 컨테이너 개발 환경을 떼어놓을 수 없습니다. 서비스의 설계 단계부터 Kubernates를 활용해서 빠르고 효율적인 서비스 인프라를 구축할 계획을 세우고 있습니다.”
데이터 분석의 고도화도 준비중입니다. NBT는 이미 오랫동안 쌓아온 데이터를 온전히 갖추고 있고, Google Cloud Platform을 통해 다양한 서비스를 붙일 수 있는 기반도 마련됐습니다. 자연스럽게 머신러닝에 관심을 두고 있습니다. 이미 광고 프로그램의 운영과 보상, 그리고 어뷰징을 찾아내기 위해 Cloud AutoML의 Vision AI를 통한 이미지 해석을 서비스 곳곳에 적용하고 있습니다. 앞으로 머신러닝을 더 적극적으로 활용해 부정적인 포인트 수집, 어뷰징 등을 판단하는 방법도 고민입니다.
NBT에게 데이터는 중요한 자산입니다. 데이터가 있기 때문에 시장을 빠르게 읽을 수 있고, 적절한 운영에 대한 답을 얻어가면서 성장하는 것이지요. Firebase와 BigQuery로 이어지는 데이터 파이프라인 구조는 단순하면서도 관리가 쉽고, 적은 비용으로 최대의 효과를 누릴 수 있는 방법으로, NBT의 데이터 활용도를 높여주고 있습니다. 박정춘 이사는 Google Cloud Platform의 서비스가 데이터의 활용도를 높여주었고, 그 데이터가 다시 NBT에게 새로운 비즈니스의 가능성과 함께 지속성을 만들어주는 무기가 되고 있다고 강조했습니다.
“데이터가 있기 때문에 어떤 앱이든 빨리 만들어내고, 서둘러 서비스를 시작할 수 있는 노하우를 가질 수 있게 됐습니다. 데이터는 지금 무엇을 해야 하는지 알려주는 역할 뿐 아니라 앞으로의 방향성, 다음 단계의 미션을 주는 도구이기도 합니다.”
어떤 어려움을 겪고 계신지 알려주세요. Google Cloud가 도와드리겠습니다.
문의하기NBT에 대하여
NBT는 2012년 설립된 스타트업입니다. 세계 최초 모바일 잠금화면에 포인트 플랫폼을 접목한 ‘캐시슬라이드(cashslide)'를 개발해 현재 2,500만 이상의 사용자를 확보했고, 해외 시장에도 적극 진출하여 중국에 ‘쿠화(coohua)'를 안착시켰습니다. NBT는 기술을 바탕으로 세상에 의미있게 바꿀 '제품과 서비스', '일하는 방식과 문화' 그리고 ‘사람들’을 꿈꿉니다.