OSBI.FR - Open Source Business Intelligence

Analysez vos statistiques web avec Google Analytics et Pentaho

Introduction

Mesurer les statistiques de connexion d’un site web est désormais devenu incontournable dans de nombreux domaines d’activités.

Comprendre les comportements, les profils et les caractéristiques des internautes sont des facteurs déterminants pour la visibilité, le succès et donc la longévité de nombreux sites.

Ceci est tout particulièrement vrai pour les sociétés dont le business model repose exclusivement sur une présence sur la toile :  e-commerce, services en ligne…

Habituellement, pour récupérer les statistiques de connexion d’un serveur web, on utilise des outils spécifiques de mesure d’audience : Xiti, Piwik, Mint, Google Analytics

Lorsque ce dernier est utilisé conjointement avec Google AdWords, il devient même possible de calculer le retour sur investissement (ROI) d’achats de mots clés par rapport au trafic généré.

Cet article vous propose de découvrir :

  • Comment récupérer simplement des statistiques de connexion Google Analytics avec l’ETL open source Pentaho Data Integration (PDI)
  • Comment analyser rapidement les données récupérées avec l’outil de modélisation intégré dans PDI
  • Comment publier efficacement les analyses sur un serveur décisionnel Pentaho

L’étape « Extraction depuis Google analytics »

A l’origine, cette étape a été développée sous forme de plugin par un membre de la communauté Pentaho (Slawomir Chodnicki). Désormais cette fonctionnalité fait partie intégrante du client de développement graphique Spoon.

On trouve ainsi l’étape « Extraction depuis Google Analytics » dans la catégorie « Extraction » des transformations :



La zone « Paramètres » permet de renseigner les modalités de connexion au compte Google Analytics, notamment :

  • l’adresse mail et le mot de passe du compte GMail associé
  • Le nom d’application au format [id-company]-[nom-app]-[version-app].  Il s’agit d’un code au format UA-1234567-1 présent dans le code javascript inséré dans les pages web à monitorer (cf ligne 3 du script ci-dessous).
<script type="text/javascript">// <![CDATA[ var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-1234567-1']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); // ]]></script>

La zone « Définition requête » permet de récupérer les 2 types d’objets présents et requêtables dans Google Analytics :

  • les dimensions d’analyse
  • les mesures (metrics)

La référence complète est disponible à cette adresse :

http://code.google.com/intl/fr/apis/analytics/docs/gdata/dimsmets/dimsmets.html

 

Par exemple, pour la thématique « Visite », on trouve plusieurs mesures :

  • ga:visits pour le nombre de visites (sur une période temporelle donnée)
  • ga:timeOnSite pour la durée totale passée sur le site
  • ga:visitors pour le nombre de visiteurs uniques
  • ga:newVisits pour le nombre de nouvelles visites (nouveaux visiteurs)
  • ga:percentNewVisits pour le pourcentage de nouvelles visites par rapport au nombre de visites totales (=ga:newVisits/ga:visits*100)

Dans les dimensions, ga:visitorType permet par exemple de catégoriser les données analysées par type de visiteur (New Visitor, Returning Visitor)

Plus généralement, les dimensions servent à segmenter les données selon différents axes d’analyses, par exemple :

  • Axe temporel :  ga:year, ga:month, ga:day …
  • Axe géographique :  ga:country, ga:region, ga:city …
  • Axe internaute :  ga:browser, ga:operatingSystem, ga:screenResolution…
  • Axe visite :  ga:source, ga:keyword, ga:referralPath…

L’outil de modélisation et de visualisation intégré à PDI

Depuis la version 4, PDI offre plusieurs « perspectives »

Celles-ci sont accessibles en haut à droite dans l’interface de Spoon. (cliquer pour agrandir les copies d’écran)

  • La perspective « Intégration de données » est la fenêtre standard pour le traitement des données dans Kettle :  Extraction, Transformation, Loading (Chargement) :

  • La perspective « Model » permet de définir les diverses dimensions et mesures du domaine analysé (Note: les données doivent être chargées préalablement dans une table de travail) :

  • La perspective « Visualize » permet de construire des états variés à partir du modèle, intuitivement et par drag & drop: tableaux simples, tableaux croisés, graphiques… :

La vidéo ci-dessous illustre :

  • le processus de récupération des données depuis un compte Google Analytics (transfo Kettle),
  • la modélisation des dimensions et mesures,
  • la mise en œuvre d’un rapport avec la perspective « Visualize »

Publication sur le serveur Pentaho

A tout instant, la publication du modèle et du rapport créé est possible sur un serveur Pentaho.

Le but est tout simplement de permettre l’accès à des utilisateurs métiers !

Rappelons en effet qu’un ETL tel que PDI n’a pas vocation à être manipulé par des utilisateurs finaux : il s’agit d’un outil technique s’adressant à des informaticiens !

La vidéo ci-dessous illustre le mécanisme de publication d’un rapport conçu depuis PDI vers un serveur Pentaho, puis la création d’un tableau de bord via le module de dashboarding (Pentaho Enterprise Edition) :

 

Note: La publication fonctionne également sur un serveur Pentaho « Community Edition ».

Dans ce cas les données peuvent être analysées avec le requêteur web olap JPivot, le Web Ad Hoc Query Reporter ou encore Saiku

Conclusion

Grâce à ses capacités de modélisation et d’analyse dimensionnelle, Pentaho Data Integration est un outil idéal pour le prototypage d’un entrepôt de données dans un contexte de projet décisionnel.

Les perspectives « Model » et « Visualize » permettent en effet d’être la base d’échanges constructifs entre les utilisateurs métier et le service informatique pour la définition initiale du datawarehouse : spécification des dimensions, des niveaux hiérarchiques, des attributs et des indicateurs.

Tout cela avec une « agilité » hors du commun !

1 Comment

  1. Merci Sylvain pour cet article. Vraiment intéressant en effet cette utilisation.

    Jérôme

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.


*