Cet article décrit le format et le schéma des données des propriétés Google Analytics 4 et des données Google Analytics pour Firebase exportées vers BigQuery.
Ensembles de données
Pour chaque propriété Google Analytics 4 et chaque projet Firebase associés à BigQuery, un ensemble de données unique nommé "analytics_<id_propriété>" est ajouté à votre projet BigQuery. "id_propriété" fait référence à votre ID de propriété Analytics, que vous pouvez trouver dans les paramètres de votre propriété Google Analytics 4 et dans ceux dédiés à l'analyse d'applications dans Firebase. Toutes les propriétés Google Analytics 4 et toutes les applications dans lesquelles BigQuery Export est activé exportent leurs données vers cet ensemble de données unique.
Tables
Dans chaque ensemble de données, une table nommée events_YYYYMMDD
est créée chaque jour si l'option d'exportation quotidienne est activée.
Si l'option d'exportation en flux continu est activée, une table nommée events_intraday_YYYYMMDD
est créée. Les données sont insérées en continu dans cette table, à mesure que les événements sont enregistrés tout au long de la journée. Cette table est supprimée à la fin de chaque journée, lorsque events_YYYYMMDD
est terminé.
Les appareils sur lesquels les événements sont déclenchés n'envoient pas tous leurs données à Analytics le jour même. Pour tenir compte de cette latence, Analytics met à jour les tables quotidiennes (events_YYYYMMDD
) avec les événements correspondants jusqu'à trois jours après la date des événements. Les événements sont associés au bon horodatage, quelle que soit la date d'arrivée. Les événements qui se produisent après ce délai ne sont pas enregistrés.
Si vous utilisez le bac à sable BigQuery, les événements ne peuvent pas être importés en continu, et des limites supplémentaires s'appliquent.
Si vous souhaitez bénéficier d'importations de données intrajournalières, effectuez une mise à niveau à partir du bac à sable.
Colonnes
Chaque colonne de la table events_YYYYMMDD
représente un paramètre spécifique à un événement. Notez que certains paramètres sont imbriqués dans des RECORDS, et que certains RECORDS tels que items
et event_params
peuvent être répétés. Les colonnes de la table sont décrites ci-dessous.
Les champs "event" contiennent des informations permettant d'identifier de manière unique un événement. | ||
Nom du champ | Type de données | Description |
---|---|---|
event_date | CHAÎNE | Date d'enregistrement de l'événement (format AAAAMMJJ dans le fuseau horaire enregistré pour votre application). |
event_timestamp | ENTIER | Heure (en microsecondes, UTC) à laquelle l'événement a été enregistré sur le client. |
event_previous_timestamp | ENTIER | Heure (en microsecondes, UTC) à laquelle l'événement a été précédemment enregistré sur le client. |
event_name | CHAÎNE | Nom de l'événement. |
event_value_in_usd | FLOAT | Valeur convertie en devise (USD) du paramètre "value" de l'événement. |
event_bundle_sequence_id | ENTIER | Identifiant séquentiel du groupe dans lequel ces événements ont été importés. |
event_server_timestamp_offset | ENTIER | Décalage au niveau de l'horodatage entre l'heure de collecte et l'heure d'importation, en microsecondes. |
event_params RECORD
event_params RECORD peut stocker des paramètres d'événement contextuels et au niveau de la campagne, ainsi que des paramètres d'événement définis par l'utilisateur. event_params RECORD est répété pour chaque clé associée à un événement. L'ensemble des paramètres stockés dans event_params RECORD est unique à chaque implémentation. Pour obtenir la liste complète des paramètres d'événement pour votre implémentation, interrogez la liste des paramètres d'événement. |
||
Nom du champ | Type de données | Description |
---|---|---|
event_params.key | CHAÎNE | Nom du paramètre d'événement. |
event_params.value | ENREGISTREMENT | Enregistrement contenant la valeur du paramètre de l'événement. |
event_params.value.string_value | CHAÎNE | Si le paramètre d'événement est représenté par une chaîne, telle qu'une URL ou le nom d'une campagne, il est renseigné dans ce champ. |
event_params.value.int_value | ENTIER | Lorsque le paramètre d'événement est représenté par un nombre entier, il est renseigné dans ce champ. |
event_params.value.double_value | FLOAT | Lorsque le paramètre d'événement est représenté par une valeur double, il est renseigné dans ce champ. |
event_params.value.float_value | FLOAT | Lorsque le paramètre d'événement est représenté par une valeur à virgule flottante, il est renseigné dans ce champ. Ce champ n'est pas utilisé pour le moment. |
item_params RECORD
item_params RECORD peut stocker des paramètres d'élément et n'importe quel paramètre d'élément défini par l'utilisateur. L'ensemble des paramètres stockés dans item_params RECORD est unique à chaque implémentation. |
||
Nom du champ | Type de données | Description |
---|---|---|
item_params.key | CHAÎNE | Le nom du paramètre de l'élément. |
item_params.value | ENREGISTREMENT | Un enregistrement contenant la valeur du paramètre de l'élément. |
item_params.value.string_value | CHAÎNE | Lorsque le paramètre d'élément est représenté par une chaîne, il est inséré dans ce champ. |
item_params.value.int_value | ENTIER | Lorsque le paramètre d'élément est représenté par un nombre entier, il est renseigné dans ce champ. |
item_params.value.double_value | FLOAT | Lorsque le paramètre d'élément est représenté par une valeur double, il est renseigné dans ce champ. |
item_params.value.float_value | FLOAT | Lorsque le paramètre d'élément est représenté par une valeur à virgule flottante, il est renseigné dans ce champ. |
Les champs "user" contiennent des informations qui identifient de manière unique l'utilisateur associé à l'événement. | ||
Nom du champ | Type de données | Description |
---|---|---|
is_active_user | BOOLÉEN |
Indique si l'utilisateur était actif (True) ou inactif (False) à un moment donné du jour calendaire Inclus uniquement dans les tableaux quotidiens ( |
user_id | CHAÎNE | Identifiant unique attribué à un utilisateur. |
user_pseudo_id | CHAÎNE | Identifiant pseudonyme (ID d'instance d'application, par exemple) de l'utilisateur. |
user_first_touch_timestamp | ENTIER | Heure (en microsecondes) à laquelle l'utilisateur a ouvert l'application ou visité le site pour la première fois. |
Champs "privacy_info"
Les champs "privacy_info" contiennent des informations sur l'état de consentement d'un utilisateur lorsque le mode Consentement est activé. | ||
Nom du champ | Type de données | Description |
---|---|---|
privacy_info.ads_storage | CHAÎNE |
Indique si le ciblage des annonces est activé pour un utilisateur. Valeurs possibles : Yes, No, Unset |
privacy_info.analytics_storage | CHAÎNE |
Indique si l'espace de stockage Analytics est activé pour l'utilisateur. Valeurs possibles : Yes, No, Unset |
privacy_info.uses_transient_token | CHAÎNE |
Indique si un utilisateur Web a refusé le stockage Analytics et si le développeur a activé la mesure sans cookies à partir de jetons temporaires dans les données serveur. Valeurs possibles : Yes, No, Unset |
user_properties RECORD
user_properties RECORD contient toutes les propriétés utilisateur que vous avez définies. Il est répété pour chaque clé associée à un utilisateur. | ||
Nom du champ | Type de données | Description |
---|---|---|
user_properties.key | CHAÎNE | Nom de la propriété utilisateur. |
user_properties.value | ENREGISTREMENT | Enregistrement de la valeur de la propriété utilisateur. |
user_properties.value.string_value | CHAÎNE | Valeur de la chaîne de la propriété utilisateur. |
user_properties.value.int_value | ENTIER | Valeur du nombre entier de la propriété utilisateur. |
user_properties.value.double_value | FLOAT | Valeur double de la propriété utilisateur. |
user_properties.value.float_value | FLOAT | Ce champ n'est pas utilisé à l'heure actuelle. |
user_properties.value.set_timestamp_micros | ENTIER | Heure (en microsecondes) à laquelle la propriété utilisateur a été définie pour la dernière fois. |
user_ltv RECORD
user_ltv RECORD contient des informations sur la valeur vie concernant l'utilisateur. Il n'est pas renseigné dans les tableaux intrajournaliers. | ||
Nom du champ | Type de données | Description |
---|---|---|
user_ltv.revenue | FLOAT | Valeur vie client (chiffre d'affaires) de l'utilisateur. Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
user_ltv.currency | CHAÎNE | Valeur vie client (devise) de l'utilisateur. Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
device RECORD contient des informations sur l'appareil d'où provient l'événement. | ||
Nom du champ | Type de données | Description |
---|---|---|
device.category | CHAÎNE | Catégorie d'appareil (mobile, tablette, ordinateur). |
device.mobile_brand_name | CHAÎNE | Marque de l'appareil. |
device.mobile_model_name | CHAÎNE | Nom du modèle de l'appareil. |
device.mobile_marketing_name | CHAÎNE | Dénomination commerciale de l'appareil. |
device.mobile_os_hardware_model | CHAÎNE | Informations sur le modèle d'appareil extraites directement du système d'exploitation. |
device.operating_system | CHAÎNE | Système d'exploitation de l'appareil. |
device.operating_system_version | CHAÎNE | Version de l'OS. |
device.vendor_id | CHAÎNE | IDFV (seulement si l'IDFA n'est pas collecté). |
device.advertising_id | CHAÎNE | ID/IDFA publicitaire. |
device.language | CHAÎNE | Langue de l'OS. |
device.time_zone_offset_seconds | ENTIER | Décalage par rapport à GMT en secondes. |
device.is_limited_ad_tracking | BOOLÉEN |
Paramètre "Limiter le suivi des annonces" de l'appareil Sous iOS 14 et versions ultérieures, renvoie "false" si l'IDFA est différent de zéro. |
device.web_info.browser | CHAÎNE | Navigateur dans lequel l'utilisateur a affiché le contenu. |
device.web_info.browser_version | CHAÎNE | Version du navigateur dans lequel l'utilisateur a affiché le contenu. |
device.web_info.hostname | CHAÎNE | Nom d'hôte associé à l'événement enregistré. |
geo
geo RECORD contient des informations sur la zone géographique à l'origine de l'événement. | ||
Nom du champ | Type de données | Description |
---|---|---|
geo.continent | CHAÎNE | Continent à l'origine des rapports sur les événements, en fonction de l'adresse IP. |
geo.sub_continent | CHAÎNE | Sous-continent à l'origine des rapports sur les événements, en fonction de l'adresse IP. |
geo.country | CHAÎNE | Pays à l'origine des rapports sur les événements, en fonction de l'adresse IP. |
geo.region | CHAÎNE | Région à l'origine des rapports sur les événements, en fonction de l'adresse IP. |
geo.metro | CHAÎNE | Agglomération à l'origine des rapports sur les événements, en fonction de l'adresse IP. |
geo.city | CHAÎNE | Ville à l'origine des rapports sur les événements, en fonction de l'adresse IP. |
app_info RECORD contient des informations sur l'application dans laquelle l'événement a été lancé. | ||
Nom du champ | Type de données | Description |
---|---|---|
app_info.id | CHAÎNE | Nom du package ou ID du bundle de l'application. |
app_info.firebase_app_id | CHAÎNE | ID de l'application Firebase associé à l'application. |
app_info.install_source | CHAÎNE | Plate-forme de téléchargement qui a installé l'application. |
app_info.version | CHAÎNE | versionName (Android) ou version courte du bundle de l'application. |
L'ENREGISTREMENT collected_traffic_source contient les données de la source de trafic qui ont été collectées avec l'événement. |
||
Nom du champ | Type de données | Description |
---|---|---|
manual_campaign_id | CHAÎNE | ID manuel de la campagne (utm_id) collecté avec l'événement. |
manual_campaign_name | CHAÎNE | Nom manuel de la campagne (utm_campaign) collecté avec l'événement. |
manual_source | CHAÎNE | Source manuelle de la campagne (utm_source) collectée avec l'événement. Inclut également les paramètres analysés à partir des paramètres du site référent, et pas seulement les valeurs UTM. |
manual_medium | CHAÎNE | Support manuel de la campagne (utm_medium) collecté avec l'événement. Inclut également les paramètres analysés à partir des paramètres du site référent, et pas seulement les valeurs UTM. |
manual_term | CHAÎNE | Mot clé/Terme manuel de la campagne (utm_term) collecté avec l'événement. |
manual_content | CHAÎNE | Métadonnées manuelles supplémentaires de la campagne (utm_content) collectées avec l'événement. |
gclid | CHAÎNE | Identifiant de clic Google collecté avec l'événement. |
dclid | CHAÎNE | Identifiant Google Marketing Platform (GMP) collecté avec l'événement. |
srsltid | CHAÎNE | Identifiant Google Merchant Center collecté avec l'événement. |
traffic_source RECORD contient des informations sur la source de trafic qui a touché l'utilisateur en premier. Il n'est pas renseigné dans les tableaux intrajournaliers. Remarque : Les valeurs traffic_source ne changent pas si l'utilisateur interagit avec d'autres campagnes après l'installation. |
||
Nom du champ | Type de données | Description |
---|---|---|
traffic_source.name | CHAÎNE | Nom de la campagne marketing qui a touché l'utilisateur en premier. Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
traffic_source.medium | CHAÎNE | Nom du support (liens commerciaux, recherche naturelle, e-mail, etc.) qui a touché l'utilisateur en premier. Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
traffic_source.source | CHAÎNE | Nom du réseau qui a touché l'utilisateur en premier. Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
Les champs "stream" et "platform" contiennent des informations sur le flux et la plate-forme d'applications. | ||
Nom du champ | Type de données | Description |
---|---|---|
stream_id | CHAÎNE | ID numérique du flux de données à l'origine de l'événement. |
platform | CHAÎNE | Plate-forme du flux de données (Web, iOS ou Android) à l'origine de l'événement. |
ecommerce RECORD contient des informations sur tous les événements d'e-commerce qui ont été configurés sur un site Web ou dans une application. | ||
Nom du champ | Type de données | Description |
---|---|---|
ecommerce.total_item_quantity | ENTIER | Nombre total d'articles dans cet événement (égal à la somme de "items.quantity") |
ecommerce.purchase_revenue_in_usd | FLOAT | Revenus issus des achats liés à cet événement (indiqués en USD avec l'unité standard). Valeur renseignée seulement pour les événements de type achat |
ecommerce.purchase_revenue | FLOAT | Revenus issus des achats liés à cet événement (indiqués dans la devise locale avec l'unité standard). Valeur renseignée seulement pour les événements de type achat |
ecommerce.refund_value_in_usd | FLOAT | Montant des remboursements associés à cet événement (indiqué en USD avec l'unité standard). Valeur renseignée seulement pour les événements de type remboursement |
ecommerce.refund_value | FLOAT | Montant des remboursements associés à cet événement (indiqué dans la devise locale avec l'unité standard). Valeur renseignée seulement pour les événements de type remboursement |
ecommerce.shipping_value_in_usd | FLOAT | Frais de port associés à cet événement (indiqués en USD avec l'unité standard) |
ecommerce.shipping_value | FLOAT | Frais de port associés à cet événement (indiqués dans la devise locale avec l'unité standard) |
ecommerce.tax_value_in_usd | FLOAT | Valeur des taxes associées à cet événement (indiquée en USD avec l'unité standard) |
ecommerce.tax_value | FLOAT | Valeur des taxes associées à cet événement (indiquée dans la devise locale avec l'unité standard) |
ecommerce.transaction_id | CHAÎNE | ID de la transaction e-commerce |
ecommerce.unique_items | ENTIER | Nombre d'articles uniques dans cet événement, basé sur les attributs "item_id", "item_name" et "item_brand" |
items RECORD contient des informations sur les articles inclus dans un événement. Il est répété pour chaque article. | ||
Nom du champ | Type de données | Description |
---|---|---|
items.item_id | CHAÎNE | ID de l'article |
items.item_name | CHAÎNE | Nom de l'article |
items.item_brand | CHAÎNE | Marque de l'article |
items.item_variant | CHAÎNE | Variante de l'article |
items.item_category | CHAÎNE | Catégorie de l'article |
items.item_category2 | CHAÎNE | Sous-catégorie de l'article |
items.item_category3 | CHAÎNE | Sous-catégorie de l'article |
items.item_category4 | CHAÎNE | Sous-catégorie de l'article |
items.item_category5 | CHAÎNE | Sous-catégorie de l'article |
items.price_in_usd | FLOAT | Prix de l'article (indiqué en USD avec l'unité standard) |
items.price | FLOAT | Prix de l'article (indiqué dans la devise locale) |
items.quantity | ENTIER | Quantité d'articles (définie sur 1 si non spécifiée) |
items.item_revenue_in_usd | FLOAT | Revenus générés par cet article, calculés comme suit : price_in_usd * quantity. Valeur renseignée seulement pour les événements de type achat (indiquée en USD avec l'unité standard) |
items.item_revenue | FLOAT | Revenus générés par cet article, calculés comme suit : price * quantity. Valeur renseignée seulement pour les événements de type achat (indiquée dans la devise locale avec l'unité standard) |
items.item_refund_in_usd | FLOAT | Montant des remboursements associés à cet article, calculé comme suit : price_in_usd * quantity. Valeur renseignée seulement pour les événements de type remboursement (indiquée en USD avec l'unité standard) |
items.item_refund | FLOAT | Montant des remboursements associés à cet article, calculé comme suit : price * quantity. Valeur renseignée seulement pour les événements de type remboursement (indiquée dans la devise locale avec l'unité standard) |
items.coupon | CHAÎNE | Code promotionnel appliqué à cet article |
items.affiliation | CHAÎNE | Affiliation du produit pour désigner l'entreprise qui fournit l'article ou le magasin physique dans lequel il a été vendu. |
items.location_id | CHAÎNE | Lieu associé à l'article |
items.item_list_id | CHAÎNE | ID de la liste dans laquelle l'article a été présenté à l'utilisateur |
items.item_list_name | CHAÎNE | Nom de la liste dans laquelle l'article a été présenté à l'utilisateur |
Items.item_list_index | CHAÎNE | Position de l'article dans une liste |
items.promotion_id | CHAÎNE | ID d'une promotion associée à un produit |
items.promotion_name | CHAÎNE | Nom d'une promotion associée à un produit |
items.creative_name | CHAÎNE | Nom d'une création utilisée dans un emplacement promotionnel |
items.creative_slot | CHAÎNE | Nom de l'emplacement d'une création |
item_params RECORD
item_params RECORD stocke les paramètres d'élément personnalisés que vous avez définis. Notez que les paramètres d'élément prédéfinis tels que item_id, item_name, etc. ne sont pas inclus ici, mais exportés en tant que champs explicites. L'ensemble des paramètres stockés dans item_params RECORD est unique à chaque implémentation. Pour en savoir plus sur l'implémentation de l'e-commerce et sur le tableau des éléments de Google Analytics 4, consultez Mesurer l'e-commerce. |
||
Nom du champ | Type de données | Description |
---|---|---|
items.item_params.key | CHAÎNE | Le nom du paramètre de l'élément. |
items.item_params.value | ENREGISTREMENT | Un enregistrement contenant la valeur du paramètre de l'élément. |
items.item_params.value.string_value | CHAÎNE | Lorsque le paramètre d'élément est représenté par une chaîne, il est inséré dans ce champ. |
items.item_params.value.int_value | ENTIER | Lorsque le paramètre d'élément est représenté par un nombre entier, il est renseigné dans ce champ. |
items.item_params.value.double_value | FLOAT | Lorsque le paramètre d'élément est représenté par une valeur double, il est renseigné dans ce champ. |
items.item_params.value.float_value | FLOAT | Lorsque le paramètre d'élément est représenté par une valeur à virgule flottante, il est renseigné dans ce champ. |
Lignes
Les données d'un seul événement peuvent être représentées sur une ou plusieurs lignes, selon si elles contiennent des enregistrements répétés. Par exemple, un événement page_view
contenant plusieurs event_params
ressemblerait à la table suivante. La première ligne contient le nom de l'événement, la date, l'horodatage et d'autres éléments de données non répétés. event_params
RECORD est répété pour chaque paramètre associé à l'événement. Ces enregistrements répétés sont renseignés dans les lignes suivantes, directement sous la ligne de l'événement initial.
event_date | event_timestamp | event_name | event_params.key | event_params_value.string_value |
---|---|---|---|---|
20220222 | 1643673600483790 | page_view | page_location | https://example.com |
page_title | Accueil | |||
medium | site référent | |||
source | ||||
page_referrer | https://www.google.com | |||
<parameters...> | <values...> |
Ces données d'événement sont affichées comme suit dans l'interface utilisateur GA4.
Si vous avez utilisé des versions antérieures du SDK et envisagez de passer à Android 17.2.5 (ou version ultérieure) et/ou à iOS 16.20.0 (ou version ultérieure), vous devez tenir compte des points suivants :
- Pour utiliser le schéma actuel de BigQuery Export, vous devez mettre à jour votre SDK vers Android 17.2.5 (ou version ultérieure) et/ou iOS 16.20.0 (ou version ultérieure). Lorsque vous utilisez des versions antérieures du SDK, les données exportées reflètent l'ancien schéma.
- Après la mise à jour, vous ne pourrez accéder aux données sur les articles que dans le tableau des articles répétés. Ces données ne seront plus disponibles dans les paramètres d'événement standards, comme dans les versions précédentes du SDK.
- Cette modification permet d'analyser plusieurs produits.
- Vous devrez peut-être ajuster vos références aux données produit/article.
- Connectez-vous à la page "Gérer les ressources" de la console Cloud Platform.
- Ouvrez le projet dont vous souhaitez migrer les données, puis cliquez sur Activer Google Cloud Shell en haut de la page.
- Lorsque l'interface système s'ouvre, copiez le script ci-dessous dans un fichier nommé
migration_script.sql
:- Exécutez la commande
cat > migration_script.sql
. - Copiez et collez le script ci-dessous dans l'interface système.
- Appuyez sur Ctrl+D pour enregistrer et quitter.
SELECT @date AS event_date, event.timestamp_micros AS event_timestamp, event.previous_timestamp_micros AS event_previous_timestamp, event.name AS event_name, event.value_in_usd AS event_value_in_usd, user_dim.bundle_info.bundle_sequence_id AS event_bundle_sequence_id, user_dim.bundle_info.server_timestamp_offset_micros as event_server_timestamp_offset, ( SELECT ARRAY_AGG(STRUCT(event_param.key AS key, STRUCT(event_param.value.string_value AS string_value, event_param.value.int_value AS int_value, event_param.value.double_value AS double_value, event_param.value.float_value AS float_value) AS value)) FROM UNNEST(event.params) AS event_param) AS event_params, user_dim.first_open_timestamp_micros AS user_first_touch_timestamp, user_dim.user_id AS user_id, user_dim.app_info.app_instance_id AS user_pseudo_id, "" AS stream_id, user_dim.app_info.app_platform AS platform, STRUCT( user_dim.ltv_info.revenue AS revenue, user_dim.ltv_info.currency AS currency ) AS user_ltv, STRUCT( user_dim.traffic_source.user_acquired_campaign AS name, user_dim.traffic_source.user_acquired_medium AS medium, user_dim.traffic_source.user_acquired_source AS source ) AS traffic_source, STRUCT( user_dim.geo_info.continent AS continent, user_dim.geo_info.country AS country, user_dim.geo_info.region AS region, user_dim.geo_info.city AS city ) AS geo, STRUCT( user_dim.device_info.device_category AS category, user_dim.device_info.mobile_brand_name, user_dim.device_info.mobile_model_name, user_dim.device_info.mobile_marketing_name, user_dim.device_info.device_model AS mobile_os_hardware_model, @platform AS operating_system, user_dim.device_info.platform_version AS operating_system_version, user_dim.device_info.device_id AS vendor_id, user_dim.device_info.resettable_device_id AS advertising_id, user_dim.device_info.user_default_language AS language, user_dim.device_info.device_time_zone_offset_seconds AS time_zone_offset_seconds, IF(user_dim.device_info.limited_ad_tracking, "Yes", "No") AS is_limited_ad_tracking ) AS device, STRUCT( user_dim.app_info.app_id AS id, @firebase_app_id AS firebase_app_id, user_dim.app_info.app_version AS version, user_dim.app_info.app_store AS install_source ) AS app_info, ( SELECT ARRAY_AGG(STRUCT(user_property.key AS key, STRUCT(user_property.value.value.string_value AS string_value, user_property.value.value.int_value AS int_value, user_property.value.value.double_value AS double_value, user_property.value.value.float_value AS float_value, user_property.value.set_timestamp_usec AS set_timestamp_micros ) AS value)) FROM UNNEST(user_dim.user_properties) AS user_property) AS user_properties FROM `SCRIPT_GENERATED_TABLE_NAME`, UNNEST(event_dim) AS event
- Exécutez la commande
- Ouvrez une nouvelle interface système et copiez le script bash ci-dessous dans un fichier nommé
migration.sh
:- Exécutez la commande
cat > migration.sh
. - Copiez et collez le script ci-dessous dans l'interface système.
- Appuyez sur Ctrl+D pour enregistrer et quitter.
Modifiez le script suivant afin d'inclure l'ID de propriété Analytics, l'ID du projet BigQuery, l'ID de l'application Firebase, le nom de l'ensemble de données BigQuery, et les dates de début et de fin des données souhaitées.Script (migration.sh):# ID de propriété Analytics pour le projet. Vous trouverez cette valeur dans les paramètres Analytics de Firebase. PROPERTY_ID=votre ID de propriété Analytics # Projet BigQuery Export. BQ_PROJECT_ID="votre ID de projet BigQuery" (par exemple, "firebase-public-project") # ID de l'application Firebase. FIREBASE_APP_ID="votre ID d'application Firebase" (par exemple, "1:300830567303:ios:09b1ab1d3ca29bda") # Ensemble de données à partir duquel effectuer l'importation. BQ_DATASET="nom de l'ensemble de données BigQuery à partir duquel vous souhaitez effectuer l'importation" (par exemple, "com_firebase_demo_IOS") # Plate-forme PLATFORM="plate-forme de l'application ANDROID ou IOS" # Plage de dates concernée par la migration, [START_DATE,END_DATE] incluses. START_DATE=20180324 END_DATE=20180327 # Ne modifiez pas le script ci-dessous, sauf si vous savez ce que vous faites :) startdate=$(date -d"$START_DATE" +%Y%m%d) || exit -1 enddate=$(date -d"$END_DATE" +%Y%m%d) || exit -1 # Répétez pour toutes les dates. DATE="$startdate" while [ "$DATE" -le "$enddate" ]; do # Tableau BQ construit à partir des paramètres ci-dessus. BQ_TABLE="$BQ_PROJECT_ID.$BQ_DATASET.app_events_$DATE" echo "Migrating $BQ_TABLE" cat migration_script.sql | sed -e "s/SCRIPT_GENERATED_TABLE_NAME/$BQ_TABLE/g" | bq query \ --debug_mode \ --allow_large_results \ --noflatten_results \ --use_legacy_sql=False \ --destination_table analytics_$PROPERTY_ID.events_$DATE \ --batch \ --append_table \ --parameter=firebase_app_id::$FIREBASE_APP_ID \ --parameter=date::$DATE \ --parameter=platform::$PLATFORM \ --project_id=$BQ_PROJECT_ID temp=$(date -I -d "$DATE + 1 day") DATE=$(date -d "$temp" +%Y%m%d) done exit # FIN DU SCRIPT
- Exécutez la commande
- Ouvrez une nouvelle interface système et exécutez la commande
bash migration.sh
.
user_dim
Nom du champ | Type de données | Description |
---|---|---|
user_dim | ENREGISTREMENT | Enregistrement des dimensions utilisateurs. |
user_dim.user_id | CHAÎNE | User ID défini via l'API setUserId. |
user_dim.first_open_timestamp_micros | ENTIER | Heure (en microsecondes) à laquelle l'utilisateur a ouvert l'application pour la première fois. |
user_dim.user_properties | ENREGISTREMENT | Doublon d'un enregistrement des propriétés utilisateur définies via l'API setUserProperty. |
user_dim.user_properties.key | CHAÎNE | Nom de la propriété utilisateur. |
user_dim.user_properties.value | ENREGISTREMENT | Enregistrement des informations sur la propriété utilisateur. |
user_dim.user_properties.value.value | ENREGISTREMENT | Enregistrement de la valeur de la propriété utilisateur. |
user_dim.user_properties.value.value.string_value | CHAÎNE | Valeur de la chaîne de la propriété utilisateur. |
user_dim.user_properties.value.value.int_value | ENTIER | Valeur du nombre entier de la propriété utilisateur. |
user_dim.user_properties.value.value.double_value | FLOAT | Valeur double de la propriété utilisateur. |
user_dim.user_properties.value.set_timestamp_usec | ENTIER | Heure (en microsecondes) à laquelle la propriété utilisateur a été définie pour la dernière fois. |
user_dim.user_properties.value.index | ENTIER | Index (0-24) de la propriété utilisateur. |
user_dim.device_info | ENREGISTREMENT | Enregistrement des informations sur l'appareil. |
user_dim.device_info.device_category | CHAÎNE | Catégorie d'appareil (mobile, tablette, ordinateur). |
user_dim.device_info.mobile_brand_name | CHAÎNE | Marque de l'appareil. |
user_dim.device_info.mobile_model_name | CHAÎNE | Nom du modèle de l'appareil. |
user_dim.device_info.mobile_marketing_name | CHAÎNE | Dénomination commerciale de l'appareil. |
user_dim.device_info.device_model | CHAÎNE | Modèle de l'appareil. |
user_dim.device_info.platform_version | CHAÎNE | Version de l'OS. |
user_dim.device_info.device_id | CHAÎNE | IDFV (seulement si l'IDFA n'est pas disponible). |
user_dim.device_info.resettable_device_id | CHAÎNE | ID/IDFA publicitaire. |
user_dim.device_info.user_default_language | CHAÎNE | Langue de l'OS. |
user_dim.device_info.device_time_zone_offset_seconds | ENTIER | Décalage par rapport à GMT en secondes. |
user_dim.device_info.limited_ad_tracking | BOOLÉEN | Paramètre "Limiter le suivi des annonces" de l'appareil |
user_dim.geo_info | ENREGISTREMENT | Enregistrement des informations géographiques de l'utilisateur. |
user_dim.geo_info.continent | CHAÎNE | Continent à l'origine des rapports sur les événements, en fonction de l'adresse IP. |
user_dim.geo_info.country | CHAÎNE | Pays à l'origine des rapports sur les événements, en fonction de l'adresse IP. |
user_dim.geo_info.region | CHAÎNE | Région à l'origine des rapports sur les événements, en fonction de l'adresse IP. |
user_dim.geo_info.city | CHAÎNE | Ville à l'origine des rapports sur les événements, en fonction de l'adresse IP. |
user_dim.app_info | ENREGISTREMENT | Enregistrement d'informations sur l'application. |
user_dim.app_info.app_version | CHAÎNE | Identifiant versionName de l'application (Android) ou version courte du groupe. |
user_dim.app_info.app_instance_id | CHAÎNE | Identifiant unique pour cette instance de l'application. |
user_dim.app_info.app_store | CHAÎNE | Plate-forme de téléchargement ayant installé cette application. |
user_dim.app_info.app_platform | CHAÎNE | Plate-forme sur laquelle l'application est exécutée. |
user_dim.traffic_source | ENREGISTREMENT | Nom de la source de trafic ayant servi à toucher l'utilisateur.Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
user_dim.traffic_source.user_acquired_campaign | CHAÎNE | Nom de la campagne marketing ayant touché l'utilisateur.Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
user_dim.traffic_source.user_acquired_medium | CHAÎNE | Nom du support (liens commerciaux, recherche naturelle, e-mail, etc.) ayant touché l'utilisateur. Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
user_dim.traffic_source.user_acquired_source | CHAÎNE | Nom du réseau ayant touché l'utilisateur.Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
user_dim.bundle_info | ENREGISTREMENT | Enregistrement des informations concernant le groupe dans lequel ces événements ont été importés. |
user_dim.bundle_info.bundle_sequence_id | ENTIER | Identifiant séquentiel du groupe dans lequel ces événements ont été importés. |
user_dim.ltv_info | ENREGISTREMENT | Enregistrement des informations sur la valeur vie client de l'utilisateur.Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
user_dim.ltv_info.revenue | FLOAT | Valeur vie (chiffre d'affaires) de cet utilisateur.Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
user_dim.ltv_info.currency | CHAÎNE | Valeur vie client (devise) de cet utilisateur.Ce champ n'est pas renseigné dans les tableaux intrajournaliers. |
event_dim
Nom du champ | Type de données | Description |
---|---|---|
event_dim | ENREGISTREMENT | Doublon d'un enregistrement des informations concernant les événements de ce bundle. |
event_dim.date | CHAÎNE | Date d'enregistrement de cet événement (format AAAAMMJJ dans le fuseau horaire enregistré au niveau de votre application). |
event_dim.name | CHAÎNE | Nom de cet événement. |
event_dim.params | ENREGISTREMENT | Doublon d'un enregistrement des paramètres associés à cet événement. |
event_dim.params.key | CHAÎNE | Clé du paramètre de l'événement. |
event_dim.params.value | ENREGISTREMENT | Enregistrement de la valeur du paramètre de l'événement. |
event_dim.params.value.string_value | CHAÎNE | Valeur de la chaîne du paramètre de l'événement. |
event_dim.params.value.int_value | ENTIER | Valeur du nombre entier du paramètre de l'événement. |
event_dim.params.value.double_value | FLOAT | Valeur double du paramètre de l'événement. |
event_dim.timestamp_micros | ENTIER | Heure (en microsecondes, UTC) à laquelle l'événement a été enregistré sur le client. |
event_dim.previous_timestamp_micros | ENTIER | Heure (en microsecondes, UTC) à laquelle l'événement a été précédemment enregistré sur le client. |