Lectura de entidades de Google Analytics 4 - AWS Glue

Lectura de entidades de Google Analytics 4

Requisitos previos 

  • Un objeto de Google Analytics 4 del que te gustaría leer. Consulta la tabla de entidades compatibles que aparece a continuación para comprobar las entidades disponibles.

Entidades compatibles

Entidad Se puede filtrar Límite de soportes Soporta Order By Soporta Select * Soporta particionamiento
Informe en tiempo real No
Informe básico

Ejemplo

googleAnalytics4_read = glueContext.create_dynamic_frame.from_options( connection_type="GoogleAnalytics4", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "entityName", "API_VERSION": "v1beta" }

Detalles de entidades y campos de Google Analytics 4

Entidad Campo Tipo de datos Operadores admitidos
Informe básico Campos dinámicos
Informe básico Campos de dimensiones Cadena LIKE, =
Informe básico Campos de dimensiones Date LIKE, =
Informe básico Campos métricos Cadena >, <, >=, <=, = BETWEEN
Informe básico Dimensiones personalizadas y campos métricos personalizados Cadena N/D
Informe en tiempo real appVersion Cadena LIKE, =
Informe en tiempo real audienceId Cadena LIKE, =
Informe en tiempo real audienceName Cadena LIKE, =
Informe en tiempo real ciudad Cadena LIKE, =
Informe en tiempo real cityId Cadena LIKE, =
Informe en tiempo real país Cadena LIKE, =
Informe en tiempo real countryId Cadena LIKE, =
Informe en tiempo real deviceCategory Cadena LIKE, =
Informe en tiempo real eventName Cadena LIKE, =
Informe en tiempo real minutesAgo Cadena LIKE, =
Informe en tiempo real platform Cadena LIKE, =
Informe en tiempo real streamId Cadena LIKE, =
Informe en tiempo real streamName Cadena LIKE, =
Informe en tiempo real unifiedScreenName Cadena LIKE, =
Informe en tiempo real activeUsers Cadena >, <, >=, <=, = BETWEEN
Informe en tiempo real conversiones Cadena >, <, >=, <=, = BETWEEN
Informe en tiempo real eventCount Cadena >, <, >=, <=, = BETWEEN
Informe en tiempo real screenPageViews Cadena >, <, >=, <=, = BETWEEN

Consultas de particionamiento

  1. Partición basada en filtros

    Se NUM_PARTITIONS pueden proporcionar opciones de Spark adicionales PARTITION_FIELD LOWER_BOUNDUPPER_BOUND,,, si quieres utilizar la simultaneidad en Spark. Con estos parámetros, la consulta original se dividiría en un NUM_PARTITIONS número de subconsultas que Spark Tasks puede ejecutar simultáneamente.

    • PARTITION_FIELD: el nombre del campo que se utilizará para particionar la consulta.

    • LOWER_BOUND: un valor límite inferior inclusivo del campo de partición elegido.

      Para la fecha, aceptamos el formato de fecha de Spark utilizado en SQL las consultas de Spark. Ejemplo de valores válidos:"2024-02-06".

    • UPPER_BOUND: un valor límite superior exclusivo del campo de partición elegido.

    • NUM_PARTITIONS: número de particiones.

    Ejemplo

    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" }
  2. Partición basada en registros

    Se NUM_PARTITIONS pueden proporcionar opciones de Spark adicionales si quieres utilizar la simultaneidad en Spark. Con estos parámetros, la consulta original se dividiría en un NUM_PARTITIONS número de subconsultas que Spark Tasks puede ejecutar simultáneamente.

    • NUM_PARTITIONS: número de particiones.

    Ejemplo

    googleAnalytics4_read = glueContext.create_dynamic_frame.from_options( connection_type="GoogleAnalytics4", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "entityName", "API_VERSION": "v1beta", "NUM_PARTITIONS": "10" }