Lecture à partir d’entités Google Analytics 4
Prérequis
-
Un objet Google Analytics 4 à partir duquel vous souhaitez lire. Reportez-vous au tableau des entités prises en charge ci-dessous pour vérifier les entités disponibles.
Entités prises en charge
| Entité | Peut être filtré | Limit prise en charge | Order by prise en charge | Select prise en charge* | Partitionnement pris en charge |
|---|---|---|---|---|---|
| Real-Time Report | Oui | Oui | Oui | Oui | Non |
| Core Report | Oui | Oui | Oui | Oui | Oui |
Exemple
googleAnalytics4_read = glueContext.create_dynamic_frame.from_options( connection_type="GoogleAnalytics4", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "entityName", "API_VERSION": "v1beta" }
Détails des entités et des champs Google Analytics 4
| Entité | Champ | Type de données | Opérateurs pris en charge |
|---|---|---|---|
| Core Report | Dynamic Fields | ||
| Core Report | Champs de dimensions | Chaîne | LIKE, = |
| Core Report | Champs de dimensions | Date | LIKE, = |
| Core Report | Champs de métriques | Chaîne | >, <, >=, <=, = BETWEEN |
| Core Report | Champs de dimensions et de métriques personnalisés | Chaîne | NA |
| Real-Time Report | appVersion | Chaîne | LIKE, = |
| Real-Time Report | audienceId | Chaîne | LIKE, = |
| Real-Time Report | audienceName | Chaîne | LIKE, = |
| Real-Time Report | city | Chaîne | LIKE, = |
| Real-Time Report | cityId | Chaîne | LIKE, = |
| Real-Time Report | country | Chaîne | LIKE, = |
| Real-Time Report | countryId | Chaîne | LIKE, = |
| Real-Time Report | deviceCategory | Chaîne | LIKE, = |
| Real-Time Report | eventName | Chaîne | LIKE, = |
| Real-Time Report | minutesAgo | Chaîne | LIKE, = |
| Real-Time Report | platform | Chaîne | LIKE, = |
| Real-Time Report | streamId | Chaîne | LIKE, = |
| Real-Time Report | streamName | Chaîne | LIKE, = |
| Real-Time Report | unifiedScreenName | Chaîne | LIKE, = |
| Real-Time Report | activeUsers | Chaîne | >, <, >=, <=, = BETWEEN |
| Real-Time Report | conversions | Chaîne | >, <, >=, <=, = BETWEEN |
| Real-Time Report | eventCount | Chaîne | >, <, >=, <=, = BETWEEN |
| Real-Time Report | screenPageViews | Chaîne | >, <, >=, <=, = BETWEEN |
Requêtes de partitionnement
-
Partition basée sur un filtre
Les options Spark supplémentaires
PARTITION_FIELD,LOWER_BOUND,UPPER_BOUNDetNUM_PARTITIONSpeuvent être indiquées si vous souhaitez utiliser la simultanéité dans Spark. Avec ces paramètres, la requête d’origine serait divisée enNUM_PARTITIONSnombres de sous-requêtes pouvant être exécutées simultanément par les tâches Spark.-
PARTITION_FIELD: le nom du champ à utiliser pour partitionner la requête. -
LOWER_BOUND: une valeur limite inférieure inclusive du champ de partition choisi.Pour le champ Date, nous acceptons le format de date Spark utilisé dans les requêtes SQL Spark. Exemples de valeurs valides :
"2024-02-06". -
UPPER_BOUND: une valeur limite supérieure exclusive du champ de partition choisi. -
NUM_PARTITIONS: nombre de partitions.
Exemple
googleAnalytics4_read = glueContext.create_dynamic_frame.from_options( connection_type="GoogleAnalytics4", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "entityName", "API_VERSION": "v1beta", "PARTITION_FIELD": "date" "LOWER_BOUND": "2022-01-01" "UPPER_BOUND": "2024-01-02" "NUM_PARTITIONS": "10" } -
-
Partition basée sur des enregistrements
Les options Spark supplémentaires
NUM_PARTITIONSpeuvent être indiquées si vous souhaitez utiliser la simultanéité dans Spark. Avec ces paramètres, la requête d’origine serait divisée enNUM_PARTITIONSnombres de sous-requêtes pouvant être exécutées simultanément par les tâches Spark.-
NUM_PARTITIONS: nombre de partitions.
Exemple
googleAnalytics4_read = glueContext.create_dynamic_frame.from_options( connection_type="GoogleAnalytics4", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "entityName", "API_VERSION": "v1beta", "NUM_PARTITIONS": "10" } -