Pular para o conteúdo principal

Ingerir dados agregados do Google analítica

info

Beta

Esse recurso está em Beta. Para usá-lo, um administrador de Workspace deve ativar o Lakeflow Connect para Google analítica Aggregated na página Pré-visualizações . Consulte Gerenciar prévias do Databricks.

Crie um pipeline gerenciado do Lakeflow Connect que ingere dados de relatórios agregados do Google Analítica 4 (GA4) em tabelas do Unity Catalog. Use Pacotes de Automação Declarativa ou um notebook Databricks.

Requisitos​

  • Para criar um pipeline de ingestão, primeiro atenda aos seguintes requisitos:

    • Seu workspace deve estar habilitado para o Unity Catalog.

    • O compute serverless deve estar habilitado para seu workspace. Consulte Requisitos de compute serverless.

    • Para criar uma nova conexão, é preciso ter privilégios CREATE CONNECTION no metastore. Consulte Gerenciar privilégios no Unity Catalog.

      Se o conector oferecer suporte à criação de pipeline baseada na interface do usuário, um administrador poderá criar a conexão e o pipeline ao mesmo tempo, concluindo os passos desta página. No entanto, se os usuários que criam pipelines usarem a criação de pipeline baseada em API ou forem usuários não administradores, um administrador deverá primeiro criar a conexão no Catalog Explorer. Consulte Conectar-se a fontes de ingestão gerenciadas.

    • Para usar uma conexão existente, você deve ter privilégios USE CONNECTION ou ALL PRIVILEGES no objeto de conexão.

    • Você deve ter privilégios USE CATALOG no catálogo de destino.

    • Você deve ter privilégios USE SCHEMA e CREATE TABLE em um esquema existente ou privilégios CREATE SCHEMA no catálogo de destino.

  • Para ingestão do Google analítica, configure primeiro a autenticação do Databricks e crie uma conexão. Consulte Configurar autenticação para o Google analítica e Criar uma conexão agregada do Google analítica.

Opções de conector​

Para obter as opções que o conector do Google Analytics Aggregated aceita, seu escopo e as tabelas às quais eles se aplicam, consulte Opções do conector. Defina opções no escopo do pipeline em source_configurations e opções no escopo da tabela no objeto individual. Consulte Exemplos para obter informações sobre o uso.

Criar um pipeline de ingestão​

Para obter a lista de tabelas de origem suportadas, consulte Tabelas de origem suportadas.

Use os Pacotes de Automação Declarativa para gerenciar pipelines do Google analítica Aggregated como código. Os pacotes podem conter definições YAML de Jobs e tarefas, são gerenciados usando a CLI do Databricks e podem ser compartilhados e ter execução em diferentes Workspace de destino (como desenvolvimento, staging e produção). Consulte O que são os Pacotes de Automação Declarativa?.

  1. Crie um pacote usando a CLI do Databricks:

    Bash
    databricks bundle init
  2. Adicione dois novos arquivos de recursos ao pacote:

    • Um arquivo de definição de pipeline (por exemplo, resources/google_analytics_aggregated_pipeline.yml). Veja pipeline.ingestion_definition e Exemplos.
    • Um arquivo de definição de job que controla a frequência de ingestão de dados (por exemplo, resources/google_analytics_aggregated_job.yml).
  3. Implantar o pipeline usando a CLI do Databricks:

    Bash
    databricks bundle deploy

Exemplos​

O conector do Google analítica Aggregated disponibiliza suas tabelas de origem no esquema de origem default. Para obter a lista de tabelas, consulte Tabelas de origem suportadas.

Para obter detalhes sobre o esquema, consulte Esquemas da tabela de destino.

Ingerir uma tabela de relatório pré-construída​

O exemplo a seguir ingere a tabela traffic_acquisition_session_source_medium_report para duas propriedades do GA4.

YAML
resources:
pipelines:
google_analytics_aggregated_pipeline:
name: google_analytics_aggregated_pipeline
catalog: 'main'
target: 'google_analytics_aggregated_data'
ingestion_definition:
connection_name: google_analytics_aggregated_connection
source_configurations:
- api_source_connector_config:
configs:
start_date: '<start-date>'
objects:
- table:
source_schema: 'default'
source_table: 'traffic_acquisition_session_source_medium_report'
destination_catalog: 'main'
destination_schema: 'google_analytics_aggregated_data'
destination_table: 'traffic_acquisition_session_source_medium_report'
connector_options:
api_source_connector_options:
options:
property_ids: '["<property-id-1>", "<property-id-2>"]'
lookback_window_in_days: '<lookback-days>'

Ingerir um relatório personalizado​

O exemplo a seguir ingere um relatório personalizado que agrega sessões e usuários por país e categoria de dispositivo para cada semana do GA4. Para ingerir mais de um relatório personalizado no mesmo pipeline, adicione um objeto custom_report para cada relatório, cada um com um destination_table diferente. Para obter as opções, consulte Relatórios personalizados.

YAML
resources:
pipelines:
google_analytics_aggregated_pipeline:
name: google_analytics_aggregated_pipeline
catalog: 'main'
target: 'google_analytics_aggregated_data'
ingestion_definition:
connection_name: google_analytics_aggregated_connection
source_configurations:
- api_source_connector_config:
configs:
start_date: '<start-date>'
objects:
- table:
source_schema: 'default'
source_table: 'custom_report'
destination_catalog: 'main'
destination_schema: 'google_analytics_aggregated_data'
destination_table: 'weekly_sessions_by_country_and_device'
connector_options:
api_source_connector_options:
options:
property_id: '<property-id>'
dimensions: '["country", "deviceCategory"]'
metrics: '["sessions", "totalUsers"]'
cursor_dimension: 'yearWeek'

Ingerir tabelas de relatório pré-construídas e personalizadas juntas​

O exemplo a seguir combina uma tabela de relatório pré-construída e um relatório personalizado mensal em um único pipeline. Cada objeto define apenas as opções de conector que sua tabela aceita.

YAML
resources:
pipelines:
google_analytics_aggregated_pipeline:
name: google_analytics_aggregated_pipeline
catalog: 'main'
target: 'google_analytics_aggregated_data'
ingestion_definition:
connection_name: google_analytics_aggregated_connection
source_configurations:
- api_source_connector_config:
configs:
start_date: '<start-date>'
objects:
- table:
source_schema: 'default'
source_table: 'website_overview'
destination_catalog: 'main'
destination_schema: 'google_analytics_aggregated_data'
destination_table: 'website_overview'
connector_options:
api_source_connector_options:
options:
property_ids: '["<property-id>"]'
- table:
source_schema: 'default'
source_table: 'custom_report'
destination_catalog: 'main'
destination_schema: 'google_analytics_aggregated_data'
destination_table: 'monthly_revenue_by_channel'
connector_options:
api_source_connector_options:
options:
property_id: '<property-id>'
dimensions: '["sessionDefaultChannelGroup"]'
metrics: '["totalRevenue", "transactions"]'
cursor_dimension: 'yearMonth'

Arquivo de definição de job de Pacotes de Automação Declarativa​

O exemplo a seguir é um arquivo de definição de job para uso com os Pacotes de Automação Declarativa. O Job é execução diariamente.

YAML
resources:
jobs:
google_analytics_aggregated_job:
name: google_analytics_aggregated_job
schedule:
quartz_cron_expression: '0 0 0 * * ?'
timezone_id: 'UTC'
tasks:
- task_key: google_analytics_aggregated_ingestion
pipeline_task:
pipeline_id: ${resources.pipelines.google_analytics_aggregated_pipeline.id}

Padrões comuns​

Para configurações avançadas de pipeline, consulte Padrões comuns para pipelines de ingestão gerenciados.

Os passos seguintes​

Comece, programe e configure alertas em seu pipeline. Consulte Tarefas comuns de manutenção de pipeline.

Recursos adicionais​