Origem em lote do Salesforce

Esta página descreve como carregar dados de Salesforce sObjects para Google Cloud com o Cloud Data Fusion. O plug-in de origem em lote do Salesforce lê sObjects do Salesforce. Os sObjects são as tabelas do Salesforce que você planeja extrair. Alguns exemplos de sObjects incluem oportunidades, contatos, contas, leads e objetos personalizados.

O plug-in de origem em lote do Salesforce oferece suporte à leitura de dados com consultas Salesforce Object Query Language (SOQL) e filtros de data incrementais ou de intervalo.

Antes de começar

Configurar o plug-in

  1. Acesse a interface da Web do Cloud Data Fusion e clique em Studio.
  2. Verifique se a opção Pipeline de dados – lote está selecionada (não Tempo real).
  3. No menu Origem, clique em Salesforce. O nó do Salesforce aparece no seu pipeline. Se a origem do Salesforce não aparecer na página Studio, implante os plug-ins do Salesforce no Hub do Cloud Data Fusion.
  4. Para configurar a origem, acesse o nó do Salesforce e clique em Propriedades.
  5. Insira as seguintes propriedades. Para uma lista completa, consulte Propriedades.

    1. Insira um Rótulo para o nó do Salesforce, por exemplo, Salesforce tables.
    2. Insira um Nome de referência para a origem do Salesforce para a linhagem, por exemplo, Salesforce tables.
    3. Insira os detalhes da conexão. É possível configurar uma nova conexão única ou uma conexão existente e reutilizável.

      Nova conexão

      Para adicionar uma conexão única ao Salesforce, siga estas etapas:

      1. Mantenha a opção Usar conexão desativada.
      2. Na seção Conexão, insira as seguintes informações da conta do Salesforce nestes campos:

        • Nome de usuário
        • Senha
        • Token de segurança
        • Chave do cliente
        • Chave secreta do consumidor

        Para conferir as credenciais do Salesforce, consulte Receber propriedades do Salesforce.

      Conexão reutilizável

      Para reutilizar uma conexão existente, siga estas etapas:

      1. Ative a opção Usar conexão.
      2. Clique em Procurar conexões.
      3. Clique no nome da conexão.

      4. Opcional: se uma conexão não existir e você quiser criar uma nova conexão reutilizável, clique em Adicionar conexão e consulte as etapas na guia Nova conexão.

    4. Insira o nome do SObject para carregar todas as colunas do objeto.

    5. Opcional: se você selecionar o nome do sObject, poderá filtrar os dados com os seguintes campos:

      • Última modificação após: inclui apenas registros que foram modificados pela última vez após um determinado horário.
      • Última modificação antes: inclui apenas registros que foram modificados pela última vez antes de um determinado horário.
      • Duração: inclui apenas registros que foram modificados pela última vez em uma janela de tempo do tamanho especificado.
      • Deslocamento: inclui apenas registros em que a data da última modificação é menor que o horário de início lógico do pipeline, menos o deslocamento fornecido.
    6. Opcional: para melhorar o desempenho de um pipeline com sObjects com suporte, ative a opção Ativar fragmentação de PK. Para mais informações, consulte Melhorar o desempenho com o agrupamento de PKs.

    7. Opcional: em vez de especificar o nome do sObject, você pode inserir uma consulta SOQL, como SELECT LastName from Contact. Para mais informações, consulte Consultas SOQL para a origem do Salesforce.

    8. Para testar a conectividade, clique em Usar esquema. O Cloud Data Fusion se conecta ao Salesforce e extrai o esquema da tabela listada (tecnicamente, um sObject).

Propriedades

Propriedade Macro ativada Propriedade obrigatória Descrição
Nome de referência Não Sim Usado para identificar exclusivamente essa origem para tarefas, como linhagem, anotação de metadados.
Usar conexão Não Não Use uma conexão atual. Se uma conexão for usada, não será necessário fornecer as credenciais.
Procurar conexões Sim Não Nome da conexão a ser usada.
Nome de usuário Sim Sim Nome de usuário do Salesforce.
Senha Sim Sim Senha do Salesforce.
Token de segurança Sim Não Token de segurança do Salesforce. Se a senha não contiver o token de segurança, o Cloud Data Fusion vai anexar o token antes de autenticar com o Salesforce.
Chave do cliente Sim Sim Chave de cliente do app. Também chamado de ID do cliente OAuth. Para conseguir uma chave de consumidor, crie um aplicativo conectado do Salesforce.
Chave secreta do consumidor Sim Sim Secret do consumidor do aplicativo. Isso também é chamado de chave secreta do cliente OAuth. Para conseguir uma chave secreta do cliente, crie um aplicativo conectado do Salesforce.
URL de login Sim Sim URL de login do Salesforce OAuth2.
O padrão é https://login.salesforce.com/services/oauth2/token
Tempo limite de conexão Sim Não Tempo máximo, em milissegundos, para aguardar a inicialização da conexão antes do tempo limite.
O padrão é 30.000 milissegundos.
URL do proxy Sim Não URL do proxy, que contém um protocolo, endereço e porta.
SOQL Sim Não Uma consulta SOQL para buscar dados na origem.
Exemplos:
  • SELECT Id, Name, BillingCity FROM Account
  • SELECT Id FROM Contact WHERE Name LIKE 'A%' AND MailingCity = 'California'
Nome do SObject Sim Não Nome do objeto do Salesforce a ser lido. Se o valor for fornecido, o conector vai receber todos os campos desse objeto do Salesforce e gerar uma consulta SOQL, como select FIELD_1, FIELD_2 from ${sObjectName}. Será ignorado se a consulta SOQL for fornecida.
Há também sObjects que não têm suporte na API Salesforce Bulk. A criação de um job com um objeto sem suporte causa o seguinte erro: Entity is not supported by the Bulk API. Esses objetos também não têm suporte do Einstein Analytics, que usa a API Bulk para consultar dados.
Casos em que a API BULK não é usada:quando o comprimento da consulta envia a consulta ao Salesforce para receber a matriz de informações do lote, a API Bulk não é usada em um caso. Se a consulta estiver dentro do limite, ela vai executar a consulta original. Caso contrário, ele muda para a lógica de objeto amplo. Por exemplo, ele gera uma consulta de ID que recupera apenas informações de lote para IDs que serão usados mais tarde para recuperar dados pela API SOAP.
Última modificação depois de Sim Não Filtre os dados para incluir apenas registros em que o campo do sistema, LastModifiedDate, é maior ou igual à data especificada. Use o formato de data do Salesforce (confira exemplos). Se nenhum valor for fornecido, nenhuma data mínima será aplicada.
Última modificação antes de Sim Não Filtre os dados para incluir apenas registros em que o campo do sistema, LastModifiedDate, é menor que a data especificada. Use o formato de data do Salesforce (confira os exemplos). Especificar esse valor com a propriedade Last modified after permite ler dados que foram modificados em um período. Se nenhum valor for fornecido, nenhuma data limite superior será aplicada.
Duração Sim Não Filtre os dados para ler apenas registros que foram modificados pela última vez em uma janela de tempo do tamanho especificado. Por exemplo, se a duração for 6 hours e o pipeline for executado às 9h, ele vai ler os dados que foram atualizados pela última vez entre 3h (inclusive) e 9h (exclusivo). Especifique a duração com números e as seguintes unidades de tempo:
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
Várias unidades podem ser especificadas, mas cada unidade só pode ser usada uma vez. Por exemplo, 2 days, 1 hours, 30 minutes. Se um valor já tiver sido especificado para Última modificação após ou Última modificação antes, a duração será ignorada.
Deslocamento Sim Não Filtre os dados para ler apenas registros em que o campo do sistema, LastModifiedDate, é menor que o horário de início lógico do pipeline, menos o deslocamento fornecido. Por exemplo, se a duração for 6 hours, o deslocamento for 1 hours e o pipeline for executado às 9h, os dados que foram modificados pela última vez entre 2h (inclusive) e 8h (exclusivo) serão lidos.
Especifique a duração usando números e as seguintes unidades de tempo:
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
Várias unidades podem ser especificadas, mas cada unidade só pode ser usada uma vez. Por exemplo, 2 days, 1 hours, 30 minutes. Se um valor já tiver sido especificado para Ultima modificação após ou Ultima modificação antes, o deslocamento será ignorado.
Tipo de operação SOQL Não Não Especifique a operação de consulta a ser executada na tabela. Se uma consulta for selecionada, apenas os registros atuais serão retornados. A seleção de queryAll retorna todos os registros atuais e excluídos.
A operação padrão é query.
Ativar o agrupamento de PKs Sim Não O fragmentação da chave primária (PK) divide uma consulta em tabelas grandes em partes, ou fragmentos, com base nos IDs de registro ou nas chaves primárias dos registros consultados.
O Salesforce recomenda ativar o agrupamento de PKs ao consultar tabelas com mais de 10 milhões de registros ou quando uma consulta em massa expira constantemente. Para mais informações, consulte Divisão de PKs. O agrupamento de PKs só funciona com consultas que não incluem cláusulas SELECT ou condições diferentes de WHERE. O agrupamento é aceito para objetos personalizados e qualquer tabela de compartilhamento e histórico que aceite objetos padrão.
Tamanho do bloco Sim Não Especifique o tamanho do bloco. O tamanho máximo é 250.000. O tamanho padrão é 100.000.
Nome do pai do SObject Sim Não Pai do objeto do Salesforce. Isso é usado para ativar o agrupamento de tabelas de histórico ou objetos compartilhados.

Exemplos de formato de data do Salesforce

Sintaxe do formato Exemplo
YYYY-MM-DDThh:mm:ss+hh:mm 1999-01-01T23:01:01+01:00
YYYY-MM-DDThh:mm:ss-hh:mm 1999-01-01T23:01:01-08:00
YYYY-MM-DDThh:mm:ssZ 1999-01-01T23:01:01Z

Mapeamentos de tipo de dados

A tabela a seguir é uma lista de tipos de dados do Salesforce com os tipos CDAP correspondentes.

Tipo de dados do Salesforce Tipo de dados do esquema CDAP
_bool boolean
_int int
_long long
_double, currency, percent, geolocation (latitude), geolocation (longitude) double
date date
datetime timestamp (microssegundos)
time time (microssegundos)
picklist string
multipicklist string
combobox string
reference string
base64 string
textarea string
phone string
id string
url string
email string
encryptedstring string
datacategorygroupreference string
location string
address string
anyType string
json string
complexvalue string

Casos de uso

Confira os seguintes casos de uso da fonte em lote do Salesforce:

Práticas recomendadas

Para mais informações sobre como melhorar a performance na origem de lote do Salesforce, consulte as práticas recomendadas.

A seguir