Ingerir dados do Google analítica 4
Aprenda como importar dados do Google Analytics 4 para o Databricks usando LakeFlow Connect e o Google BigQuery.
Requisitos
-
Para criar um pipeline de ingestão, você deve primeiro atender aos seguintes requisitos:
-
Seu workspace deve estar habilitado para o Unity Catalog.
-
O compute sem servidor deve estar habilitado para o seu workspace. Consulte os requisitos do compute sem servidor.
-
Se você planeja criar uma nova conexão: Você deve ter privilégios
CREATE CONNECTIONno metastore. Consulte a seção sobre privilégios de gerenciamento no Unity Catalog.Se o conector oferecer suporte à criação pipeline baseada em interface de usuário, um administrador poderá criar a conexão e o pipeline ao mesmo tempo, concluindo os passos nesta página. No entanto, se os usuários que criam o pipeline usarem a criação pipeline baseada em API ou não forem usuários administradores, um administrador deverá primeiro criar a conexão no Catalog Explorer. Veja Conectar às fontes de ingestão de gerenciar.
-
Se você planeja usar uma conexão existente: você deve ter privilégios
USE CONNECTIONouALL PRIVILEGESno objeto de conexão. -
Você deve ter privilégios
USE CATALOGno catálogo de destino. -
Você deve ter privilégios
USE SCHEMAeCREATE TABLEem um esquema existente ou privilégiosCREATE SCHEMAno catálogo de destino.
-
-
Para ingerir a partir do GA4 usando BigQuery, consulte Configurar o Google analítica 4 e o Google BigQuery para ingerir Databricks.
Configurar a rede
Se o senhor tiver o controle de saída serverless ativado, coloque na lista de permissões os seguintes URLs. Caso contrário, pule essa etapa. Consulte gerenciar políticas de rede para serverless controle de saída.
bigquery.googleapis.comoauth2.googleapis.combigquerystorage.googleapis.comgoogleapis.com
Crie um pipeline de ingestão.
Cada tabela ingerida é gravada em uma tabela de transmissão.
Beta
Você pode filtrar linhas durante a ingestão para melhorar o desempenho e reduzir a duplicação de dados. Consulte Selecionar linhas para ingestão.
- Databricks UI
- Databricks Asset Bundles
- Databricks notebook
-
Na barra lateral do site Databricks workspace, clique em ingestão de dados .
-
Na página Add data (Adicionar dados) , em Databricks connectors (conectores ), clique em Google analítica 4 .
-
Na página Conexão do assistente de ingestão, selecione a conexão que armazena suas credenciais de acesso do Google Analytics 4. Se você tiver o privilégio
CREATE CONNECTIONno metastore, poderá clicar.Crie uma conexão para criar uma nova conexão com os detalhes de autenticação em Configurar o Google Analytics 4 e o Google BigQuery para ingestão Databricks.
A interface do usuário do Databricks suporta apenas o OAuth para conexões GA4. No entanto, o senhor pode usar a autenticação básica ao criar a conexão usando as APIs da Databricks. Consulte Google analítica dados brutos.
-
Clique em Avançar .
-
Na página de configuração de ingestão , insira um nome exclusivo para o pipeline.
-
Selecione um catálogo e um esquema para gravar logs de eventos. Se você tiver privilégios
USE CATALOGeCREATE SCHEMAno catálogo, poderá clicar.Para criar um novo esquema, clique em "Criar esquema" no menu suspenso.
-
Clique em Create pipeline (Criar pipeline) e continue .
-
Na página Origem , selecione as tabelas que deseja importar.
-
Clique em Salvar e continuar .
-
Na página Destino , selecione um catálogo e um esquema para carregar os dados. Se você tiver privilégios
USE CATALOGeCREATE SCHEMAno catálogo, poderá clicar.Para criar um novo esquema, clique em "Criar esquema" no menu suspenso.
-
Clique em Salvar e continuar .
-
(Opcional) Na página de programação e notificações , clique em
Criar programar . Defina a frequência de refresh das tabelas de destino.
-
(Opcional) Clique
Adicione uma notificação para configurar notificações email para operações pipeline bem-sucedidas ou com falha e, em seguida, clique em Salvar e execute pipeline .
Use pacotes de automação declarativa para gerenciar o pipeline analítico 4 do Google como código. Os pacotes podem conter definições YAML de Job e tarefa, são gerenciados usando a CLI Databricks e podem ser compartilhados e executados em diferentes espaços de trabalho de destino (como desenvolvimento, teste e produção). Para mais informações, consulte O que são pacotes de automação declarativa?.
-
Crie um novo pacote usando a CLI do Databricks:
Bashdatabricks bundle init -
Adicione dois novos arquivos de recursos ao pacote:
- Um arquivo de definição de pipeline (por exemplo,
resources/ga4_pipeline.yml). Consulte pipeline.ingestion_definition e exemplos. - Um arquivo de definição de trabalho que controla a frequência de ingestão de dados (por exemplo,
resources/ga4_job.yml).
- Um arquivo de definição de pipeline (por exemplo,
-
Implante o pipeline usando a CLI Databricks :
Bashdatabricks bundle deploy
- Importe o seguinte Notebook para o seu workspace Databricks :
-
Deixe a célula um como está.
-
Modifique a célula três com os detalhes da configuração do seu pipeline. Consulte pipeline.ingestion_definition e exemplos.
-
Clique em Executar tudo .
Exemplos
Utilize esses exemplos para configurar seu pipeline.
Ingerir uma única tabela de origem
- Databricks Asset Bundles
- Databricks notebook
O seguinte arquivo de definição de pipeline ingere uma única tabela de origem:
variables:
dest_catalog:
default: main
dest_schema:
default: ingest_destination_schema
# The main pipeline for ga4_dab
resources:
pipelines:
pipeline_ga4:
name: ga4_pipeline
catalog: ${var.dest_catalog}
schema: ${var.dest_schema}
ingestion_definition:
connection_name: <ga4-connection>
objects:
# An array of objects to ingest from GA4. This example ingests the events table from the analytics_XXXXXXXXX dataset.
- table:
source_schema: analytics_XXXXXXXXX
source_table: events
destination_catalog: ${var.dest_catalog}
destination_schema: ${var.dest_schema}
A seguinte especificação de pipeline ingere uma única tabela de origem:
pipeline_spec = """
{
"name": "<pipeline-name>",
"ingestion_definition": {
"connection_name": "<ga4-connection>",
"objects": [
{
"table": {
"source_schema": "analytics_XXXXXXXXX",
"source_table": "events",
"destination_catalog": "main",
"destination_schema": "ingest_destination_schema"
}
}
]
}
}
"""
create_pipeline(pipeline_spec)
Ingerir várias tabelas de origem
- Databricks Asset Bundles
- Databricks notebook
O seguinte arquivo de definição de pipeline ingere várias tabelas de origem:
variables:
dest_catalog:
default: main
dest_schema:
default: ingest_destination_schema
# The main pipeline for ga4_dab
resources:
pipelines:
pipeline_ga4:
name: ga4_pipeline
catalog: ${var.dest_catalog}
schema: ${var.dest_schema}
ingestion_definition:
connection_name: <ga4-connection>
objects:
# An array of objects to ingest from GA4. This example ingests the events and events_intraday tables.
- table:
source_schema: analytics_XXXXXXXXX
source_table: events
destination_catalog: ${var.dest_catalog}
destination_schema: ${var.dest_schema}
- table:
source_schema: analytics_XXXXXXXXX
source_table: events_intraday
destination_catalog: ${var.dest_catalog}
destination_schema: ${var.dest_schema}
A seguinte especificação de pipeline ingere várias tabelas de origem:
pipeline_spec = """
{
"name": "<pipeline-name>",
"ingestion_definition": {
"connection_name": "<ga4-connection>",
"objects": [
{
"table": {
"source_schema": "analytics_XXXXXXXXX",
"source_table": "events",
"destination_catalog": "main",
"destination_schema": "ingest_destination_schema"
}
},
{
"table": {
"source_schema": "analytics_XXXXXXXXX",
"source_table": "events_intraday",
"destination_catalog": "main",
"destination_schema": "ingest_destination_schema"
}
}
]
}
}
"""
create_pipeline(pipeline_spec)
Arquivo de definição de trabalho de pacote
Segue abaixo um exemplo de arquivo de definição de tarefa para uso com pacotes de automação declarativa. A execução do trabalho ocorre todos os dias, exatamente um dia após a última execução.
resources:
jobs:
ga4_dab_job:
name: ga4_dab_job
trigger:
periodic:
interval: 1
unit: DAYS
email_notifications:
on_failure:
- <email-address>
tasks:
- task_key: refresh_pipeline
pipeline_task:
pipeline_id: ${resources.pipelines.pipeline_ga4.id}
Padrões comuns
Para configurações avançadas pipeline , consulte Padrões comuns para gerenciar pipeline de ingestão.
Próximos passos
começar, programar e definir alerta em seu pipeline. Consulte Tarefa comum de manutenção pipeline.