В прошлый раз я уже рассказал, как можно подключиться к веб-источникам (на примере Яндекс Метрики). А сегодня продолжим эту тему, но уже в качестве источника возьмем 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 и иногда может сильно выручить. Например, бывает так, что писать макрос очень долго, либо есть уже существующее готовое решение, которое выполняет нужную нам функцию и нам прекрасно известно как оно работает. Зачем же, в таком случае, изобретать велосипед? Некоторые не согласятся с данной постановкой вопроса. Но суть есть в том, что все ситуации и задачи относительны, и где-то такой подход имеет смысл, где-то нет. Как говорится, все всегда зависит от задачи и бюджета : )
- Итак, будем считать, что Java-машина уже у Вас стоит.
- Ganalytics-example2.rar файл Вы скачали и распаковали: внутри будет Jar клиент для Google Analitics и QlikView файл, найденный когда-то в ветке обсуждения на Qlik Community.
- Открыв QlikView файл, в редакторе скрипта Вы увидите хорошие подсказки в виде комментариев, как произвести конфигурацию для того, чтобы получить данные из Google Analytics в QlikView. Я остановлюсь здесь только на некоторых из них.
- Рекомендую Вам создать отдельный файл и сделать все с нуля. Итак, для нас важны в первую очередь параметры авторизации:
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).
Для каждой переменной вводим свои значения.
- Теперь нам следует решить, что же мы будем забирать из Google Analytics в QlikView и с какими параметрами. Аналогично посту по Яндекс Метрике, я остановлюсь на «дате С» и «дате ПО», а также наборе измерений и метрик, которые могут интересовать большинство читателей.
- Вводим диапазон дат:
SET gDateStart=’2013-01-01′;
SET gDateEnd=’2014-02-04′;
- Задаем измерения и метрики. Откуда их можно взять? Самый быстрый способ – найти соответствующие атрибуты и параметры запроса в 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’;
- С набором данных из 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 Коннектор).
На этом все. Делитесь своими соображениями по работе с аналитикой Гугл в комментариях.
Я бы добавил, что Google API выдает максимум (max-results) 10000 строк.
Если у вас больше строк, используйте в Qlik цикл с параметром start-index.