마케팅 데이터 웨어하우스 구축

이 도움말에서는 여러 소스에서 데이터를 수집하여 전에는 사용할 수 없었던 리마케팅 목록을 만드는 방법을 살펴봅니다. 이 목록을 사용하여 고객의 전체적인 뷰를 파악할 수 있습니다. 고객이 귀사의 브랜드와 어떤 식으로 상호작용하는지 파악할 때 평생 가치(LTV)를 형성하고 더 깊숙이 꿰뚫어보게 됩니다.

마케터의 역할은 전통적인 캠페인 실행에서 연관성 있는 실시간 참여로 진화하고 있습니다. 데이터 캡처와 소급되는 성과 분석이 낡은 패러다임을 추구했다면, 오늘날의 마케터는 데이터 기반의 고객 통찰, 성과에 따른 전략, 그리고 혁신적이고 사려 깊은 타겟팅을 활용합니다.

이러한 새로운 접근법은 완전히 새로운 과제를 제시합니다. 예를 들어 저장소 비용이 점점 더 저렴해지면서 데이터가 기하급수적으로 폭발하게 되지만 그 데이터를 한 곳에 모아서 분석하는 일이 과제로 남습니다. 다음과 같은 복잡한 요인이 존재합니다.

  • 여러 가지 데이터 출처와 형식이 종종 고립되기도 합니다.
  • 분석 및 추출, 변환, 로드(ETL) 도구가 너무 많아서 구현하기가 어려울 수 있습니다.
  • 기술 리소스가 부족합니다.
  • 테스트하고 프로토타입을 만들기 위한 유연성이 부족합니다.

이 문서에서는 이러한 요소를 알아보고 자신의 데이터에 사용할 수 있는 워크플로를 만드는 방법을 설명합니다. 여기서는 구조화 쿼리 언어(SQL)에 대한 기본적인 지식이 있다고 가정합니다. 머신러닝과 관련된 일부 내용에서는 데이터 분석가나 데이터과학자의 도움이 필요할 수도 있습니다.

사용 사례

이 예에 나오는 가상의 회사는 사용자가 최고마케팅경영자로 있는 온라인 화장품 판매사입니다. 사용자는 DevOps팀의 기술적인 관여를 최소화하면서 핵심 정보를 얻고자 합니다. IT 리소스는 제한적이지만 데이터과학자 도움을 받을 수 있습니다.

주요 해결 과제는 광고 지출의 투자수익률(ROI)을 추적하여 마케팅 예산을 최적화하는 것이지만, 다음과 같은 데이터 문제에 직면하게 됩니다.

  • 데이터가 여러 소스 가운데 특히 Google 애널리틱스 360, 고객 관계 관리(CRM), Campaign Manager 제품에 분산되어 있습니다.
  • 고객 및 매출 데이터는 CRM 시스템에 저장되어 있습니다.
  • 일부 데이터는 쿼리가 가능한 형식이 아닙니다.
  • 데이터를 분석하고 결과를 다른 부서와 공유하기 위한 공통 도구가 존재하지 않습니다.

이 도움말의 접근법은 이러한 문제에 대해 다루고 다음과 같은 솔루션의 개요를 설명합니다.

  • 데이터를 하나의 공통된 저장소 위치에 수집합니다
  • 쿼리가 가능하고 여러 소스 간에 결합이 가능하도록 데이터를 변환합니다.
  • 표준 보고서 API에서 제공하지 않는 보고 측정기준에 대한 액세스 권한을 얻습니다.
  • 머신러닝 작업을 활용하여 사용자 그룹을 발견합니다.

이러한 작업을 수행함으로써 전에는 사용할 수 없었던 리마케팅 목록을 생성할 수 있습니다.

아키텍처

아래의 아키텍처 다이어그램은 여러 소스의 데이터를 내부 데이터화하는 방식에서 리마케팅 의사 결정을 내리는 방식으로 변화하는 과정을 보여줍니다.

데이터 수집에서 리마케팅 결정까지
그림 1: 데이터의 내부 데이터화에서 리마케팅 의사 결정을 내리는 방식으로 변화.
  • 이 다이어그램에서 일부 데이터세트는 옅은 색상으로 되어 있는데, 이는 해당 데이터세트가 이 문서에서 설명하는 특정 사용 사례에 속하지 않음을 나타냅니다. 단, 동일한 방식으로 처리할 수는 있습니다. 예를 들어 이 문서는 Campaign Manager 데이터로 Google Ad Manager를 실행하거나 YouTube 쿼리를 실행하는 방법을 보여주지만 BigQuery로 내보낸 데이터에도 동일한 작업을 수행할 수 있습니다.
  • 이 다이어그램에는 More advanced라는 섹션이 있습니다. 데이터를 중앙 위치에 통합시키면 데이터 과학자가 이 데이터를 머신러닝과 같은 고급 작업에 사용하도록 도울 수 있습니다.

기능 요구사항

이 섹션에서는 다음과 같은 기능 요구사항에 따른 기술 옵션에 대해 설명합니다.

  • 데이터 수집 및 저장
  • 데이터 변환
  • 데이터 분석
  • 데이터 시각화
  • 데이터 활성화

데이터 수집 및 저장

통찰력을 얻기 위한 첫 번째 단계는 데이터를 중앙 위치에 통합하는 것입니다. 가장 중요한 마케팅 채널과 데이터 소스에서(Google 데이터부터 시작하여) 정보를 효율적으로 수집하는 데 도움이 되는 기술을 선택합니다.

BigQuery는 저장소 기능과 쿼리 엔진을 제공하고 여러 가지 소스의 데이터를 내부 데이터화할 수 있습니다. 이 도움말에서는 다음과 관련된 데이터를 수집하려고 합니다.

  • Google Ads: BigQuery Data Transfer Service는 Google Marketing Platform, Google Ads 또는 YouTube와 같은 소스의 데이터를 원활하게 자동으로 수집할 수 있습니다.
  • 애널리틱스 360: 10분 간격부터 매일까지 데이터 최신 상태 옵션을 살펴보고, 요구사항에 가장 잘 맞는 옵션을 찾습니다. 애널리틱스 360은 BigQuery에 직접 연결됩니다.
  • 자사 데이터: CRM 또는 판매 시점(POS)과 같은 소스의 데이터를 내부 데이터화할 수 있습니다. 대부분의 경우에는 bq 명령줄 도구, API 또는 웹 UI를 사용하여 오프라인에서 이 데이터를 수집합니다. 데이터를 로컬에서 또는 Cloud Storage에서 로드할 수 있습니다. Cloud Storage는 큰 데이터세트 또는 데이터 레이크 구축을 고려하는 경우에 권장됩니다.
데이터 수집 과정
그림 2: 데이터 수집 및 통합.

변환

이 섹션에서는 분석을 위해 데이터를 준비하는 과정을 다루며, 여기에는 데이터를 삭제하고 형식을 다시 지정하여 커다란 데이터세트에 일관성을 제공하는 작업이 포함됩니다. 여러분은 분석가가 예를 들어 분산된 변환을 확장하고 실행할 수 있는 시각적 도구를 통해 코딩을 거의 하지 않거나 아예 하지 않고 데이터를 정리할 수 있기를 바랍니다.

BigQuery를 사용하거나 를 사용하여 한 테이블에서 다른 테이블로 일괄 변환을 수행할 수 있습니다 그러나 고급 변환의 경우에는 프로그래밍은 최소로 요구하는 복잡한 프로세싱 파이프라인을 통해 테라바이트 수준의 데이터를 실행할 수 있는 시각적 도구를 더 선호할지도 모릅니다.

Other_data 필드와 같은 키-값 문자열을 Campaign Manager 활동 테이블로 내보낸다고 가정합니다.

key1=value1&key2=value2&...keyN=valueN

이 문자열을 다음과 유사한 열과 값으로 구성된 테이블로 분할하려고 합니다.

key1 | key2 | … | keyN
----------------------
val1 | val2 | … | valN

키 이름을 열에 표시되게 하면 다른 기존 테이블과의 결합이 쉬워집니다. 이 키는 CRM 사용자 ID, 제품 목록, UTM(Urchin Tracking Module) 데이터와 같은 커스텀 정보를 포함할 수 있습니다.

Cloud Dataprep by Trifacta는 변환을 정의하는 데 사용할 수 있는 레시피라는 기능을 제공합니다. 레시피는 분산 환경의 백그라운드에서 실행되는 여러 작업으로 구성된 시퀀스입니다.

Cloud Dataprep 레시피

레시피를 정의하면 Trifacta의 Cloud Dataprep이 데이터가 어떻게 표시될지에 관한 미리보기를 제공합니다. 아래의 스크린샷에서, 변환된 데이터가 저장될 때 트리트먼트, 제품, 문제, 멤버십과 같은 새 열을 포함한다는 점에 주목하세요.

변환된 데이터 저장하기

또한, Trifacta의 Cloud Dataprep은 BigQuery를 포함한 다양한 입출력 소스를 지원하기 때문에 본 솔루션을 위한 좋은 선택이 됩니다. Trifacta의 Cloud Dataprep은 Campaign Manager에서 가져온 BigQuery 데이터세트에서 읽어서 그 결과를 다시 BigQuery에 저장할 수 있습니다.

분석

정리된 데이터를 중앙에 저장하고 나면 통찰력을 얻기 위한 분석을 시작할 수 있습니다. 데이터를 BigQuery에서 사용할 수 있게 되면 다음과 같은 이점이 있습니다.

  • 예를 들어 Google Ad Manager 보고서 API 또는 UI가 처리할 수 있는 것보다 더 큰 데이터에 쿼리를 실행할 수 있습니다.
  • UI 또는 보고서 API에서 제공되지 않을 수도 있는 더 세부적인 데이터에 액세스할 수 있습니다.
  • 공통 키를 사용하여 여러 소스의 데이터를 처리하고 결합할 수 있습니다.

이 섹션의 나머지 부분에서는 사용 가능한 데이터로 무엇을 할 수 있는지 설명합니다. 이 섹션은 다음 두 부분으로 나뉘어 있습니다.

  • 구조화 질의 언어(SQL)에 관한 기본적인 지식을 필요로 하고 대부분 다음 두 가지 유형의 분석에 집중하는 기본 분석

    • 비즈니스의 현황을 들여다보는 기술적 분석
    • 현황의 원인을 파악하는 진단적 분석
  • 데이터 분석가나 데이터 과학자가 필요할 수도 있고 다음과 같은 새로운 분석의 가능성을 열어주는 머신러닝에 기초한 분석

    • 역사적 데이터를 사용하여 결과를 예상하는 예측적 분석
    • 결과를 예상하여 전략을 준비하는 처방적 분석

기본 분석

광고 관련 제품은 매일 기가바이트 또는 테라바이트 수준의 로그 데이터를 생성할 수 있어서 분석하기가 어려울 수 있습니다. 바로 사용할 수 있는 보고 도구는 쿼리될 수 있는 측정기준을 제한하거나 반드시 적절한 결합을 제공하지는 않거나 제공되는 모든 원시 데이터를 다 쿼리하지는 못하고 대신 집계를 제공하는 경우가 있습니다.

기술적 분석과 진단적 분석은 보통 탐색을 필요로 하는데, 이는 빅 데이터에 관한 쿼리를 실행한다는 뜻입니다. 이러한 도구는 확장 가능한 아키텍처를 요구합니다. 그러나 최소의 인프라 오버헤드와 합리적인 비용으로 이러한 아키텍처를 구축하는 일은 쉽지 않으며, 기술적 자원이 한정적일 때는 특히 더 그렇습니다. 한 가지 솔루션은 BigQuery를 사용하는 것입니다. BigQuery는 서버 설치 없이 테라바이트의 데이터를 분 또는 시간 단위가 아니라 초 단위로 쿼리할 수 있는 저장소이자 쿼리 엔진입니다.

BigQuery에서 쿼리를 실행하는 가장 간편한 방법은 대화형 UI를 사용하는 것입니다. 하지만 이 데이터 쿼리 페이지에서는 사용할 수 있는 다른 옵션을 설명합니다.

고급 분석 및 강화

기술적인 지식이 좀더 풍부하거나 팀에 데이터 분석가나 데이터 과학자가 있다면, 예측 알고리즘을 실행하여 향후에 데이터세트에 다시 내부 데이터화할 수 있는 더 많은 지식을 얻어보세요. 일반적으로 수행하는 작업은 다음과 같습니다.

  • 비지도 머신러닝을 사용하여 고객을 비슷한 잠재고객으로 클러스터링
  • 회귀를 사용하여 매출액 또는 고객 LTV 예측
  • 제품 감정 분석 실행(예: 의견 사용)

머신러닝에서는 알고리즘이 중요한 반면, 훌륭한 예측의 핵심은 모델을 교육할 수 있는 데이터의 양과 질입니다. BigQuery가 데이터를 내부 데이터화한 후에는 다음이 필요합니다.

  • 다양한 GCP 구성요소를 연결하여 데이터 사이언스 작업을 간소화할 수 있는 양방향 도구
  • 최소의 DevOps로 규모에 맞게 교육과 예측을 실행할 수 있는 머신러닝 플랫폼

AI Platform은 학습과 예측 모두에서 TensorFlow 모델을 관리 및 확장 가능한 방식으로 실행할 수 있으며 초매개변수 조정과 같은 추가 기능을 제공합니다. TensorFlow는 원래 Google에서 출시한 최고의 오픈소스 소프트웨어(OSS) 수치 라이브러리입니다.

Cloud DatalabBigQuery, Cloud Storage 또는 AI Platform과 같은 GCP 제품이나 Cloud Natural Language API와 같은 Perception API에 연결할 수 있는 기능이 추가된 서비스로 Jupyter 메모장을 제공합니다. 데이터 과학자는 Cloud Datalab을 사용하여 대화형 분석 세션을 실행하고 모든 제품의 요소를 연결할 수 있습니다. Cloud Datalab에는 NumPyPandas와 같은 다른 표준 라이브러리가 포함되어 있습니다.

Cloud Datalab에서 예를 들어 Natural Language API 예측을 사용하여 감정 분석을 수행할 수 있습니다. 이 히스토그램은 대다수의 고객이 제품, 브랜드, 또는 둘 다에 대해 긍정적인 느낌을 갖고 있음을 보여줍니다.

x = pd.Series(df.avg_sentiment, name="sentiment")
fig, ax = plt.subplots()
ax.set_title("Avg. Sentiment For All Products")
ax = sns.distplot(x, ax=ax)

감정 분석

시각화

노트북에서 BigQuery UI 또는 Python 코드로 SQL 쿼리를 작성하는 것이 번거롭게 느껴질지도 모릅니다. 다음 예를 살펴보세요.

  • 관리자가 활용 가능한 대시보드에 빨리 액세스해야 합니다.
  • 기술 지식이 부족한 분석가가 데이터를 상세히 분석해야 합니다.

Google Data Studio에서는 아무 준비 없이, 또는 미리 구성된 템플릿을 사용하여 공유 가능한 비즈니스 대시보드를 빠르게 생성할 수 있습니다. 이 접근법은 다음과 같은 여러 가지 이점이 있습니다.

  • 드래그 앤 드롭 기능을 통해 데이터에 대한 액세스 권한을 제공합니다.
  • 협업을 촉진하여 의미 있는 대시보드를 생성합니다.
  • 이미 구축된 대시보드를 의사 결정권자와 공유하게 해줍니다.

아래의 예는 몇 가지 소스의 데이터를 보여줍니다.

  • 중간 행 좌측에서 Google 애널리틱스 360 보고서를 확인할 수 있고, 우측에서 Campaign Manager를 확인할 수 있습니다.
  • 상단 행의 중앙 열에 있는 파란색 점도표는 고객 참여와 LTV를 표시한 것입니다.

몇 가지 소스의 데이터 표시

활성화

원시 데이터가 코드와 대시보드 둘 다를 통해 액세스할 수 있는 공통 위치에 존재하고 데이터를 조작할 수 있는 플랫폼에 존재하면 다음과 같은 다양한 마케팅 의사 결정이 가능해집니다.

  • 빈도가 캠페인당 사용자별 전환에 어떤 영향을 미치는지에 관한 기술적 분석. 이 정보는 특정 사용자 목록에서 빈도를 조정하는 리마케팅 캠페인을 만들 때 도움이 됩니다. BigQuery가 원시 Campaign Manager 데이터에 액세스함으로써 이 정보를 얻는 것이 가능해집니다.

  • 캠페인 및 웹사이트 동작이 매출에 미치는 영향을 이해하는 진단적 분석. 이 분석을 활성화하기 위해 SQL 문을 사용하여 빅 데이터의 여러 ID의 조인을 생성할 수 있습니다.

  • 특정 사용자의 LTV에 관한 예측적 분석. 특정 사용자 그룹의 값을 예측함으로써 매출을 증대시키는 마케팅 캠페인을 실행할 수 있습니다. 예를 들어 앞에서 본 다이어그램의 파란색 점도표에서 브랜드 참여율이 제한적인 사용자 그룹은 더 많이 참여한다면 구매 가능성이 높다는 것을 알 수 있을 것입니다. 데이터를 결합하고 머신러닝을 사용하여 고객 세그먼트를 구축하고 LTV 값을 예측함으로써 이러한 통찰을 얻게 됩니다.

  • 제품 감정에 관한 처방적 분석. 글로 표현된 의견과 등급의 변화를 분석하여 특정 사용자 그룹이 특정한 특성을 지닌 제품을 어떻게 받아들일지 예측함으로써 부정확한 타겟팅을 예방하는 데 도움이 될 수 있습니다. 예를 들어 감정 분석과 고객 세분화를 이용하여 이 작업을 수행할 수 있습니다.

다음 단계