Configuration de l’ingestion de données pour votre Snowflake Connector for Google Analytics Raw Data

Snowflake Connector for Google Analytics Raw Data est soumis aux Conditions de connecteur.

Ce chapitre explique comment accéder au Snowflake Connector for Google Analytics Raw Data dans votre compte Snowflake.

Note

Une seule propriété ne peut être ingérée qu’à partir d’un seul projet GCP à la fois. Le changement du projet pour une propriété précédemment configurée nécessite actuellement la réinstallation du connecteur. Cette limitation sera supprimée à l’avenir.

Si vous modifiez les paramètres d’exportation d’une propriété et que vous commencez à l’exporter dans un autre projet GCP, vous devez également déplacer manuellement les données de l’instance BigQuery précédente et les consolider dans l’instance que vous venez de configurer.

Configuration de l’ingestion de données à l’aide de Snowsight

Pour configurer l’ingestion de données via Snowsight, procédez comme suit :

  1. Connectez-vous à Snowsight en tant qu’utilisateur ayant le rôle ACCOUNTADMIN.

  2. Dans le menu de navigation, sélectionnez Data Products » Apps.

  3. Recherchez le Snowflake Connector for Google Analytics Raw Data, puis sélectionnez la vignette du connecteur.

  4. Sur la page du Snowflake Connector for Google Analytics Raw Data, accédez à la section Data Sync.

    Une liste de toutes les propriétés Google Analytics apparaît.

  5. Sélectionnez les propriétés à ingérer :

    1. Recherchez la propriété à ingérer.

    2. Cochez la case de la colonne Status à côté de la propriété à sélectionner.

    3. Répétez ces étapes pour chaque propriété à ingérer dans Snowflake.

  6. Sélectionnez l’en-tête de la colonne Status pour voir les propriétés actuellement sélectionnées.

  7. Sélectionnez Start sync pour commencer à ingérer des données dans votre compte Snowflake.

Les propriétés sélectionnées apparaissent dans la liste de propriétés.

Le statut Data Ingestion sera affiché dans le coin supérieur droit de la section Manage data synchronization.

La synchronisation des données pour chaque propriété commencera par un chargement initial, qui ingère toutes les données historiques d’une propriété et passe ensuite à la synchronisation actuelle. Si vous souhaitez synchroniser uniquement les données actuelles, vous pouvez le faire via une feuille de calcul.

Note

Une fois qu’une propriété avec un chargement initial est activée, le chargement initial peut être désactivé. En revanche, lorsqu’une propriété est activée sans chargement initial, le chargement initial ne peut pas être activé ultérieurement.

Modification de l’ingestion de données à l’aide de Snowsight

Pour modifier les tables Google Analytics à ingérer ou le calendrier de synchronisation des tables, procédez comme suit :

  1. Connectez-vous à Snowsight en tant qu’utilisateur ayant le rôle ACCOUNTADMIN.

  2. Dans le menu de navigation, sélectionnez Data Products » Apps.

  3. Recherchez le Snowflake Connector for Google Analytics Raw Data, puis sélectionnez la vignette du connecteur.

  4. Sur la page du Snowflake Connector for Google Analytics Raw Data, accédez à la section Data Sync.

  5. Sélectionnez Edit properties.

  6. Modifiez les tables que vous souhaitez ingérer :

    1. Recherchez la table que vous souhaitez ingérer.

    2. Cochez la case dans la colonne Status à côté de la table que vous souhaitez sélectionner ou désélectionner.

  7. Sélectionnez Update data sync.

Configuration de l’ingestion de données à l’aide d’instructions SQL

Pour configurer l’ingestion de données à l’aide d’instructions SQL, procédez comme suit :

Note

Pour configurer ces paramètres, utilisez des procédures stockées définies dans le schéma PUBLIC de la base de données qui sert d’instance de la base de données d’installation du connecteur.

Avant d’appeler ces procédures stockées, sélectionnez cette base de données comme base de données à utiliser pour la session.

Par exemple, si la base de données s’appelle snowflake_connector_for_google_analytics_raw_data, exécutez la commande suivante :

USE DATABASE snowflake_connector_for_google_analytics_raw_data;
Copy

Liste des propriétés disponibles pour l’ingestion

Pour dresser la liste de toutes les propriétés disponibles dans un projet GCP donné, appelez la procédure stockée suivante :

CALL LIST_GA_PROPERTIES();
Copy

Le résultat affiche l’ensemble des projets et propriétés disponibles à ingérer par un compte autorisé. Si aucun résultat n’est renvoyé, vérifiez les points suivants :

  • Si l’exportation de données de Google Analytics vers BigQuery est configurée.

  • Si les données exportées sont visibles dans BigQuery.

  • Si les rôles appropriés sont attribués au compte de service/à l’utilisateur authentifié utilisé.

Notez qu’il peut s’écouler jusqu’à 24 heures entre la configuration de l’exportation de données et le stockage des données dans BigQuery. Ce délai peut être à l’origine de l’absence de résultats de la procédure LIST_GA_PROPERTIES.

La désactivation de l’exportation Google Analytics ne signifie pas que la propriété est omise par LIST_GA_PROPERTIES. Même si l’exportation a été désactivée, les données peuvent encore persister dans BigQuery et être synchronisées par le connecteur.

Préparation de la base de données de destination

Avant d’activer l’ingestion, vous devez autoriser le connecteur à accéder à la création de tables et de vues dans votre base de données et votre schéma de destination.

GRANT USAGE ON DATABASE <destination database> TO APPLICATION <application name>;

GRANT USAGE ON SCHEMA <destination database>.<destination schema> TO APPLICATION <application name>;

GRANT CREATE TABLE ON SCHEMA <destination database>.<destination schema> TO APPLICATION <application name>;

GRANT CREATE VIEW ON SCHEMA <destination database>.<destination schema> TO APPLICATION <application name>;
Copy

Activation ou désactivation de l’ingestion d’une propriété

Pour activer ou désactiver la synchronisation de données d’une propriété spécifique dans Google Analytics, appelez la procédure stockée ENABLE_PROPERTIES avec les arguments suivants :

CALL ENABLE_PROPERTIES('<gcp_project>', ['<properties_to_configure>'], <enable_initial_load>, <exclude_nulls>, <disable_auto_reloads>);
Copy

Où :

gcp_project

Spécifie le projet GCP des propriétés activées.

properties_to_configure

Spécifie une liste de noms de propriétés Google Analytics séparés par des virgules et placés entre guillemets simples.

Utilisez le nom de propriété sans le préfixe analytics_.

enable_initial_load

Une valeur booléenne indiquant s’il faut activer ou désactiver le chargement initial des données, qui ingère toutes les données historiques d’une propriété, puis passe à la synchronisation actuelle.

Il s’agit d’un argument facultatif dont la valeur par défaut est true.

Lorsqu’une propriété a été précédemment activée, cet indicateur est ignoré et l’ingestion reprend au point où elle s’est arrêtée lorsque la propriété a été désactivée.

exclude_nulls

Valeur booléenne facultative indiquant s’il faut exclure les champs contenant des valeurs nulles des données ingérées. La définition de ce paramètre sur true peut améliorer le débit d’ingestion de données. La valeur par défaut est false.

disable_auto_reloads

Valeur booléenne facultative indiquant s’il faut désactiver les rechargements automatiques. Pour plus de détails sur le rechargement automatique, voir Modèle d’ingestion de données du Snowflake Connector for Google Analytics Raw Data. La définition de cette valeur sur true peut réduire la consommation de crédit, mais les données tardives ne seront pas ingérées dans Snowflake. La valeur par défaut est false.

Par exemple, pour activer la synchronisation des propriétés nommées property1, property2 et property3 dans le projet gcp_example_project, exécutez la commande suivante :

CALL ENABLE_PROPERTIES('gcp_example_project', ['property1','property2','property3']);
Copy

Pour activer des propriétés sans le chargement de données initial, utilisez une requête ENABLE_PROPERITES similaire à la suivante :

CALL ENABLE_PROPERTIES('gcp_example_project', ['property1','property2','property3'], false);
Copy

Vous pouvez utiliser des arguments nommés pour préciser des arguments spécifiques et laisser le reste inchangé. Par exemple, pour activer les propriétés avec le chargement initial et exclure les champs contenant des valeurs nulles, exécutez la requête suivante :

 CALL ENABLE_PROPERTIES(
    PROJECT_ID => 'gcp_example_project',
    PROPERTY_IDS => ['property1', 'property2', 'property3'],
    INITIAL_LOAD => TRUE,
    EXCLUDE_NULLS => TRUE
);
Copy

Pour éviter l’ingestion de ces propriétés, exécutez la commande suivante :

CALL DISABLE_PROPERTIES('gcp_example_project', ['property1','property2','property3']);
Copy

La désactivation de la propriété arrête sa synchronisation. Lorsque la synchronisation des propriétés est désactivée, l’ingestion toute entière commencée, mais pas terminée, est supprimée de la base de données de destination.

La procédure ENABLE_PROPERTIES ajoute les noms de propriété spécifiés à la vue ENABLED_PROPERTIES.

Chargement initial

Après l’activation d’une nouvelle propriété, le connecteur passe en mode de chargement initial. Cela signifie que toutes les données historiques trouvées dans BigQuery seront ingérées avant la collecte de nouveaux événements.

Rechargement de données déjà ingérées

Pour recharger des données déjà ingérées ou pour charger des données qui n’ont pas du tout été ingérées (par exemple parce que vous avez activé la propriété sans chargement initial ou parce que les données étaient absentes dans BigQuery et qu’elles sont maintenant disponibles), vous pouvez appeler l’une des procédures suivantes :

CALL RELOAD_PROPERTY('<property id>');
Copy

Cette procédure déclenche le rechargement de toutes les données (DAILY, INTRADAY, USERS et PSEUDONYMOUS_USERS) d’une propriété donnée, entre la table la plus ancienne qu’elle peut trouver dans BigQuery et la date de la dernière table ingérée (ou marquée de manière définitive comme DATA_NOT_FOUND) pour le connecteur.

CALL RELOAD_PROPERTY('<property id>', <first date>, <last date>);
Copy

Déclenche le rechargement de toutes les données (DAILY, INTRADAY, USERS et PSEUDONYMOUS_USERS) d’une propriété donnée entre les dates fournies.

CALL RELOAD_PROPERTY('<property id>', '<export type>', <first date>, <last date>);
Copy

Déclenche le rechargement des données DAILY, INTRADAY, USERS ou PSEUDONYMOUS_USERS d’une propriété donnée entre les dates fournies.

Note

  • Le rechargement est traité en parallèle du chargement principal.

  • Vous pouvez déclencher autant de rechargements d’une propriété que vous le souhaitez, à condition que les plages de dates ne se chevauchent pas.

  • Les données sont échangées après le téléchargement de chaque table à partir de BigQuery.

  • Le rechargement échange les données uniquement s’il existe des données dans BigQuery pour un jour spécifique.

Les rechargements en cours peuvent être observés via une vue dédiée :

SELECT * FROM PUBLIC.ONOGOING_RELOADS;
Copy

Pour annuler le rechargement en cours, exécutez la requête suivante :

CALL CANCEL_RELOAD_PROPERTY('<load id>');
Copy