Supermetrics API를 사용하여 Tableau Prep Builder에 데이터 연결[단계별 자습서]

게시 됨: 2022-01-11

Tableau에서 실행 가능하고 통찰력 있는 보고서를 작성하려면 잘 준비되고 깨끗한 데이터가 있어야 합니다.

그러나 기업은 다양한 장소와 형식의 데이터를 가지고 있기 때문에 분석을 위해 데이터를 정리하는 작업은 무거운 프로세스가 될 수 있습니다.

이는 Tableau가 심층 분석 기술이 없는 분석가와 마케팅 담당자를 포함하여 데이터 사용자가 데이터를 변환할 수 있도록 지원하기 위해 Tableau Prep Builder를 도입할 때까지입니다.

이 문서에서는 Supermetrics API를 사용하여 데이터를 Tableau Prep Builder에 연결하고 데이터를 활용할 수 있는 몇 가지 방법을 공유합니다.

수행할 단계는 다음과 같습니다.

  1. Tableau Prep Builder 설치
  2. TabPy 설치 및 설정
  3. Supermetrics API 호출을 포함할 작은 Python 스크립트 만들기
  4. Tableau Prep Builder에서 흐름을 생성하면 Tableau 추출 파일이 생성됩니다.
Supermetrics API를 Tableau Prep Builder 흐름에 연결하는 방법

작업이 완료되면 Union을 통해 Supermetrics API 쿼리의 출력을 다른 데이터 원본과 결합하고 API의 데이터로 Tableau 추출의 증분 새로 고침을 예약할 수 있습니다.

좋은 소리? 시작하자!

별

작동 중인 Supermetrics API 보기

마케팅 데이터를 Tableau 또는 JSON 또는 CSV 입력을 지원하는 기타 BI 도구, 데이터베이스 또는 데이터 웨어하우스에 공급하는 가장 쉬운 방법을 알아보십시오.

무료 평가판 시작

1단계: Tableau Prep Builder 설치

Tableau Prep Builder는 사용자가 분석을 위해 데이터를 정리하고 준비할 수 있도록 Tableau가 2018년에 출시한 데이터 변환 도구입니다.

Tableau Prep Builder의 가장 좋은 점은 모든 데이터 변환 작업을 시각화할 수 있다는 것입니다. 그렇게 하면 데이터에 무슨 일이 일어나고 있는지 추적하고 오류를 빠르게 식별할 수 있습니다. 결과는 Tableau에서 보고서 작성에 최적화된 Tableau Hyper Extract의 데이터 세트 출력입니다.

Tableau Prep Builder는 Tableau 제품군에서 사용할 수 있으므로 이미 액세스 권한이 있을 수 있습니다.

설정하는 것도 상당히 쉽습니다. Tableau 웹 사이트에서 다운로드하여 컴퓨터에 설치하고 마지막으로 라이선스 키를 입력하거나 무료 평가판을 시작하기만 하면 됩니다.

2단계: TabPy 설치

TabPy는 이 솔루션에 필요한 두 번째 구성 요소입니다.

TabPy는 Tableau용 Python 확장 프로그램입니다. 이를 통해 Tableau 대시보드 내에서 바로 Python 스크립트를 실행할 수 있습니다. 이 경우 가장 중요하게는 Tableau Prep Builder 내에서 실행할 수 있습니다.

패키지의 Github에서 설치 지침을 찾을 수 있습니다. 물론 작동하려면 최신 버전의 Python이 필요합니다. 설치가 완료되면 터미널 창에서 백그라운드 프로세스를 실행하여 TabPy를 사용할 수 있습니다. 포트 9004에서 Tableau가 실행 중이고 들어오는 요청을 수신 대기 중임을 알려줍니다.

TabPy에 대한 마지막 준비 작업은 Tableau Prep Builder에서 연결을 구성하는 것입니다.

Tableau Prep의 '도움말' 메뉴에서 '도움말' > '설정 및 성능' > '분석 확장 프로그램 연결 관리'에서 필요한 옵션을 찾을 수 있습니다.

이 가이드에서는 로컬 컴퓨터에서 설정한다고 가정하므로 TabPy가 여전히 실행 중이고 창에 표시되는 포트가 TabPy가 수신 대기 중인 포트와 일치하는지 확인하기만 하면 됩니다.

Tableau Prep Supermetrics API, 분석 확장 연결

'로그인' 버튼을 클릭하면 완료됩니다!

3단계: Python 스크립트 설정

이제 Python 스크립트를 설정할 시간입니다.

그 단계가 걱정된다면 걱정하지 마십시오. 아주 간단합니다. 필요한 스크립트에는 몇 줄의 코드만 있으면 되고 대부분은 Supermetrics의 API 링크입니다.

이것을 복사하여 텍스트 파일에 붙여넣고 '[PLACEHOLDER FOR YOUR API LINK]' 를 자신의 링크로 바꿀 수도 있습니다.

 import requests import pandas as pd def get_data_to_flow(input): response = requests.get("[PLACEHOLDER FOR YOUR API LINK]") results = response.json() return pd.DataFrame(results['data'][1:], columns=results['data'][0])

이것을 쉽게 다시 찾을 수 있는 곳에 .py 확장자를 가진 파일로 저장하십시오. 다음 단계에서 이것을 사용할 것입니다.

다음으로 Supermetrics Query Manager에서 API 링크를 생성하고 거기에 있는 동안 CSV 형식의 데이터 샘플도 다운로드하겠습니다.

이렇게 하려면 팀 사이트에 로그인합니다.

유효한 Supermetrics API 라이선스가 있으면 Supermetrics Query Manager에 액세스할 수 있습니다. 아직 라이선스가 없다면 14일 무료 평가판 을 시작하십시오 .

그런 다음 '통합' > '쿼리 관리자'를 선택합니다. 화면 왼쪽에 사이드바가 표시됩니다. 거기에서 쿼리 작성을 시작하십시오. 이 예에서는 Google Ads를 데이터 소스로 사용하겠습니다. 다음 필드를 작성하여 쿼리 작성을 계속하십시오.

  • 날짜 선택
  • 측정항목 선택
  • 차원으로 분할
  • 필터 및 옵션

완료되면 '실행'을 클릭합니다. 데이터는 미리보기 테이블과 원시 JSON 형식으로 표시됩니다.

Tableau Prep Supermetrics API, 쿼리 관리자

다음은 Supermetrics API를 시작하는 방법에 대한 자습서입니다.

Tableau Prep은 API 응답에 포함될 데이터 구조를 이해하기 위해 이 샘플이 필요합니다.

JSON 형식의 응답과 함께 작동하도록 작성된 Python 스크립트가 해당 API 호출을 처리하도록 하므로 형식 선택이 'Tableau'가 아닌 'JSON'으로 설정됩니다. 그런 다음 결과를 CSV 파일로 내보내고(1) API URL을 준비된 Python 스크립트 파일에 복사했습니다(2).

Supermetrics API 링크를 붙여넣은 후 스크립트 파일을 저장하는 것을 잊지 마십시오!

4단계: Tableau Prep Builder에서 모두 통합

거의 다 왔어!

Supermetrics API에서 Tableau Prep 흐름으로 데이터가 흐르도록 하려면 이제 이전 단계에서 다운로드한 CSV 파일을 연결해야 합니다.

Tableau Prep Builder는 데이터 유형에 대해 매우 까다롭기 때문에 이 단계가 없으면 Python 스크립트의 출력을 허용하지 않습니다. CSV 파일은 Supermetrics API의 데이터와 구조가 동일하여 Tableau Prep Builder에 이를 해석하는 방법을 알려줍니다.

Tableau Prep Supermetrics API, 연결, 텍스트 파일

파일을 선택하면 Tableau Prep Builder가 새 흐름을 시작하고 CSV의 콘텐츠를 읽습니다. 정보 상자에서 필드 유형을 각각 날짜, 문자열 및 숫자로 올바르게 구문 분석한 것을 볼 수 있습니다. 그리고 그것이 바로 우리가 원하는 것입니다.

Tableau Prep Supermetrics API, 연결

흐름의 다음 단계로 스크립트를 추가해야 합니다. CSV 파일을 나타내는 상자 옆에 있는 더하기 기호를 클릭하고 '스크립트'를 선택하면 됩니다.

Tableau Prep Supermetrics API, 연결 추가

여기에서 TabPy를 사용할 수 있습니다. 따라서 'Tableau Python(TabPy) Server' 라디오 버튼이 활성화되어 있고 TabPy가 컴퓨터에서 계속 실행 중인지 확인하십시오. 그런 다음 이전 단계에서 만든 스크립트 파일을 찾습니다.

또한 Tableau Prep Builder에 여기서 사용하려는 해당 파일의 기능을 알려야 합니다. 우리의 작은 스크립트에는 하나의 기능만 있으므로 이 가이드를 따라하는 경우 필드에 기능 이름 'get_data_to_flow'를 입력하십시오.

Tableau Prep Supermetrics API, 연결 스크립트

이러한 설정이 완료되면 Tableau Prep에서 즉시 Supermetrics API 쿼리 실행을 시작하고 데이터가 미리 보기 창에 나타납니다.

축하합니다! Supermetrics API에서 Tableau Prep 흐름으로 데이터를 성공적으로 로드했습니다.

Tableau Prep Builder에서 데이터 활용

API 링크를 편집하여 Supermetrics API를 통해 로드할 데이터를 쉽게 제어할 수 있습니다. 그렇지 않으면 Tableau 흐름에서 이 데이터 입력 요소를 원하는 대로 사용할 수 있습니다.

짧은 URL을 사용하는 경우 이 문서 문서에서 매개변수를 편집하는 방법을 찾을 수 있습니다.

열을 추가하거나 삭제하여 데이터의 모양을 변경하지 않는 한 결과를 가지고 놀 수 있습니다. 데이터의 모양을 변경해야 하는 경우 Tableau Prep에서 API 응답을 해석할 수 있도록 CSV 파일을 적절하게 변경해야 합니다.

이제 분석을 위해 데이터를 활용하는 데 사용할 수 있는 Tableau Prep Builder의 몇 가지 기능을 살펴보겠습니다.

Supermetrics의 데이터를 CSV 데이터 세트에 추가(UNION)

가장 먼저 할 수 있는 일은 UNION 연산을 수행하는 것입니다. 이를 위해 Tableau Prep Builder가 API 출력을 해석하도록 샘플 CSV 파일을 제공하는 대신 정적 데이터를 가져오는 수단으로도 사용할 것입니다.

더 이상 변경되지 않는 일련의 기록 데이터가 있다고 상상해 보십시오. 일반적인 사용 사례는 Tableau 보고서에서 사용하려는 메트릭에 대한 작년 데이터를 내보내고 매일 업데이트되는 데이터 세트를 추가하여 최신 상태로 유지하는 것입니다.

예를 들어 2020년 Google Ads 데이터를 가져오도록 쿼리 관리자에서 쿼리를 구성하고 결과를 CSV로 다운로드했습니다.

Tableau Prep Supermetrics API, json 쿼리

그런 다음 날짜 선택기를 '작년'에서 '연간 누계'로 변경하고 이 쿼리에 대한 API 링크를 Python 스크립트 파일에 복사했습니다. 다음은 스크립트 파일의 모양입니다. 내 고유 API 키가 수정되었습니다.

Tableau Prep Supermetrics API, json 쿼리 미리보기
Tableau Prep Supermetrics API, get_api_data.py

이제 우리는 이전과 동일한 단계를 거칩니다. 흐름에 UNION 작업과 '출력'을 추가해야 합니다.

  1. 먼저 CSV 파일에 연결하여 Tableau Prep에서 새 흐름을 시작합니다.
  2. API 호출 기능을 제공하는 TabPy를 사용하여 CSV 뒤에 '스크립트' 단계를 추가합니다.
  3. 스크립트 뒤에 'Union' 단계를 추가한 다음 CSV 단계를 클릭하고 끌어다 놓아 삼각형을 만듭니다.
  4. UNION 다음에 '출력' 단계를 추가합니다.
Tableau Prep Supermetrics API, 출력 함수

지금 흐름을 실행하면 Tableau 프로젝트의 데이터 원본으로 사용할 수 있는 하이퍼 추출이 제공됩니다. API 호출에는 상대적 날짜 범위(연간 누계)가 있으므로 흐름을 계속 다시 실행하여 추출을 업데이트하면 됩니다!

또한 출력 파일을 로컬 하드 드라이브에 저장하거나 Tableau Server 또는 Tableau Online에 직접 게시하여 조직의 다른 Tableau 사용자와 공유하도록 선택할 수도 있습니다.

Supermetrics의 데이터로 증분 추출 새로 고침

위에서 설명한 방법은 중소 규모의 데이터에 적합합니다. 그러나 API에 대한 쿼리가 런타임 리소스 측면에서 더 크고 더 까다로워지면 각 흐름 실행에서 전체 시간 범위를 요청하고 이전 추출을 덮어쓰는 대신 데이터 세트의 증분 새로 고침을 수행하는 것이 좋습니다. .

다행히 Tableau Prep에는 기존 추출 파일의 증분 업데이트를 위한 기본 제공 옵션이 있습니다. 새로 고침에서 오는 데이터의 새 행을 결정하는 데 사용할 데이터 테이블의 열을 지정하기만 하면 됩니다. 그러면 흐름이 나머지를 처리합니다.

그러나 Tableau Prep Builder는 스크립트 실행을 통한 데이터에 대해 이를 지원하지 않습니다.

다음은 제한 사항을 해결하고 증분 데이터 새로 고침을 위한 작동 솔루션을 만드는 방법입니다.

프로세스를 두 부분으로 나눕니다.

먼저 업데이트를 포함할 Tableau Hyper Extract를 만듭니다. 그런 다음 두 번째 단계에서 실제 데이터 소스에 적용합니다. 이것은 다른 추출 파일이 새로 고침 데이터의 소스인 경우 추출 증분 업데이트가 실제로 지원되기 때문에 중요합니다.

Tableau Prep, 중간 추출의 전체 새로 고침 및 최종 추출 흐름의 증분 새로 고침

거기에 도달하기 위해 스크립트를 포함하는 흐름을 다시 만듭니다. 우리는 우리가 요청하는 데이터의 양을 가볍게 유지하기 위해 API 호출에서 상대적인 시간 범위를 사용합니다. 이 예에서는 '지난 10일'을 사용합니다.

Tableau Prep Supermetrics API, 쿼리 관리자 보기

'새로 고침'이 될 추출 파일을 만들려면 지금까지 Tableau Prep Builder의 스크립트에 대해 배운 내용을 사용해야 합니다.

여기에서는 스크립트 단계 전에 기존 추출 파일을 입력으로 사용하여 이 파일도 작동하고 우리가 사용한 초기 CSV 파일이 스크립트를 실행하는 데 필요한 단계일 뿐임을 보여주었습니다.

UNION 작업이 없으면 이 흐름의 출력은 단순히 스크립트 단계가 Supermetrics API를 통해 가져오는 것과 같습니다.

Tableau Prep Supermetrics API, 출력 함수

이 출력 파일을 내 드라이브에 'increment.hyper'로 저장했으므로 이제 여러 보고서에 사용되는 게시된 추출을 업데이트하는 최종 흐름을 설정할 수 있습니다.

Tableau Prep Supermetrics API, 추출 기능

이것은 직관에 어긋나는 것처럼 보일 수 있습니다. 그것은 저를 위한 것이었습니다.

Tableau Prep Builder에서 증분 파일에 연결하고 있으며 이미 있고 업데이트하려는 파일을 가리키는 '출력'을 추가하기만 하면 됩니다.

여기 두 가지를 분리하는 흐름에 선택적 청소 단계가 있습니다. 여기서 중요한 것은 'increment.hyper' 파일인 'Input'에서 증분 새로 고침을 활성화하는 것입니다. 흐름에 들어오는 새 행을 감지하는 데 사용할 필드를 설정해야 합니다. 우리의 경우 '날짜'입니다.

그런 다음 업데이트하려는 대상을 가리키는 '출력'을 선택하고 '입력'의 '날짜' 필드를 '출력'의 해당 '날짜' 필드와 일치시킵니다.

이 설정은 흐름을 증분 새로 고침으로 실행하는 새로운 옵션을 제공합니다. 엄청난!

Tableau Prep Supermetrics API, 출력 함수, 증분 새로 고침 — 테이블 선택에 추가

이 방법은 출력 파일에 이미 있는 모든 데이터를 보존합니다. 수백만 개의 행이 있는 거대한 추출이 될 수 있습니다. 이 절차에서는 새 행을 추가할 뿐입니다. 이러한 흐름을 만든 후에는 흐름을 실행하고 데이터를 업데이트하는 데 몇 초밖에 걸리지 않습니다. 결국, 우리는 이제 10일 분량의 데이터에 대해서만 Supermetrics API를 쿼리하고 있습니다.

그게 다야!

Tableau Prep Builder에서 Supermetrics API를 데이터 원본으로 사용하면 일반적으로 데이터 웨어하우스가 필요한 복잡한 데이터 모델링 작업을 수행하는 데 도움이 됩니다.

Tableau 보고서의 성능을 향상시키려면 영업 팀과 함께 데모를 예약하거나 Supermetrics API의 14일 무료 평가판을 시작하십시오.