Nesta página, descrevemos como carregar dados de sObjects do Salesforce no 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 da Linguagem de consulta de objetos do Salesforce (SOQL, na sigla em inglês) e filtros de data incrementais ou de período.
Antes de começar
- A origem em lote do Salesforce do Cloud Data Fusion usa a API Bulk V1 do Salesforce.
- Configure o Salesforce antes de implantar e usar o plug-in do Salesforce para o Cloud Data Fusion. Para mais informações, consulte Criar um app conectado do Salesforce para o Cloud Data Fusion.
Configurar o plug-in
- Acesse a interface da Web do Cloud Data Fusion e clique em Studio.
- Verifique se Pipeline de dados - Lote está selecionado (não em Tempo real).
- No menu Origem, clique em Salesforce. O nó do Salesforce aparece no pipeline. Se você não encontrar a origem do Salesforce na página do Studio, implante os plug-ins do Salesforce a partir do Hub do Cloud Data Fusion.
- Para configurar a origem, acesse o nó do Salesforce e clique em Propriedades.
Insira as seguintes propriedades. Para ver uma lista completa, consulte Propriedades.
- Digite um Rótulo para o nó do Salesforce, por exemplo,
Salesforce tables
. - Insira um Nome de referência para a origem do Salesforce para
a linhagem, por exemplo,
Salesforce tables
. Digite os detalhes da conexão. É possível configurar uma conexão única ou uma atual reutilizável.
Nova conexão
Para adicionar uma conexão única ao Salesforce, siga estas etapas:
- Mantenha a opção Usar conexão desativada.
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 receber as credenciais do Salesforce, consulte Receber propriedades do Salesforce.
Conexão reutilizável
Para reutilizar uma conexão existente, siga estas etapas:
- Ative a opção Usar conexão.
- Clique em Procurar conexões.
Clique no nome da conexão.
Opcional: se não houver uma conexão e você quiser criar uma nova conexão reutilizável, clique em Adicionar conexão e consulte as etapas na guia Nova conexão.
Digite o SObject name para carregar todas as colunas do objeto.
Opcional: se você selecionar o nome do sObject, será possível filtrar os dados com os seguintes campos:
- Última modificação depois: inclua somente os registros que foram modificados pela última vez após um determinado momento.
- Última modificação antes de: inclua apenas registros que foram modificados antes de um determinado horário.
- Duração: inclua apenas registros que foram modificados pela última vez em uma janela de tempo do tamanho especificado.
- Deslocamento: inclua apenas registros em que a data da última modificação seja menor que o horário de início lógico do pipeline, menos o deslocamento especificado.
Opcional: para sObjects compatíveis, para melhorar o desempenho de um pipeline, ative Ativar agrupamento de PK. Para mais informações, consulte Melhorar o desempenho com o agrupamento de PK.
Opcional: em vez de especificar o nome do sObject, insira uma consulta SOQL, como
SELECT LastName from Contact
. Para mais informações, consulte Consultas SOQL para a origem do Salesforce.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).
- Digite um Rótulo para o nó do Salesforce, por exemplo,
Propriedades
Propriedade | Macro ativada | Propriedade obrigatória | Descrição |
---|---|---|---|
Nome de referência | Não | Sim | Usado para identificar exclusivamente essa fonte em tarefas, como linhagem e anotação de metadados. |
Usar conexão | Não | Não | Use uma conexão existente. 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 do 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 anexará o token antes de autenticar com o Salesforce. |
Chave do cliente | Sim | Sim | Chave do cliente do aplicativo. Isso também é chamado de ID do cliente OAuth. Para conseguir uma chave do consumidor, crie um aplicativo conectado do Salesforce. |
Chave secreta do consumidor | Sim | Sim | Chave secreta do consumidor do aplicativo. Ela também é chamada de chave secreta do cliente OAuth. Para receber uma chave secreta do cliente, crie um aplicativo conectado do Salesforce. |
URL de login | Sim | Sim | URL de login do OAuth2 do Salesforce. 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 que ela expire. O padrão é 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 buscar dados na origem. Exemplos:
|
Nome do SObject | Sim | Não | Nome do objeto do Salesforce a ser lido. Se o valor for fornecido, o conector receberá todos os campos desse objeto do Salesforce e gerará uma consulta SOQL, como select FIELD_1, FIELD_2 from
${sObjectName} . Será ignorada se a consulta SOQL for fornecida.Também há sObjects que não têm suporte na API Salesforce Bulk. A criação de um job com um objeto não compatível causa o seguinte erro: Entity is not supported by the Bulk
API . Esses objetos também não são compatíveis com o Einstein Analytics, que usa a API Bulk para consultar dados.Casos em que a API BULK não é usada: quando o tamanho 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 está dentro do limite, ela executa a consulta original. Caso contrário, ele alterna para a lógica de objeto amplo. Por exemplo, ela gera uma consulta de ID que só recupera informações de lote de IDs que serão usados posteriormente para recuperar dados por meio da 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 (consulte exemplos). Se nenhum valor for fornecido, nenhuma data limite inferior 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
(consulte exemplos). Ao especificar esse valor com a propriedade Última modificação depois, você pode ler os dados que foram modificados em um período. Se nenhum valor for fornecido, nenhuma data de limite superior será aplicada. |
Duração | Sim | Não | Filtrar 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 lerá os dados que foram atualizados pela última vez das 3h (inclusive) para as 9h (exclusivas).
Especifique a duração com números e as seguintes unidades de tempo:
2 days, 1 hours, 30 minutes . Se um valor já tiver sido especificado para Última modificação depois de ou Última modificação antes de, 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 especificado. Por exemplo, se a duração for 6 hours , o deslocamento será 1 hours e o pipeline for executado às 9h, os dados modificados pela última vez entre 2h (inclusive) e 8h (exclusivos) serão lidos.Especifique a duração usando números e as seguintes unidades de tempo:
2 days, 1 hours, 30 minutes . Se um valor já estiver especificado para Última modificação depois de ou Última modificação antes de, 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. Selecionar queryAll retorna todos os registros atuais e excluídos.A operação padrão é query . |
Ativar o agrupamento de PK | Sim | Não | O agrupamento de chave primária (PK) divide uma consulta em tabelas grandes em partes, ou
partes, com base nos IDs de registro, ou chaves primárias, dos registros consultados. A Salesforce recomenda ativar a divisão da PK ao consultar tabelas com mais de 10 milhões de registros ou quando uma consulta em massa expira constantemente. Para mais informações, consulte Agrupamento de PK. O agrupamento de PK só funciona com consultas que não incluem cláusulas SELECT ou condições diferentes de WHERE .
A fragmentação é compatível com objetos personalizados e com qualquer tabela de compartilhamento e histórico compatível com objetos padrão. |
Tamanho dos pedaços | Sim | Não | Especifique o tamanho do bloco. O tamanho máximo é 250.000. O tamanho padrão é 100.000. |
Nome do SObject pai | Sim | Não | Pai do Objeto do Salesforce. Isso é usado para ativar a divisão em tabelas de histórico ou objetos compartilhados. |
Exemplos de formato de data do Salesforce
Sintaxe de 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
Veja na tabela a seguir uma lista dos tipos de dados do Salesforce com os tipos de CDAP correspondentes.
Tipo de dados do Salesforce | Tipo de dados do esquema do 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 para a origem em lote do Salesforce:
Práticas recomendadas
Para mais informações sobre como melhorar o desempenho na origem em lote do Salesforce, consulte as práticas recomendadas.
Notas de lançamento
A seguir
- Siga as etapas de um tutorial do plug-in do Salesforce.