Подключаем Google Analytics в QlikView

Norrsken

CEO & Partner at Consonance
Работаю с QlikView с 2009 года.
QlikView Luminary 2014.
Специализируюсь на архитектуре решений QlikView, Qlik Sense, Alteryx и др. систем.

В прошлый раз я уже рассказал, как можно подключиться к веб-источникам (на примере Яндекс Метрики). А сегодня продолжим эту тему, но уже в качестве источника возьмем Google Analytics.

В данном учебном обзоре мы кратко коснемся того, каким образом из Google Analytics получать данные в QlikView. Для получения данных из Google Analytics следует обзавестись соответствующими данными для авторизации в Google Analytics, иметь счетчик и прочие параметры для доступа по API в Google Analytics средствами QlikView. Сам процесс подключения к веб-источнику описан в «Подключаем Яндекс Метрику в QlikView».

Казалось бы, если все так похоже, зачем писать отдельный пост? В этот раз я затрону другой механизм получения данных, в частности, и работы QlikView в принципе.

Что потребуется для работы:

Как настроить аккаунт для Google Analytics, сгенерировать строку запроса GET, какие есть сущности и параметры запросов в Google Analytics – это довольно просто, поэтому сегодня на этом не останавливаюсь. Пишите в комментариях, если потребуется детальный обзор этой темы – напишу отдельный пост.

Execute = Google Analytics+QlikView

Сейчас же мы остановимся на примере связки Google Analytics и QlikView на интересной функции — Execute.

«Execute» — команда скрипта QlikView, которая позволяет при отработке скрипта QlikView обратиться к внешнему приложению, файлу, батнику, исполняемому файлу и т.д. из QlikView с инструкцией «Выполнить» этот файл.

Данный функционал очень полезен во многих случаях разработки тех или иных решений на платформе QlikView и иногда может сильно выручить. Например, бывает так, что писать макрос очень долго, либо есть уже существующее готовое решение, которое выполняет нужную нам функцию и нам прекрасно известно как оно работает. Зачем же, в таком случае, изобретать велосипед? Некоторые не согласятся с данной постановкой вопроса. Но суть есть в том, что все ситуации и задачи относительны, и где-то такой подход имеет смысл, где-то нет. Как говорится, все всегда зависит от задачи и бюджета : )

  1. Итак, будем считать, что Java-машина уже у Вас стоит.
  2. Ganalytics-example2.rar файл Вы скачали и распаковали: внутри будет Jar клиент для Google Analitics и QlikView файл, найденный когда-то в ветке обсуждения на Qlik Community.
  3. Открыв QlikView файл, в редакторе скрипта Вы увидите хорошие подсказки в виде комментариев, как произвести конфигурацию для того, чтобы получить данные из Google Analytics в QlikView. Я остановлюсь здесь только на некоторых из них.
  4. Рекомендую Вам создать отдельный файл и сделать все с нуля. Итак, для нас важны в первую очередь параметры авторизации:

SET gUserName=’agent.smith@matrix.net’;
SET gPassword=’VeryCTPOHgP@S$w0Pd21′;
SET gProfileId=’UA-744744-4′;

  • Первая строка (gUserName) — имя пользователя в Google, который имеет права доступа на чтение и запросы в Google Analytics.
  • Далее идет пароль аккаунта (gPassword). Как я писал выше, моя цель сегодня – показать, как QlikView умеет передавать параметры и исполнять внешние файлы, кому-то это будет очень полезно.
  • Третья строка – идентификатор Google Analytics (gProfileId).

Для каждой переменной вводим свои значения.

  1. Теперь нам следует решить, что же мы будем забирать из Google Analytics в QlikView и с какими параметрами. Аналогично посту по Яндекс Метрике, я остановлюсь на «дате С» и «дате ПО», а также наборе измерений и метрик, которые могут интересовать большинство читателей.
  2. Вводим диапазон дат:

SET gDateStart=’2013-01-01′;
SET gDateEnd=’2014-02-04′;

  1. Задаем измерения и метрики. Откуда их можно взять? Самый быстрый способ – найти соответствующие атрибуты и параметры запроса в Google Analytics Query Explorer или здесь.
  • Сделаем запрос на измерения: Дата, Страна, Город, Вид браузера, Высота, Долгота (для рисования карты):

SET gDimensions=’ga:date,ga:country,ga:city,ga:browser,ga:latitude,ga:longitude’;

  • Сделаем запрос на метрики: Визиты, Просмотры станиц, Новые Визиты, Время на станице, Время на сайте, Визиты из Поиска:

SET gMetrics=’ga:visits,ga:pageviews,ga:newVisits,ga:timeOnPage,ga:timeOnSite,ga:searchVisits’;

  1. С набором данных из Google Analytics мы определили, осталось теперь запустить процесс загрузки данных в QlikView. Здесь нам и приходит на помощь Execute:

EXECUTE java -jar GoogleAnalyticsClient.jar -u $(gUserName) -p $(gPassword) -f $(gProfileId) -d $(gDimensions) -m $(gMetrics) -s $(gDateStart) -e $(gDateEnd) —max-results=5000 -o visits.csv

При отработке скрипта, QlikView запустит Jar-файл, передаст ему соответствующие параметры. Jar-файл обратится в Google Analytics, пройдет авторизацию, получит ответ согласно запрошенным данным и сохранит их в visits.csv. Другими словами, данную реализацию, доработав, можно поставить на задачу в QlikView Server для генерирования данных из Google Analytics.

НА ЗАМЕТКУ! Если не запускается Jar-файл, проверьте все ли ок у Вас с Java-машиной и путями к ней. Кроме того, если QlikView выдает ошибку, установите ErrorMode=0:

Set ErrorMode=0; в скрипте.

Также не забывайте, что для Google Analytics существуют специальные удобные коннекторы, с которыми интеграция идет гораздо проще и стабильнее, несмотря ни на какие изменения в API Google (например, QVSource Google Analytics Коннектор).

На этом все. Делитесь своими соображениями по работе с аналитикой Гугл в комментариях.

Norrsken

Работаю с QlikView с 2009 года. QlikView Luminary 2014. Специализируюсь на архитектуре решений QlikView, Qlik Sense, Alteryx и др. систем.

Комментарии

  • Август 10, 2015 at 18:27
    Permalink

    Я бы добавил, что Google API выдает максимум (max-results) 10000 строк.
    Если у вас больше строк, используйте в Qlik цикл с параметром start-index.

    Ответить

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Подпишись на Data-Daily!

Введите email и будьте в курсе!

Подпишись!