Pular para o conteúdo principal

Crie um pipeline de ingestão de Meta 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 Meta Ads para o Databricks. Para obter uma lista dos objetos suportados, consulte Objetos suportados.

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.

  • Se você planeja criar uma nova conexão: Você deve ter privilégios CREATE CONNECTION no metastore.

    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.

  • Se você planeja 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 ingerir dados do Meta Ads, você deve concluir os passos em Configurar o Meta Ads como fonte de dados.

Criar o pipeline

Esta tab descreve como implantar um pipeline de ingestão usando Databricks Ativo 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 Databricks ativos?.

  1. Crie um novo pacote usando a CLI do Databricks:

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

  3. Implante o pipeline usando a CLI Databricks :

    Bash
    databricks bundle deploy

Valores a serem modificados

Valor

Descrição

name

Um nome único para o pipeline.

connection_name

O nome da conexão do Unity Catalog que armazena os detalhes de autenticação para Meta Ads.

source_schema

Seu ID account Meta Ads.

source_table

O nome do objeto que você deseja ingerir (por exemplo, ads, campaigns ou ad_insights).

destination_catalog

O nome do catálogo no qual você deseja escrever no Databricks.

destination_schema

O nome do esquema no qual você deseja gravar no Databricks.

destination_table

Opcional. Um nome único para a tabela na qual você deseja gravar dados no Databricks. Caso você não forneça essa informação, o conector usará automaticamente o nome da tabela de origem.

scd_type

O método SCD a ser usado: SCD_TYPE_1 ou SCD_TYPE_2. O default é o tipo 1 SCD . Para mais informações, consulte Habilitar história acompanhamento (SCD tipo 2).

Somente para ad_insights :

Ao ingerir dados de ad_insights, você deve configurar as seguintes definições adicionais em metamarketing_parameters:

Valor

Descrição

level

Nível de granularidade para percepções: account, campaign, adset ou ad. O valor padrão é ad.

start_date

A data de início dos dados de percepções no formato YYYY-MM-DD .

breakdowns

Opcional. Lista de dimensões de decomposição (por exemplo, ["age", "gender", "country"]).

action_breakdowns

Opcional. Lista de dimensões de detalhamento da ação (por exemplo, ["action_type", "action_destination"]).

Exemplos

Ingerir todas as tabelas atuais e futuras de uma account

Segue abaixo um exemplo de arquivo resources/meta_ads_pipeline.yml :

YAML
resources:
pipelines:
pipeline_meta_ads:
name: <pipeline-name>
catalog: <destination-catalog>
target: <destination-schema>
channel: PREVIEW
ingestion_definition:
connection_name: <connection-name>
objects:
- schema:
source_schema: <meta-ads-account-id>
destination_catalog: <destination-catalog>
destination_schema: <destination-schema>
table_configuration:
scd_type: SCD_TYPE_1

Selecione tabelas específicas de uma account para ingestão.

Segue abaixo um exemplo de arquivo resources/meta_ads_pipeline.yml :

YAML
resources:
pipelines:
pipeline_meta_ads:
name: <pipeline-name>
catalog: <destination-catalog>
target: <destination-schema>
channel: PREVIEW
ingestion_definition:
connection_name: <connection-name>
objects:
- table:
source_schema: <meta-ads-account-id>
source_table: campaigns
destination_catalog: <destination-catalog>
destination_schema: <destination-schema>
table_configuration:
scd_type: SCD_TYPE_1
- table:
source_schema: <meta-ads-account-id>
source_table: ads
destination_catalog: <destination-catalog>
destination_schema: <destination-schema>
table_configuration:
scd_type: SCD_TYPE_1

Ingerir ad_insights com metamarketing_parameters

Segue abaixo um exemplo de arquivo resources/meta_ads_pipeline.yml :

YAML
resources:
pipelines:
pipeline_meta_ads:
name: <pipeline-name>
catalog: <destination-catalog>
target: <destination-schema>
channel: PREVIEW
ingestion_definition:
connection_name: <connection-name>
objects:
- table:
source_schema: <meta-ads-account-id>
source_table: ad_insights
destination_catalog: <destination-catalog>
destination_schema: <destination-schema>
table_configuration:
scd_type: SCD_TYPE_1
metamarketing_parameters:
level: ad
start_date: '2024-01-01'
breakdowns:
- age
- gender
action_breakdowns:
- action_type

Databricks ativo Bundles arquivo de fluxo de trabalho

Segue abaixo um exemplo de arquivo resources/meta_ads_job.yml :

YAML
resources:
jobs:
meta_ads_dab_job:
name: meta_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: <pipeline-id>

Padrões comuns

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

Recursos adicionais