Подключение ваших данных к Tableau Prep Builder с помощью Supermetrics API [пошаговое руководство]

Опубликовано: 2022-01-11

Чтобы создать действенный и информативный отчет в Tableau, вам нужны хорошо подготовленные и чистые данные.

Однако, поскольку у компаний есть данные в разных местах и ​​в разных форматах, очистка данных для анализа может стать трудоемким процессом.

Так было до тех пор, пока Tableau не представила Tableau Prep Builder, чтобы пользователи данных, включая аналитиков и маркетологов, которые могут не иметь глубоких аналитических навыков, могли преобразовывать свои данные.

В этой статье я покажу вам, как подключить ваши данные к Tableau Prep Builder с помощью Supermetrics API, и поделюсь некоторыми способами, которыми вы можете использовать свои данные там.

Вот шаги, которые мы пройдем:

  1. Установите Tableau Prep Builder
  2. Установите и настройте TabPy
  3. Создайте небольшой скрипт Python, который будет содержать вызов API Supermetrics.
  4. Создайте потоки в Tableau Prep Builder, который создаст для нас файлы извлечения Tableau.
Как подключить Supermetrics API к Tableau Prep Builder Flow

Когда мы закончим, вы сможете объединить выходные данные запросов Supermetrics API с другими источниками данных через Union и запланировать добавочное обновление извлечения Tableau с данными из нашего API.

Звучит неплохо? Давайте начнем!

звезда

Посмотрите Supermetrics API в действии

Откройте для себя самый простой способ передать свои маркетинговые данные в Tableau или любой другой инструмент бизнес-аналитики, базу данных или хранилище данных, которые поддерживают входные данные JSON или CSV.

Начать бесплатную пробную версию

Шаг 1: Установите Tableau Prep Builder

Tableau Prep Builder — это инструмент преобразования данных, выпущенный Tableau в 2018 году, чтобы помочь пользователям очистить и подготовить данные для анализа.

Самое лучшее в Tableau Prep Builder — это то, что он позволяет вам визуализировать все ваши операции преобразования данных. Таким образом, вы сможете следить за тем, что происходит с вашими данными, и быстро выявлять ошибки. Результатом является вывод вашего набора данных в Tableau Hyper Extract, который оптимизирован для создания отчетов в Tableau.

Поскольку Tableau Prep Builder доступен в пакете Tableau, возможно, у вас уже есть к нему доступ.

Настроить его тоже довольно просто. Все, что вам нужно сделать, это загрузить его с веб-сайта Tableau, установить на свой компьютер и, наконец, ввести лицензионный ключ или начать бесплатную пробную версию.

Шаг 2: Установите TabPy

TabPy — второй компонент, который нам нужен для этого решения.

TabPy — это расширение Python для Tableau. Он позволяет запускать скрипты Python прямо внутри панелей инструментов Tableau или, что наиболее важно для нашего случая, внутри Tableau Prep Builder.

Вы можете найти инструкции по установке на Github пакета. Конечно, для работы вам понадобится последняя версия Python. После завершения установки вы можете начать использовать TabPy, запустив фоновый процесс в окне терминала. Он сообщит вам, что он работает и прослушивает входящие запросы от Tableau через порт 9004.

Последней частью подготовки к TabPy является настройка подключения к нему в Tableau Prep Builder.

Вы можете найти нужный параметр в меню «Справка» Tableau Prep в разделе «Справка» > «Настройки и производительность» > «Управление подключением расширения Analytics».

В этом руководстве мы предполагаем, что вы настраиваете это на своем локальном компьютере, поэтому все, что вам нужно сделать, это убедиться, что TabPy все еще работает и что порт, который вы видите в окне, соответствует порту, который TabPy прослушивает.

Tableau Prep Supermetrics API, подключение расширения аналитики

Нажмите кнопку «Войти», и все готово!

Шаг 3: Настройте скрипт Python

Пришло время настроить скрипт Python.

Если вы беспокоитесь об этом шаге, не беспокойтесь. Это довольно просто. Скрипт, который нам нужен, будет состоять всего из нескольких строк кода, большая часть которых — ссылка на API от Supermetrics.

Вы даже можете просто скопировать и вставить это в текстовый файл и заменить «[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 где-нибудь, где вы легко найдете его снова. Мы будем использовать это в следующих шагах.

Далее давайте создадим ссылку API в диспетчере запросов Supermetrics, и пока мы там, мы также загрузим образец наших данных в формате CSV.

Для этого войдите на сайт группы.

Обратите внимание, что вы можете получить доступ к диспетчеру запросов Supermetrics с действующей лицензией Supermetrics API. Если у вас еще нет лицензии, начните 14-дневную бесплатную пробную версию .

Затем выберите «Интеграции» > «Диспетчер запросов». Вы увидите боковую панель в левой части экрана. Начните строить свой запрос там. В этом примере я буду использовать Google Ads в качестве источника данных. Продолжайте строить запрос, заполнив следующие поля:

  • Выберите даты
  • Выберите показатели
  • Разделить по размерам
  • Фильтр и параметры

Когда вы закончите, нажмите «Выполнить». Вы увидите свои данные в таблице предварительного просмотра и в необработанном формате JSON.

Tableau Prep Supermetrics API, диспетчер запросов

Вот руководство о том, как начать работу с Supermetrics API.

Этот пример понадобится Tableau Prep, чтобы понять структуру данных, которая придет в ответе API.

Обратите внимание, что выбор формата установлен на «JSON», а не на «Tableau», потому что мы позволим скрипту Python, написанному для работы с ответом в формате JSON, обрабатывать этот вызов API. Затем я экспортировал результаты в виде файла CSV (1) и скопировал URL-адрес API в подготовленный файл сценария Python (2).

Не забудьте сохранить файл скрипта после вставки ссылки Supermetrics API!

Шаг 4: Объедините все это в Tableau Prep Builder

Мы почти там!

Чтобы данные из Supermetrics API поступали в ваш поток Tableau Prep, теперь нам нужно подключить CSV-файл, который мы скачали на предыдущем шаге.

Поскольку Tableau Prep Builder довольно требователен к типам данных, он не примет вывод нашего скрипта Python без этого шага. Файл CSV имеет ту же структуру, что и данные из API Supermetrics, что информирует 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, и данные появятся в окне предварительного просмотра.

Поздравляем! Вы только что успешно загрузили данные из API Supermetrics в поток подготовки таблиц.

Используйте свои данные в Tableau Prep Builder

Вы можете легко контролировать, какие данные загружать через API Supermetrics, редактируя ссылку API. В противном случае вы можете использовать этот элемент ввода данных в потоке Tableau по своему усмотрению.

Если вы используете наши короткие URL-адреса, вы можете узнать, как редактировать параметры, в этой статье документации.

Пока вы не изменяете форму данных, добавляя или удаляя столбцы, вы можете экспериментировать с результатами. Если вам нужно изменить форму данных, не забудьте соответствующим образом изменить файл CSV, чтобы Tableau Prep мог интерпретировать ответ API.

Теперь давайте рассмотрим некоторые функции Tableau Prep Builder, которые вы можете использовать для анализа ваших данных.

Добавление данных из Supermetrics в набор данных CSV (UNION)

Первое, что мы можем сделать, это выполнить операцию UNION. Для этого вместо того, чтобы просто предоставить образец CSV-файла для Tableau Prep Builder для интерпретации выходных данных API, мы также будем использовать его как средство для импорта статических данных.

Представьте, что у вас есть набор исторических данных, который больше не изменится. Распространенным вариантом использования будет экспорт прошлогодних данных для показателя, который вы хотели бы использовать в отчете Tableau, а также добавление к нему ежедневно обновляемого набора данных, чтобы поддерживать его в актуальном состоянии.

Например, я настроил запрос в Query Manager, чтобы получить данные Google Ads за 2020 год, и загрузил результаты в формате CSV.

Tableau Prep Supermetrics API, запрос json

Затем я изменил селектор даты с «Прошлый год» на «С начала года» и скопировал ссылку API для этого запроса в файл сценария Python. Вот как выглядит файл сценария. Обратите внимание, что мой уникальный ключ API был отредактирован.

Tableau Prep Supermetrics API, предварительный просмотр запроса json
API суперметрик Tableau Prep, get_api_data.py

Теперь проходим те же шаги, что и раньше. Нам нужно добавить операцию UNION и «Вывод» в потоке:

  1. Запустите новый поток в Tableau Prep, сначала подключившись к CSV-файлу.
  2. Добавьте шаг «Сценарий» после файла CSV с TabPy, обслуживающим функцию вызова API.
  3. Добавьте шаг «Объединение» после сценария, затем щелкните и перетащите на него шаг CSV, сформировав треугольник.
  4. Добавьте шаг «Вывод» после UNION.
Tableau Prep Supermetrics API, функция вывода

Запуск потока сейчас даст нам гиперэкстракт, который можно использовать в качестве источника данных для вашего проекта Tableau. А поскольку вызов API имеет относительный диапазон дат (с начала года), вы можете просто повторно запускать поток для обновления извлечения!

Вы также можете сохранить выходной файл на локальный жесткий диск или напрямую опубликовать его на сервере Tableau или 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 вывод этого потока будет просто тем, что наш шаг сценария извлекает через API Supermetrics.

Tableau Prep Supermetrics API, функция вывода

Сохранив этот выходной файл на моем диске как «increment.hyper», я теперь могу настроить окончательный поток, который будет обновлять опубликованную выдержку, используемую для нескольких отчетов.

Tableau Prep Supermetrics API, функция извлечения

Это может показаться нелогичным — для меня это точно было так.

Мы подключаемся к файлу приращения в Tableau Prep Builder, и все, что мы делаем, это добавляем «выход», который указывает на файл, который у нас уже есть и который мы хотим обновить.

Здесь у меня есть необязательный шаг очистки в потоке, который разделяет их. Здесь важно включить добавочное обновление для «Ввода», нашего файла «increment.hyper». Нам нужно установить поле, которое будет использоваться для обнаружения новых строк, поступающих в поток. В нашем случае это «Дата».

Затем мы выберем «Вывод», который указывает на место назначения, которое мы хотим обновить, и сопоставим поле «Дата» из «Входа» с соответствующим полем «Дата» в «Выводе».

Эта настройка дает нам новую возможность запуска потока как добавочного обновления. Большой!

Tableau Prep Supermetrics API, функция вывода, добавочное обновление — добавление к выбору таблицы

Этот метод сохраняет любые данные, которые у нас уже есть в выходном файле. Это может быть огромный отрывок с миллионами строк — в этой процедуре мы просто добавляем к нему новые строки. После того, как вы создали эти потоки, их запуск и обновление данных занимает всего несколько секунд. В конце концов, теперь мы запрашиваем у Supermetrics API только данные за 10 дней.

Вот и все!

Использование Supermetrics API в качестве источника данных в Tableau Prep Builder помогает выполнять сложные задачи моделирования данных, для которых обычно требуется хранилище данных.

Если вы хотите улучшить свои отчеты Tableau, закажите демонстрацию в нашем отделе продаж или начните 14-дневную бесплатную пробную версию Supermetrics API.