Skip to main content
Skip table of contents

Exports planifiés

Créez plusieurs flux pour un nombre illimité de cas d'usage

Data Flow est composé d'une interface utilisateur de type point & click qui vous permettra de créer différents flux pour partager des données granulaires dans le bon format aux bonnes parties prenantes.

Flows.png

Activer l'option Data Flow

Data Flow est une option payante qui peut être activée sur votre organisation.

Pour accéder à Data Flow, contactez votre Account Manager via votre administrateur ou contactez notre centre support.

Interface

Création d'un nouveau flux de données

Les flux peuvent être configurés directement à partir de notre interface Explorer sous forme d'exports planifiés.

Accédez à l'application des exports planifiés via la liste déroulante de l'Explorer.

Une interface dédiée vous permettra de configurer vos flux de données. Vous pourrez configurer les aspects suivants de vos flux de données :

Une interface dédiée vous permettra d’effectuer cette configuration d’exports. Vous pourrez entre autres :

  • Multisite: Sélectionner un site ou l’ensemble des sites auxquels vous avez droit d’accéder.

  • Choix de propriétés : Choisir les propriétés composant votre export (standard et custom).

  • Format : Choisir le type de séparateur et le format d’export entre CSV, JSON et PARQUET.

  • Planification : Choisir la fréquence d’export – 15, 30 ou 60 minutes.

  • Stockage : Choisir l’emplacement de l’export, sFTP, Amazon S3 (Azure et GCP par la suite).

Accéder à l'interface Data Flow - Exports planifiés

Pour vous connecter à l'interface de Data Flow, rendez-vous sur l'app Export :

2.png

Vous serez ensuite en capacité de créer des exports planifiés Data Flow.

 

Création d'un export planifié Data Flow

Cliquez sur "Créer un export Data Flow" pour créer un nouveau flux de données.

DF_Button.png

Vous accéderez ensuite au paramétrage de votre flux d'export qui se présente sous forme de 2 étapes très simples :

ETAPE 1 : Que voulez-vous inclure dans votre export ?

4.png
5.png

Le périmètre de votre export

Avez-vous besoin d'informations concernant tous les sites web de votre organisation ?

Ou seulement d'un ou plusieurs de vos sites internet ?

6.png

Activation du filtre privacy

Vous avez la possibilité d'activer le filtre privacy afin de respecter la règlement en vigueur. Ce filtre privacy activé vous permet d'écarter de vos exports les données non-consenties. Si vous décidez de ne pas activer ce filtre privacy, après réception de toutes les données Piano Analytics, vous devrez si besoin purger une partie de vos données reçues afin de respecter la règlement en vigueur dans votre pays. Le filtre privacy est basé sur "visitor_privacy_consent = false".

10.png

Les données dont vous avez besoin d'exporter

Voulez-vous exclure les données non-consenties ? Voulez-vous exporter la totalité de vos propriétés actuelles et futures ? Ou seulement certaines propriétés ?

  • Lorsque vous sélectionnez "Données personnalisées", 7 propriétés obligatoires sont présélectionnées : site_id,visit_id,event_time,hit_time_utc,event_time_utc,visitor_privacy_mode,visitor_privacy_consent

  • A noter : tout import rétroactif effectué via l'interface d'enrichissement disponible dans "Data Management" ne sera pas effectif dans vos flux d'exports de données. Mettant à jour d'anciennes données, les exports planifiés ne sont pas en capacité d'exporter après-coup des données mises à jour via un import rétroactif.

 

ETAPE 2 : Quelles sont les caractéristiques de votre export ?

7.png
8.png

Nom du flux d'export

Nommez votre flux d'export

9.png

Choix du format d'export

Choisissez votre format d'export : CSV, JSON ou Parquet. La configuration change automatiquement pour chaque format que vous sélectionnez.

Veuillez noter que le format JSON est plus exactement du NDJSON (Newline Delimited JSON). Merci de vous référer au site suivant pour plus d'informations : http://ndjson.org/

10.png

Fréquence d'export & enregistrement

  • Choisissez votre fréquence d'export planifié (15,30,60min), le partitionnement et la destination de votre export (Amazon S3, sFTP).

  • Après chaque génération, un fichier supplémentaire sera envoyé. Il s'agit d'un fichier ".report" contenant les fichiers générés et envoyés, après génération de l'export. Il vous permet de vérifier si la génération de vos fichiers a bien fonctionné :

=> missinglefile: false => Aucun problème.

=> missinglefile: true => Un fichier est manquant.

Configuration des connexions Amazon S3

La configuration des connexions Amazon S3 est un processus simple.

Pour commencer, sélectionnez "Amazon S3" comme type d'envoi lors de la configuration de votre export.

Sélectionnez ensuite "Créer une nouvelle connexion" :

image-20241213-103850.png

La fenêtre de configuration suivante s'affiche. Afin de pouvoir exporter les fichiers nous avons besoin des informations suivantes :

image-20241213-103903.png

  1. Nom de la configuration S3 - les informations présentes ici sont à titre de référence. Cela vous permettra de trouver et de modifier votre connexion parmi les autres connexions Amazon S3 que vous avez configurées avec Piano Analytics.

  2. Nom du Bucket - Nous avons besoin d'informations concernant le nom de votre Bucket Amazon S3. Il s'agit d'un identificateur unique et propre à votre bucket. Cela nous permettra d'envoyer les fichiers au bon emplacement.

  3. Dossier de destination - Si vous souhaitez envoyer les exports à un endroit autre que le dossier principal du Bucket, vous pouvez spécifier le chemin d'accès ici, les sous-dossiers doivent être séparés par "/".

  4. Règle de configuration d'accès - L’accès aux bucket de stockage S3 du client se fait à travers une authentification par rôles AWS. Piano Analytics fournira au client l’ARN d’un rôle à autoriser sur son bucket pour permettre l’accès en écriture afin d’y déposer les fichiers. Le client à la charge mettre en place la « Bucket Policy » donnant l’accès au Rôle Piano Analytics.

  5. Tester la connexion - Lorsque vous appuyez sur le bouton "tester la connexion", nous enverrons un fichier sur votre Bucket Amazon S3 qui nous permettra de confirmer que les informations que vous nous avez fournies sont correctes et que la connexion a été établie correctement.

et sauvegardez !

Lorsque vous revenez sur la configuration, cliquez sur : image-20241213-104004.png pour rafraîchir la liste des connexions Amazon S3. Vous devriez voir apparaître la connexion que vous venez de configurer dans la liste

Configuration des connexions FTP et sFTP

La configuration des connexions FTP ou sFTP est un processus simple.

Sélectionnez "FTP" comme type d'envoi lors de la configuration de votre  export.

Ensuite, sélectionnez "Créer une nouvelle connexion" :

image-20241213-104030.png

La fenêtre de configuration suivante s'affiche. Afin de connaitre les droits et la destination où Piano Analytics doit exporter les fichiers, nous avons besoin des informations suivantes :

image-20241213-104045.png
  1. Nom de la configuration FTP - les informations demandées ici sont à titre de référence. Cela vous permettra de trouver et d'éditer votre connexion parmi les autres connexions FTP que vous avez configuré avec Piano Analytics.

  2. IP/Nom du serveur - Nous avons besoin d'informations concernant l'adresse IP ou le nom du serveur où se trouve votre serveur FTP.

  3. Protocole - dans cette section, vous pourrez spécifier le protocole que vous souhaitez utiliser : FTP ou sFTP

  4. Port - Dans cette section, vous pouvez spécifier le port que vous souhaitez utiliser.

  5. Identifiant & Mot de passe - Pour que nous puissions exporter le fichier, nous avons besoin d'un identifiant & mot de passe valide avec suffisamment de droits d'accès pour pouvoir pousser les accès.

  6. Dossier de destination - Si vous souhaitez envoyer les exportations à un endroit autre que le dossier principal du bucket, vous pouvez spécifier le chemin d'accès ici, les sous-dossiers doivent être séparés par "/".

  7. Tester la connexion - lorsque vous appuyez sur le bouton "tester la connexion", nous enverrons un fichier au FTP qui nous permettra de confirmer que les informations que vous nous avez fournies sont correctes et que la connexion a été établie correctement.

et sauvegardez!

Vous souhaitez autoriser des adresses IPs?

Vous pouvez contacter notre centre support afin de récupérer les adresses IPs à autoriser de votre côté.

Nous vous recommandons fortement de préférer l'envoi S3 à l'envoi FTP : ce dernier est un protocole vieillissant qui ne permet pas des transferts rapides de fichiers. Nous vous proposerons prochainement des envois vers Google Cloud Platform et Microsoft Azure.

Si vous être dans l'obligation d'utiliser un envoi vers FTP, nous vous conseillons alors d'utiliser une fréquence d'envoi à 15 ou 30 minutes qui limitera la taille des fichiers à envoyer.

Planification

Le système de planification des exports Data Flow ne se base pas sur des périodes complètes. A chaque tour de boucle (toutes les 15, 30 ou 60 minutes), toutes les nouvelles données insérées en base depuis le dernier export sont extraites. Dans notre nouvelle chaîne de traitement, la NDF, c'est grâce à ce système que nous avons l'assurance de vous envoyer l'exhaustivité de vos événements.

Les exports de flux de données sont valables pendant 12 mois, ils expireront après ce délai. Vous recevrez une notification un mois avant la date d'expiration par email vous rappelant de prolonger l'export.

Disponibilité des données

Certaines données ne seront pas disponibles sur Data Flow. La raison est simple : ces propriétés sont calculées "à la volée" et ne sont pas stockées ou ce sont des propriétés "incertaines". Par exemple, nous ne savons pas à l'avance si une visite sera considérée comme un "rebond". De ce fait, la propriété "visit_bounce" ne peut pas être proposée dans Data Flow.

Partitionnement

Data Flow inclut une nouvelle fonctionnalité : le partitionnement. Etant donné que les fichiers ne portent pas sur des périodes complètes, le partitionnement vous permet d'organiser vos fichiers selon la période qu'ils contiennent. Cette période est basée sur la date UTC de collecte des données (propriété hit_time_utc).

Vous avez la possibilité de choisir votre niveau de partitionnement :

  • Date

  • Date / Heure

  • Date / Heure / Demi-heure

  • Date / Heure / Quart d'heure

Prenons un exemple concret. Imaginons que vous ayez créé un export horaire avec un partitionnement à niveau Date / Heure. L'export se nomme myExport, il est envoyé dans un dossier myFolder.

Le contenu de la table au moment de l'extraction est le suivant :

Hit_time_utc

event_id

...

08/04/2021 10:58:14

abcdefghij

...

08/04/2021 10:59:27

fjezoijznczeufh

...

08/04/2021 11:00:28

hezihigiregie

...

08/04/2021 11:01:45

jeijgirejrejgjei

...

Les données sont à cheval sur deux heures, elles vont donc être réparties dans des fichiers différents.

Dans le cas d'un envoi S3 :

myFolder/myExport/data/date=2021-04-08/hour=10/data_36_019ac5aa-3252-4738-0000-03d5ba4052ba_001_0_0.csv.gz

et

myFolder/myExport/data/date=2021-04-08/hour=11/data_36_019ac5aa-3252-4738-0000-03d5ba4052ba_001_0_0.csv.gz

Le premier fichier contiendra les événements extraits dont la propriété hit_time_utc est comprise entre 10:00:00 et 10:59:59, le deuxième ceux dont la propriété hit_time_utc est comprise entre 11:00:00 et 11:59:59.  Si au prochain tour de boucle il y a de nouvelles données comprises entre 11:00:00 et 11:59:59, de nouveaux fichiers seront créés dans le dossier /hour=11/.

Dans le cas d'un envoi (s)FTP, la logique est la même, seule la nomenclature change. Nous ne pouvons pas créer dynamiquement des dossiers, donc ce sont les noms de fichiers eux-mêmes qui portent l'information de période :

myFolder/myExport_2021-04-08_10_data_36_019ac5aa-3252-4738-0000-03d5ba4052ba_001_0_0.csv.gz

myFolder/myExport_2021-04-08_11_data_36_019ac5aa-3252-4738-0000-03d5ba4052ba_001_0_0.csv.gz

Format

Une fois votre flux créé, vous recevrez directement sur votre serveur Amazon S3/sFTP les fichiers générés par Data Flow. Chaque fichier généré est compressé au format GZ. Les noms de fichiers incluent une nomenclature gérée par Snowflake repérable sur la fin du nom de fichier de la façon suivante :

data_#GUID#_#NumérotationSnowFlake#.format

Vous trouverez des exemples dans le paragraphe précédent.

Afin d'accélérer les traitements, Snowflake exécute la requête par parties sur différentes machines, donc pour un même export généré à un instant T, vous pourrez recevoir plusieurs fichiers.

Important :

Concernant les exports au format CSV, nous vous recommandons de ne pas vous baser sur les index des colonnes mais sur leurs entêtes : nous ne pouvons garantir d'ordre fixe d'affichage des propriétés.

Dans les exports au format JSON, les propriétés avec une valeur vide n'apparaitront pas pour l'événement concerné.

Rapport de livraison

Après chaque génération de fichiers sur votre bucket Amazon S3 / sFTP, vous recevrez en complément un fichier ".report" qui contiendra la liste des noms de fichiers générés que vous venez de recevoir.

Si vous avez reçu un fichier dont le nom n'est pas contenu dans un rapport de livraison, c'est que ce fichier n'est pas complet, il faut donc l'occulter.

La réception de ce rapport de livraison atteste de la bonne génération et livraison des exports sur une période donnée.

Ex : à 10h20 UTC une génération est lancée, il en résulte trois fichiers :

  • myFolder/myExport/data/date=2021-10-31/hour=09/min=45-60/data_019ac5aa-3252-4738-0000-03d5ba4052ba_001_0_0.csv.gz

  • myFolder/myExport/data/date=2021-10-31/hour=10/min=00-15/data_049fc5da-3372-8338-1200-08f7bc4801cz_001_0_0.csv.gz

  • myFolder/myExport/data/date=2021-10-31/hour=10/min=00-15/data_049fc5da-3372-8338-1200-08f7bc4801cz_002_0_0.csv.gz

Une fois que ces trois fichiers ont été intégralement déposés dans votre bucket S3 / votre sFTP, un rapport de livraison nommé #timestamp#_delivery.report vous est envoyé, contenant ces trois mêmes noms de fichiers, et atteste donc que vous pouvez récupérer leur contenu en toute sérénité.

Génération d'historique

Les exports de génération d'historique ou de régénération d'une date passée se baseront sur le même niveau de partitionnement que votre export de production. La régénération pourra se faire dans un dossier distinct.

Pour pouvoir générer de l'historique d'un jour X à un jour Y et minimiser le risque de doublons ou de trous de données, voici la marche à suivre :

  • Si ce n'est pas déjà fait, mettre l'export en production avec la fréquence désirée

  • à Y+1, vous devez supprimer les données que vous avez ingérées dans votre base de données avec une requête comme suit : DELETE * FROM #matable# WHERE hit_time_utc < Y+1

  • Nos équipes AT Internet en interne créent un ticket de génération d'historique à l'équipe Exports en précisant :

    • Votre compte client sur lequel l'export de production a été créé

    • Le nom de votre export

    • La période exacte à régénérer (X à Y)

 

A savoir

Il est possible que des exports de production contiennent parfois des doublons. Ce n'est pas inhérent à Data Flow mais à la collecte des données. Ces doublons apparaîtront également dans Data Query sur la journée en temps réel. Les doublons sont supprimés à J+1 dans la table de données consolidées, mais cela n'a donc pas d'impact sur les fichiers Data Flow déjà consommés.

En cas de retard de temps réel, les événements non inclus dans un fichier seront inclus dans les fichiers suivants, toujours en se basant sur leur date de collecte. Auquel cas, on peut avoir des fichiers plus légers que de coutume sur une période puis des fichiers plus lourds sur la période suivante.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.