Origem de lotes do Salesforce

Esta página descreve como carregar dados de sObjects do Salesforce para o Google Cloudcom 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 das quais planeia extrair dados. Alguns exemplos de sObjects incluem oportunidades, contactos, contas, potenciais clientes e objetos personalizados.

O plug-in de origem de lotes do Salesforce suporta a leitura de dados com consultas de linguagem de consulta de objetos do Salesforce (SOQL) e filtros de data incrementais ou de intervalo.

Antes de começar

Configure o plug-in

  1. Aceda à interface Web do Cloud Data Fusion e clique em Studio.
  2. Verifique se a opção Data Pipeline - Batch está selecionada (e não Tempo Real).
  3. No menu Origem, clique em Salesforce. O nó do Salesforce é apresentado no seu pipeline. Se não vir a origem do Salesforce na página Studio, implemente os plug-ins do Salesforce a partir do hub do Cloud Data Fusion.
  4. Para configurar a origem, aceda ao nó do Salesforce e clique em Propriedades.
  5. Introduza as seguintes propriedades. Para ver uma lista completa, consulte as Propriedades.

    1. Introduza uma etiqueta para o nó do Salesforce, por exemplo, Salesforce tables.
    2. Introduza um Nome de referência para a origem do Salesforce para a linhagem, por exemplo, Salesforce tables.
    3. Introduza os detalhes da associação. Pode configurar uma nova associação única ou uma associação existente reutilizável.

      Nova associação

      Para adicionar uma associação única ao Salesforce, siga estes passos:

      1. Mantenha a opção Usar ligação desativada.
      2. Na secção Ligação, introduza as seguintes informações da conta do Salesforce nestes campos:

        • Nome de utilizador
        • Palavra-passe
        • Token de segurança
        • Chave do consumidor
        • Segredo do consumidor

        Para obter as credenciais do Salesforce, consulte o artigo Obtenha propriedades do Salesforce.

      Ligação reutilizável

      Para reutilizar uma associação existente, siga estes passos:

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

      4. Opcional: se não existir uma associação e quiser criar uma nova associação reutilizável, clique em Adicionar associação e consulte os passos no separador Nova associação.

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

    5. Opcional: se selecionar o nome do sObject, pode filtrar os dados com os seguintes campos:

      • Última modificação após: inclui apenas registos que foram modificados pela última vez após um determinado período.
      • Last modified before: inclui apenas registos que foram modificados pela última vez antes de uma determinada hora.
      • Duração: inclui apenas registos que foram modificados pela última vez num período de tempo do tamanho especificado.
      • Desvio: inclui apenas registos em que a data de modificação é inferior à hora de início lógica do pipeline, menos o desvio indicado.
    6. Opcional: para objetos S suportados, para melhorar o desempenho de um pipeline, ative a opção Ativar divisão em blocos de chaves primárias. Para mais informações, consulte o artigo Melhore o desempenho com a divisão em blocos de PK.

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

    8. Para testar a conetividade, clique em Obter esquema. O Cloud Data Fusion estabelece ligação ao Salesforce e extrai o esquema da tabela apresentada (tecnicamente, um sObject).

Propriedades

Propriedade O modo macro está ativado Propriedade obrigatória Descrição
Nome de referência Não Sim Usado para identificar de forma exclusiva esta origem para tarefas, como a linhagem, anotação de metadados.
Use a ligação Não Não Usar uma associação existente. Se for usada uma associação, não tem de fornecer as credenciais.
Procurar associações Sim Não Nome da associação a usar.
Nome de utilizador Sim Sim Nome de utilizador do Salesforce.
Palavra-passe Sim Sim Palavra-passe do Salesforce.
Token de segurança Sim Não Símbolo de segurança do Salesforce. Se a palavra-passe não contiver o token de segurança, a app Cloud Data Fusion anexa o token antes de fazer a autenticação com o Salesforce.
Chave do consumidor Sim Sim Chave de consumidor da aplicação. Isto também é denominado ID de cliente OAuth. Para obter uma chave do consumidor, crie uma aplicação associada do Salesforce.
Sigilo do consumidor Sim Sim Segredo do consumidor da aplicação. Também se denomina segredo do cliente OAuth. Para obter um segredo do cliente, crie uma aplicação associada do Salesforce.
URL do início de sessão Sim Sim URL de início de sessão do Salesforce OAuth2.
A predefinição é https://login.salesforce.com/services/oauth2/token
Limite de tempo da ligação Sim Não Tempo máximo, em milissegundos, de espera pela inicialização da ligação antes de atingir o tempo limite.
O valor predefinido é de 30 000 milissegundos.
URL do Proxy Sim Não URL do proxy, que contém um protocolo, um endereço e uma porta.
SOQL Sim Não Uma consulta SOQL para obter 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 ler. Se for fornecido um valor, o conetor recebe todos os campos deste objeto do Salesforce e gera uma consulta SOQL, como select FIELD_1, FIELD_2 from ${sObjectName}. É ignorado se for fornecida uma consulta SOQL.
Também existem sObjects que não são suportados na API Bulk do Salesforce. A criação de uma tarefa com um objeto não suportado provoca o seguinte erro: Entity is not supported by the Bulk API. Estes objetos também não são suportados pelo 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 para o Salesforce para receber a matriz de informações em lote, a API BULK não é usada num caso. Se a consulta estiver dentro do limite, executa a consulta original. Caso contrário, muda para a lógica de objetos amplos. Por exemplo, gera uma consulta de ID que apenas obtém informações de lotes para IDs que serão usados mais tarde para obter dados através da API SOAP.
Última modificação depois de Sim Não Filtre os dados para incluir apenas registos em que o campo do sistema, LastModifiedDate, seja superior ou igual à data especificada. Use o formato de data do Salesforce (consulte os exemplos). Se não for indicado nenhum valor, não é aplicada nenhuma data de limite inferior.
Última modificação antes de Sim Não Filtre os dados para incluir apenas registos em que o campo do sistema, LastModifiedDate, seja anterior à data especificada. Use o formato de data do Salesforce (consulte exemplos). A especificação deste valor com a propriedade Last modified after permite-lhe ler dados que foram modificados num período. Se não for indicado nenhum valor, não é aplicada nenhuma data limite.
Duração Sim Não Filtre os dados para ler apenas os registos que foram modificados pela última vez num período de tempo do tamanho especificado. Por exemplo, se a duração for 6 hours e o pipeline for executado às 09:00, vai ler os dados que foram atualizados pela última vez das 03:00 (inclusive) às 09:00 (exclusive). Especifique a duração com números e as seguintes unidades de tempo:
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
Podem ser especificadas várias unidades, mas cada unidade só pode ser usada uma vez. Por exemplo, 2 days, 1 hours, 30 minutes. Se já tiver sido especificado um valor para Última modificação após ou Última modificação antes, a duração é ignorada.
Desvio Sim Não Filtre os dados para ler apenas os registos em que o campo do sistema, LastModifiedDate, é inferior à hora de início lógica do pipeline, menos o desvio indicado. Por exemplo, se a duração for 6 hours, o desvio for 1 hours e o pipeline for executado às 09:00, são lidos os dados que foram modificados pela última vez entre as 02:00 (inclusive) e as 08:00 (exclusive).
Especifique a duração usando números e as seguintes unidades de tempo:
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
Podem ser especificadas várias unidades, mas cada unidade só pode ser usada uma vez. Por exemplo, 2 days, 1 hours, 30 minutes. Se já tiver sido especificado um valor para Última modificação após ou Última modificação antes, o desvio é ignorado.
Tipo de operação SOQL Não Não Especifique a operação de consulta a executar na tabela. Se for selecionada uma consulta, são devolvidos apenas os registos atuais. A seleção de queryAll devolve todos os registos atuais e eliminados.
A operação predefinida é query.
Ative a divisão em blocos de PK Sim Não A divisão em partes da chave primária (PK) divide uma consulta em tabelas grandes em partes, ou blocos, com base nos IDs dos registos, ou chaves primárias, dos registos consultados.
A Salesforce recomenda que ative a divisão em blocos de chaves primárias quando consultar tabelas com mais de 10 milhões de registos ou quando uma consulta em massa expira constantemente. Para mais informações, consulte o artigo Divisão em blocos de PK. A divisão em partes de chaves primárias só funciona com consultas que não incluam cláusulas SELECT nem condições que não sejam WHERE. A divisão em blocos é suportada para objetos personalizados e quaisquer tabelas de partilha e histórico que suportem objetos padrão.
Tamanho do fragmento Sim Não Especifique o tamanho do fragmento. O tamanho máximo é de 250 000. O tamanho predefinido é 100 000.
Nome principal do SObject Sim Não Principal do objeto do Salesforce. Isto é usado para ativar a divisão em partes para tabelas de histórico ou objetos partilhados.

Exemplos de formatos de data do Salesforce

Sintaxe de formatação 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 tipos de dados

A tabela seguinte é uma lista de tipos de dados do Salesforce com os tipos de 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

Exemplos de utilização

Veja os seguintes exemplos de utilização para a origem de lotes do Salesforce:

Práticas recomendadas

Para mais informações sobre como melhorar o desempenho na origem de lotes do Salesforce, consulte as práticas recomendadas.

O que se segue?