Pular para o conteúdo principal

Ingerir dados do Google Ads

info

Beta

Este recurso está em versão Beta. Os administradores do espaço de trabalho podem controlar o acesso a este recurso na página de Pré-visualizações . Veja as prévias do Gerenciador Databricks.

Aprenda como criar um pipeline de ingestão gerenciado para importar dados do Google Ads para o Databricks.

Requisitos​

  • Para criar um pipeline de ingestão, você deve atender aos seguintes requisitos:

    • Seu workspace deve estar habilitado para o Unity Catalog.

    • compute sem servidor (serverless compute) deve estar habilitado para seu workspace. Consulte os requisitos compute sem servidor.

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

      Se o conector suportar a criação pipeline baseada em interface de usuário, um administrador poderá criar a conexão e o pipeline simultaneamente, concluindo os passos desta página. No entanto, se os usuários que criam pipelines utilizarem a criação pipeline baseada em API ou não forem administradores, um administrador deverá primeiro criar a conexão no Catalog Explorer. Consulte Conectar para gerenciar fontes de ingestão.

    • 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 fazer a ingestão de dados do Google Ads, conclua os passos em Criar uma Conexão do Google Ads.

Crie um pipeline de ingestão.​

Esta tab descreve como implantar um pipeline de ingestão usando Declarative Automation Bundles. 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?.

  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_ads_pipeline.yml).
    • Um arquivo de definição de trabalho que controla a frequência de ingestão de dados (por exemplo, resources/google_ads_job.yml).

    Consulte pipeline.ingestion_definition e exemplos.

  3. Implante o pipeline usando a CLI Databricks :

    Bash
    databricks bundle deploy

Exemplos​

A opção manager_account_id não é suportada em pacotes de automação declarativa. Para configurar um ID account de administrador, utilize um Notebook Databricks .

O seguinte arquivo de definição pipeline ingere todas as tabelas atuais e futuras de uma account:

YAML
resources:
pipelines:
pipeline_google_ads:
name: <pipeline-name>
catalog: <destination-catalog>
target: <destination-schema>
ingestion_definition:
connection_name: <connection-name>
objects:
- schema:
source_schema: <account-id>
destination_catalog: <destination-catalog>
destination_schema: <destination-schema>
connector_options:
google_ads_options:
lookback_window_days: <lookback-window-days>
sync_start_date: <sync-start-date>

O seguinte arquivo de definição pipeline seleciona tabelas específicas de uma account para ingestão:

YAML
resources:
pipelines:
pipeline_google_ads:
name: <pipeline-name>
catalog: <destination-catalog>
target: <destination-schema>
ingestion_definition:
connection_name: <connection-name>
objects:
- table:
source_schema: <customer-account-id>
source_table: <table1>
destination_catalog: <destination-catalog>
destination_schema: <destination-schema>
destination_table: <destination-table>
connector_options:
google_ads_options:
lookback_window_days: <lookback-window-days>
sync_start_date: <sync-start-date>
- table:
source_schema: <customer-account-id>
source_table: table2
destination_catalog: <destination-catalog>
destination_schema: <destination-schema>
destination_table: <destination-table>
connector_options:
google_ads_options:
lookback_window_days: <lookback-window-days>
sync_start_date: <sync-start-date>

Segue abaixo um exemplo de arquivo de definição de tarefa:

YAML
resources:
jobs:
google_ads_dab_job:
name: google_ads_dab_job
trigger:
# Run this job every day, exactly one day from the last run
# See https://docs.databricks.com/api/workspace/jobs/create#trigger
periodic:
interval: 1
unit: DAYS
email_notifications:
on_failure:
- <email-address>
tasks:
- task_key: refresh_pipeline
pipeline_task:
pipeline_id: ${resources.pipelines.pipeline_google_ads.id}

Arquivo de definição de tarefas do Declarative Automation Bundles​

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.

YAML
resources:
jobs:
google_ads_dab_job:
name: google_ads_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_google_ads.id}

Relatórios personalizados​

Além das tabelas pré-construídas, é possível definir tabelas de relatório personalizadas. Um relatório personalizado permite que o senhor escolha um recurso do Google Ads e qualquer combinação de campos de recurso, segmentos e métricas. O conector sintetiza a query equivalente do Google Ads Query Language (GAQL), valida-a contra o Google Ads no momento do planejamento do pipeline e ingere o resultado em uma tabela de destino que o senhor nomear.

Um relatório personalizado é declarado em um objeto do tipo tabela cujo source_table está definido como custom_report, com a definição do relatório fornecida em connector_options.google_ads_options.custom_report_options.

Exemplo: um relatório ad_group_ad personalizado

JSON
{
"table": {
"source_schema": "<customer-account-id>",
"source_table": "custom_report",
"destination_catalog": "<destination-catalog>",
"destination_schema": "<destination-schema>",
"destination_table": "my_ad_group_ad_report",
"connector_options": {
"google_ads_options": {
"manager_account_id": "<google-ads-manager-account-id>",
"sync_start_date": "2024-01-01",
"lookback_window_days": 30,
"custom_report_options": {
"resource": "ad_group_ad",
"resource_fields": ["ad_group_ad.ad.id", "ad_group_ad.status"],
"segments": ["segments.date", "segments.device"],
"metrics": ["metrics.impressions", "metrics.clicks", "metrics.cost_micros", "metrics.conversions"]
}
}
}
}
}

destination_table é exigido quando source_table é custom_report.

Para opções de configuração de relatórios personalizados, consulte Opções de configuração de relatório personalizado.

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.

Recursos adicionais​