Integração com a Meta
Esta página descreve as configurações necessárias para importar dados da Meta (anúncios do Facebook e Instagram) como origem de dados da carga de trabalho de marketing da Data Foundation do Cortex Framework.
A Meta é uma empresa tecnológica proprietária de várias plataformas online populares. O Cortex Framework integra dados dos anúncios do Instagram e Facebook para os analisar, combiná-los com outras origens de dados e usar a IA para obter estatísticas mais detalhadas e otimizar a sua estratégia de marketing.
O diagrama seguinte descreve como os dados de marketing da Meta estão disponíveis através da carga de trabalho de marketing da base de dados do Cortex Framework:
Ficheiro de configuração
O ficheiro config.json
configura as definições necessárias para estabelecer ligação a origens de dados para transferir dados de várias cargas de trabalho. Este ficheiro contém os seguintes parâmetros para o Meta:
"marketing": {
"deployMeta": true,
"Meta": {
"deployCDC": true,
"datasets": {
"cdc": "",
"raw": "",
"reporting": "REPORTING_Meta"
}
}
}
A tabela seguinte descreve o valor de cada parâmetro de marketing:
Parâmetro | Significado | Valor predefinido | Descrição |
marketing.deployMeta
|
Implemente o Meta | true
|
Execute a implementação para a origem de dados da Meta. |
marketing.Meta.deployCDC
|
Implemente scripts de CDC para a Meta | true
|
Gere scripts de processamento de CDC da Meta para executar como DAGs no Cloud Composer. |
marketing.Meta.datasets.cdc
|
Conjunto de dados de CDC para a Meta | Conjunto de dados de CDC para a Meta. | |
marketing.Meta.datasets.raw
|
Conjunto de dados não processados para a Meta | Conjunto de dados não processados para a Meta. | |
marketing.Meta.datasets.reporting
|
Conjunto de dados de relatórios para a Meta | "REPORTING_Meta"
|
Conjunto de dados de relatórios para a Meta. |
Modelo de dados
Esta secção descreve o modelo de dados da Meta através do diagrama de relação entre entidades (ERD).
Visualizações de base
Estes são os objetos azuis no DER e são vistas em tabelas de CDC com transformações mínimas para descompactar estruturas de dados complexas. Veja guiões em
src/marketing/src/Meta/src/reporting/ddls
.
Visualizações de propriedade de relatórios
Estes são os objetos verdes no DER e são vistas de relatórios que contêm métricas agregadas. Veja guiões em
src/marketing/src/Meta/src/reporting/ddls
.
Ligação à API
Os modelos de carregamento no Cortex Framework para Meta usam a API Meta Marketing para obter atributos e métricas de relatórios. Os modelos atuais usam a versão v21.0.
A Meta impõe um limite de velocidade dinâmico quando consulta a API Marketing. Quando o limite de taxa é atingido, os DAGs de carregamento de origem para dados não processados podem não ser concluídos com êxito. Nestes casos, pode ver mensagens de erro relevantes no registo e a execução seguinte dos DAGs carregaria retroativamente os dados em falta.
A API Meta Marketing tem dois níveis de acesso: básico e padrão. O nível Standard oferece um limite muito mais elevado e é recomendado se planear usar a carregamento de dados de origem para dados não processados extensivamente. Para mais detalhes sobre estes limites e como alcançar um nível de acesso superior, consulte a documentação da Meta.
Se tiver acesso ao nível Standard, pode diminuir o valor da
next_request_delay_sec
definição em src/Meta/src/raw/pipelines/config.ini
para tempos de carregamento mais rápidos.
Acesso à API e token de acesso
Os passos seguintes são necessários no Meta Business Manager e na consola do programador para transferir com êxito dados do Meta para o Cortex Framework.
- Identifique uma app a usar. Pode criar uma nova app
associada à conta empresarial. Certifique-se de que a sua app é do tipo
Business
. - Configurar autorizações da app. Tem de ter a função de administrador atribuída à app para poder criar tokens com a mesma. Consulte a documentação sobre as funções da app. Certifique-se de que atribui recursos (contas) relevantes à sua app.
Crie um token de acesso. Os tokens de acesso são necessários para aceder à API Meta Marketing e estão sempre associados a uma app e a um utilizador. Pode criar o token com um utilizador do sistema ou com o seu próprio início de sessão.
- Crie um utilizador do sistema administrador.
- Gere um token. Certifique-se de que anota os tokens assim que são gerados, uma vez que não são recuperáveis depois de sair da página.
- Conceda as autorizações
ads_read
ebusiness_management
ao seu token para aceder aos objetos suportados.
Siga a documentação do Cloud Composer para ativar o Secret Manager no Cloud Composer. Em seguida, crie um segredo com o nome
cortex_meta_access_token
e armazene o token que gerou no passo anterior como conteúdo.
Atualidade e atraso dos dados
Regra geral, a atualização dos dados das origens de dados do Cortex Framework é limitada pelo que a ligação a montante permite, bem como pela frequência de execução do DAG. Ajuste a frequência de execução do DAG para se alinhar com a frequência a montante, as restrições de recursos e as necessidades da sua empresa.
Com a API Meta Marketing, a maioria dos dados (exceto conversões) está disponível quase em tempo real, embora possam ser ajustados até 28 dias após o evento.
Autorizações de ligações do Cloud Composer
Crie as seguintes associações no Cloud Composer. Veja mais detalhes na documentação sobre a gestão de associações do Airflow.
Nome da associação | Purpose |
meta_raw_dataflow
|
Para a API Meta Marketing > conjunto de dados não processados do BigQuery |
meta_cdc_bq
|
Para o conjunto de dados não processados > Transferência do conjunto de dados de CDC |
meta_reporting_bq
|
Para o conjunto de dados do CDC > Transferência do conjunto de dados de relatórios |
Autorizações da conta de serviço do Cloud Composer
Conceda autorizações do Dataflow à conta de serviço usada no
Cloud Composer (conforme configurado na associação meta_raw_dataflow
).
Consulte as instruções na documentação do Dataflow. A conta de serviço também requer a autorização de Secret Manager Secret Accessor
. Consulte os detalhes
na documentação de controlo de acesso.
Parâmetros do pedido
O diretório src/Meta/config/request_parameters
contém um ficheiro de especificação de pedido de API para cada entidade extraída da API Meta Marketing. Cada ficheiro de pedido contém uma lista de campos a obter da API Meta Marketing, um campo por linha. Veja mais informações na referência da API Meta Marketing.
Definições de carregamento
Controle os pipelines de dados Source to Raw
e Raw to CDC
através das definições no ficheiro src/Meta/config/ingestion_settings.yaml
.
Esta secção descreve os parâmetros de cada pipeline de dados.
Origem para tabelas não processadas
Esta secção tem entradas que controlam as entidades obtidas pelas APIs e como. Cada entrada corresponde a uma entidade da API Meta Marketing. Com base nesta configuração, a estrutura Cortex cria DAGs do Airflow que executam pipelines do Dataflow para obter dados através das APIs Meta Marketing.
O ficheiro src/Meta/src/raw/pipelines/config.ini
controla alguns comportamentos do DAG do Cloud Composer e a forma como as APIs Meta Marketing são consumidas.
Encontre descrições para cada parâmetro no ficheiro.
Os seguintes parâmetros controlam as definições de Source to Raw
para cada entrada:
Parâmetro | Descrição |
base_table
|
Tabela no conjunto de dados não processados onde os dados obtidos são armazenados (por exemplo, customer ).
|
load_frequency
|
Com que frequência um DAG para esta é executado para obter dados do Meta. Para mais informações sobre os valores possíveis, consulte a documentação do Airflow. |
object_endpoint
|
Caminho do ponto final da API (por exemplo,
campaigns para o ponto final /{account_id}/campaigns ).
|
entity_type
|
Tipo de tabela (deve ser um dos seguintes:
fact , dimension ou addaccount) .
|
object_id_column
|
Colunas (separadas por vírgulas) que
formam um registo único para esta tabela. Só é necessário quando entity_type é fact .
|
breakdowns
|
Opcional: colunas de discriminação
(separadas por vírgula) para os pontos finais de estatísticas. Só aplicável
quando entity_type é fact .
|
action_breakdowns
|
Opcional: colunas de discriminação de ações
(separadas por vírgula) para os pontos finais de estatísticas. Só aplicável
quando entity_type é fact .
|
partition_details
|
Opcional: se quiser que esta tabela seja particionada para ter em consideração o desempenho. Para mais informações, consulte o artigo Partição de tabelas. |
cluster_details
|
Opcional: se quiser que esta tabela seja agrupada para ter em conta o desempenho. Para mais informações, consulte o artigo Definições de cluster. |
Tabelas de dados não processados para tabelas do CDC
Esta secção descreve as entradas que controlam a forma como os dados são movidos das tabelas não processadas para as tabelas de CDC. Cada entrada corresponde a uma tabela não processada (que, por sua vez, corresponde à entidade da API Meta, conforme mencionado).
Os seguintes parâmetros controlam as definições de Raw to CDC
para cada entrada:
Parâmetro | Descrição |
base_table
|
Tabela na qual os dados não processados foram replicados. Uma tabela com o mesmo nome no conjunto de dados de CDC armazena os dados não processados após a transformação de CDC (por exemplo, campaign_insights ).
|
row_identifiers
|
Colunas (separadas por vírgulas) que formam um registo único para esta tabela. |
load_frequency
|
A frequência com que um DAG para esta entidade é executado para preencher a tabela de CDC. Para mais informações sobre os valores possíveis, consulte a documentação do Airflow. |
partition_details
|
Opcional: se quiser que esta tabela seja particionada para ter em consideração o desempenho. Para mais informações, consulte o artigo Partição de tabelas. |
cluster_details
|
Opcional: se quiser que esta tabela seja agrupada para considerações de desempenho. Para mais informações, consulte o artigo Definições de cluster. |
Esquema da tabela de CDC
Para a Meta, todos os campos são armazenados no formato de string na camada não processada. Na camada CDC, os tipos primitivos são convertidos em tipos de dados empresariais relevantes e todos os tipos complexos são armazenados no formato JSON do BigQuery.
Para ativar esta conversão, o diretório src/Meta/config/table_schema
contém um ficheiro de esquema para cada entidade especificada na secção raw_to_cdc_tables
que explica como traduzir corretamente cada tabela não processada do BigQuery numa tabela de CDC.
Cada ficheiro de esquema contém três colunas:
SourceField
: nome do campo da tabela não processada para esta entidade.TargetField
: nome da coluna na tabela cdc para esta entidade.DataType
: tipo de dados de cada campo da tabela de CDC.
Definições de relatórios
Pode configurar e controlar a forma como o Cortex gera dados para a camada de relatórios final da Meta através do ficheiro de definições de relatórios (src/Meta/config/reporting_settings.yaml
). Este ficheiro controla a forma como os objetos do BigQuery da camada de relatórios (tabelas, vistas, funções ou procedimentos armazenados) são gerados.
Para mais informações, consulte o artigo Personalizar o ficheiro de definições de relatórios.
O que se segue?
- Para mais informações sobre outras origens de dados e cargas de trabalho, consulte o artigo Origens de dados e cargas de trabalho.
- Para mais informações sobre os passos de implementação em ambientes de produção, consulte os Pré-requisitos de implementação da base de dados do Cortex Framework.