Carregue dados do Salesforce Marketing Cloud para o BigQuery

Pode carregar dados do Salesforce Marketing Cloud para o BigQuery através do conetor do Serviço de transferência de dados do BigQuery para o Salesforce Marketing Cloud. Com o Serviço de transferência de dados do BigQuery, pode agendar tarefas de transferência recorrentes que adicionam os seus dados mais recentes do Salesforce Marketing Cloud ao BigQuery.

Limitações

As transferências de dados do Salesforce Marketing Cloud estão sujeitas às seguintes limitações:

  • Uma única configuração de transferência só pode suportar uma execução de transferência de dados num determinado momento. No caso em que uma segunda transferência de dados esteja agendada para ser executada antes de a primeira transferência estar concluída, apenas a primeira transferência de dados é concluída, enquanto todas as outras transferências de dados que se sobreponham à primeira transferência são ignoradas.
    • Para evitar transferências ignoradas numa única configuração de transferência, recomendamos que aumente a duração do tempo entre transferências de dados grandes configurando a frequência de repetição.
  • Se o anexo de rede configurado e a instância de máquina virtual (VM) estiverem localizados em regiões diferentes, pode haver movimento de dados entre regiões quando transfere dados do Salesforce Marketing Cloud.

Antes de começar

As secções seguintes descrevem os passos que tem de realizar antes de criar uma transferência de dados do Salesforce Marketing Cloud.

Pré-requisitos do Salesforce Marketing Cloud

Tem de ter as seguintes informações quando criar uma transferência de dados do Salesforce Marketing Cloud:

Nome do parâmetro Descrição
subdomain O subdomínio da API, encontrado no URI base. Por exemplo, no URI base de autenticação https://SUBDOMAIN.auth.marketingcloudapis.com/, SUBDOMAIN é o valor do seu subdomínio.
instance A instância do servidor da API, que se encontra no URL depois de iniciar sessão na aplicação Salesforce Marketing Cloud. O valor da instância inclui "s" seguido de um valor numérico. Por exemplo, no URL `https://mc.s4.exacttarget.com/`, o valor da instância é `s4`. Para mais informações, consulte o artigo Encontre a localização da pilha de uma conta do Marketing Cloud
clientId O ID de cliente da integração da API. Navegue para Configuração > Apps > Pacotes instalados e, de seguida, clique no nome do pacote. O ID de cliente é apresentado em Componentes.
clientSecret O segredo do cliente da integração da app. Navegue para Configuração > Apps > Pacotes instalados e, de seguida, clique no nome do pacote. O segredo do cliente é apresentado em Componentes.

Configure a lista de autorizações de IPs para transferências do Salesforce Marketing Cloud

Tem de configurar o seu Google Cloud ambiente e a sua conta do Salesforce Marketing Cloud para adicionar endereços IP específicos à lista de autorizações para transferências de dados. Isto garante que o Salesforce Marketing Cloud só aceita ligações de um endereço IP estático fidedigno.

Para tal, primeiro tem de configurar a sua Google Cloud rede para usar um endereço IP estático:

  1. Configure uma tradução de endereços de rede (NAT) pública com um endereço IP estático na sua rede de nuvem virtual privada. O CloudNAT tem de ser configurado na mesma região que o conjunto de dados de destino para esta transferência de dados.
  2. Configure uma associação de rede na mesma rede de VPC. Este recurso é usado pelo Serviço de transferência de dados do BigQuery para aceder a serviços privados.

Em seguida, tem de adicionar o endereço IP estático à lista de autorizações no Salesforce Marketing Cloud. Quando adicionar o intervalo do endereço IP, use o endereço IP estático do seu NAT público para os endereços IP inicial e final do intervalo de IPs.Google Cloud

Depois de configurar os intervalos de IP, pode especificar o IP estático quando configurar a configuração de transferência selecionando a associação de rede no campo Associação de rede.

Instale e configure o pacote de integração da API do Salesforce Marketing Cloud

Tem de instalar um pacote de integração de API de servidor a servidor no Salesforce Marketing Cloud. Pode fazê-lo no Salesforce Marketing Cloud instalando um novo pacote instalado e especificando o componente Integração de API > Servidor a servidor. Para mais informações, consulte o artigo Crie e instale pacotes.

Depois de instalar o pacote de integração da API, tem de adicionar os seguintes âmbitos de autorizações:

  • Acesso: Offline Access
  • Email: Read
  • OTT: Read
  • Push:Read
  • SMS:Read
  • Web: Read
  • Documentos e imagens: Read
  • Conteúdo guardado: Read
  • Viagens: Read
  • Públicos-alvo: Read
  • Lista e subscritores: Read
  • Extensões de datas: Read
  • Localizações de ficheiros Read
  • Acompanhamento de eventos: Read
  • Devoluções de chamadas: Read
  • Subscrições: Read
  • Campanha: Read
  • Recursos: Read
  • Contas: Read
  • Canais OTT: Read
  • Utilizadores: Read

Para mais informações, consulte o artigo Âmbitos de autorização da integração da API.

Pré-requisitos do BigQuery

Funções do BigQuery necessárias

Para receber as autorizações de que precisa para criar uma transferência de dados do Serviço de transferência de dados do BigQuery, peça ao seu administrador para lhe conceder a função do IAM de administrador do BigQuery (roles/bigquery.admin) no seu projeto. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Esta função predefinida contém as autorizações necessárias para criar uma transferência de dados do Serviço de transferência de dados do BigQuery. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:

Autorizações necessárias

São necessárias as seguintes autorizações para criar uma transferência de dados do Serviço de transferência de dados do BigQuery:

  • Autorizações do Serviço de transferência de dados do BigQuery:
    • bigquery.transfers.update
    • bigquery.transfers.get
  • Autorizações do BigQuery:
    • bigquery.datasets.get
    • bigquery.datasets.getIamPolicy
    • bigquery.datasets.update
    • bigquery.datasets.setIamPolicy
    • bigquery.jobs.create

Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.

Para mais informações, consulte o artigo Conceda acesso ao bigquery.admin.

Configure uma transferência de dados do Salesforce Marketing Cloud

Adicione dados do Salesforce Marketing Cloud ao BigQuery configurando uma configuração de transferência através de uma das seguintes opções:

Consola

  1. Aceda à página Transferências de dados na Google Cloud consola.

    Aceda a Transferências de dados

  2. Clique em Criar transferência.

  3. Na secção Tipo de origem, para Origem, selecione Salesforce Marketing Cloud.

  4. Na secção Detalhes da origem de dados, faça o seguinte:

  5. Na secção Definições de destino, para Conjunto de dados, selecione o conjunto de dados que criou para armazenar os seus dados.

  6. Na secção Nome da configuração de transferência, em Nome a apresentar, introduza um nome para a transferência de dados.

  7. Na secção Opções de agendamento, faça o seguinte:

    • Na lista Frequência de repetição, selecione uma opção para especificar a frequência com que esta transferência de dados é executada. Para especificar uma frequência de repetição personalizada, selecione Personalizado. Se selecionar A pedido, esta transferência é executada quando aciona manualmente a transferência.
    • Se aplicável, selecione Começar agora ou Começar à hora definida e indique uma data de início e um tempo de execução.
  8. Opcional: na secção Opções de notificação, faça o seguinte:

    • Para ativar as notificações por email, clique no botão Notificação por email. Quando ativa esta opção, o administrador da transferência recebe uma notificação por email quando uma execução da transferência falha.
    • Para ativar as notificações de execução de transferências do Pub/Sub para esta transferência, clique no botão ativar/desativar Notificações do Pub/Sub. Pode selecionar o nome do tópico ou clicar em Criar um tópico para criar um.
  9. Clique em Guardar.

bq

Introduza o comando bq mk e forneça a flag de criação de transferência: --transfer_config.

bq mk
    --transfer_config
    --project_id=PROJECT_ID
    --data_source=DATA_SOURCE
    --display_name=DISPLAY_NAME
    --target_dataset=DATASET
    --params='PARAMETERS'

Substitua o seguinte:

  • PROJECT_ID (opcional): o ID do seu Google Cloud projeto. Se --project_id não for fornecido para especificar um projeto em particular, é usado o projeto predefinido.
  • DATA_SOURCE: a origem de dados (por exemplo, saphana).
  • DISPLAY_NAME: o nome a apresentar da configuração de transferência. O nome da transferência de dados pode ser qualquer valor que lhe permita identificar a transferência se precisar de a modificar mais tarde.
  • DATASET: o conjunto de dados de destino para a configuração de transferência.
  • PARAMETERS: os parâmetros da configuração de transferência criada no formato JSON. Por exemplo: --params='{"param":"param_value"}'. Seguem-se os parâmetros para uma transferência do Salesforce Marketing Cloud:
    • connector.subdomain: o subdomínio da API.
    • connector.instance: o valor da instância da API.
    • connector.authentication.oauth.clientId: o nome do ID da app para o cliente OAuth.
    • connector.authentication.oauth.clientSecret: o segredo da app para o cliente OAuth.

Por exemplo, o seguinte comando cria uma transferência de dados do Salesforce Marketing Cloud no projeto predefinido com todos os parâmetros necessários:

  bq mk
      --transfer_config
      --target_dataset=mydataset
      --data_source=salesforce_marketing
      --display_name='My Transfer'
      --params='{"connector.subdomain": "abcd",
      "connector.instance": "x",
      "connector.authentication.oauth.clientId": "1234567890",
      "connector.authentication.oauth.clientSecret":"ABC12345"}'

API

Use o método projects.locations.transferConfigs.create e forneça uma instância do recurso TransferConfig.

Quando guarda a configuração de transferência, o conector do Salesforce Marketing Cloud aciona automaticamente uma execução de transferência de acordo com a opção de programação. Com cada execução de transferência, o conector do Salesforce Marketing Cloud transfere todos os dados disponíveis do Salesforce Marketing Cloud para o BigQuery para as seguintes tabelas com base na interface REST:

  • Assets
  • CampaignAssets
  • Campaigns
  • Categories
  • EventDefinitions
  • FacebookMessengerProperties
  • JourneyActivities
  • Journeys
  • LineMessengerProperties
  • SendDefinitions
  • Subscriptions
  • DataExtension
  • Email
  • LinkSend
  • List
  • ListSubscriber
  • Subscriber
  • TriggeredSendDefinition

Para executar manualmente uma transferência de dados fora da sua programação normal, pode iniciar uma execução de preenchimento.

Mapeamento de tipos de dados

A tabela seguinte mapeia os tipos de dados do Salesforce Marketing Cloud para os tipos de dados do BigQuery correspondentes.

Tipo de dados do Salesforce Marketing Cloud Tipo de dados do BigQuery
Boolean BOOLEAN
Number INTEGER
Text STRING
Decimal FLOAT
EmailAddress STRING
Phone STRING
date DATE
Date TIMESTAMP

Resolva problemas de configuração da transferência

Se tiver problemas ao configurar uma transferência de dados do Salesforce Marketing Cloud, experimente os seguintes passos de resolução de problemas:

Mensagens de erro

Erro: invalid_grant. The client's IP address is unauthorized for this account. Allowlist the client's IP address in Marketing Cloud Administration.

Resolução: experimente um dos seguintes passos:

  • Ativar todos os endereços IP disponíveis para Google Cloud recursos.
  • Desative a lista de autorizações de IPs. Pode fazê-lo iniciando sessão na aplicação Salesforce Marketing Cloud e, de seguida, navegando para a página Configuração > Definições de segurança. Clique em Editar e, de seguida, configure a definição Restringir inícios de sessão por endereço IP (lista de IPs permitidos) para Lista de IPs permitidos desativada.

Desative a lista de autorizações de IPs

Erro: INVALID_ARGUMENT. Table tableName does not exist in asset TableName

Resolução: certifique-se de que tem as autorizações de âmbito corretas configuradas na aplicação Salesforce Marketing Cloud. Para mais informações, consulte os pré-requisitos do Salesforce Marketing Cloud.

Preços

Não existe qualquer custo para transferir dados do Salesforce Marketing Cloud para o BigQuery enquanto esta funcionalidade estiver em pré-visualização.

O que se segue?