Fazer streaming de dados de organizações do Salesforce

É possível conectar o Datastream a uma instância do Salesforce para replicar dados históricos e eventos de alteração para análise e integração de dados. O Salesforce é uma plataforma de gestão de relacionamento com o cliente baseada na nuvem em que cada instância é geralmente chamada de organização do Salesforce ou organização do Salesforce.

Ao configurar uma origem do Salesforce no Datastream, revise os termos principais, o comportamento de replicação, as edições e versões de API compatíveis, as práticas recomendadas e as limitações conhecidas.

Termos-chave

O Salesforce opera usando objetos, registros e campos:

  • Um objeto é uma entidade de classe e é semelhante a uma tabela na nomenclatura de bancos de dados relacionais. Os objetos podem ser padrão ou personalizados. Os objetos padrão são incluídos no Salesforce por padrão, enquanto os objetos personalizados são criados pelos usuários para armazenar dados específicos dos casos de uso.
  • Um registro é uma instância específica de um objeto, semelhante a uma linha em bancos de dados relacionais.
  • Um campo é um atributo específico de um objeto, semelhante a uma coluna em bancos de dados relacionais.

Comportamento

O suporte à origem do Salesforce no Datastream depende das APIs REST e Bulk 2.0. O Salesforce pesquisa mudanças na origem com base no intervalo definido para permitir o controle do uso da API.

Ao replicar dados de uma origem do Salesforce, o seguinte comportamento é observado:

  • Objetos padrão replicáveis e consultáveis que têm o campo SystemModstamp ou LastModifiedDate podem ser replicados. Para que um objeto seja replicável, ele precisa oferecer suporte às chamadas de API getUpdated() e getDeleted(). Para mais informações, consulte Chamadas de API para replicação de dados na documentação do Salesforce.
  • Os objetos personalizados podem ser replicados.
  • Se configurado, todos os dados históricos serão replicados para os objetos incluídos.
  • Todas as alterações, como inserções, atualizações e exclusões dos objetos especificados, são replicadas.
  • O Datastream pesquisa mudanças de acordo com o intervalo de pesquisa configurado. Isso é refletido na métrica de atualização de dados do stream. A métrica pode crescer até o valor do intervalo de sondagem configurado e reflete o tempo decorrido desde a sondagem mais recente.

Versões

O Datastream é compatível com as seguintes edições do Salesforce:

  • Pro Suite
  • Desenvolvedor
  • Profissional
  • Enterprise
  • Ilimitado

O Datastream usa a versão 61.0 da API Salesforce.

Para mais informações sobre as edições disponíveis do Salesforce, consulte a documentação do Salesforce.

Práticas recomendadas

Nesta seção, descrevemos as práticas recomendadas para configurar sua origem do Salesforce para uso com o Datastream.

Gerenciar o uso da cota da API

O Salesforce impõe limites ao número de solicitações de API que podem ser feitas em uma janela contínua de 24 horas. Esgotar essa cota é um desafio comum ao replicar dados do Salesforce.

É possível configurar o intervalo de sondagem no Datastream para reduzir o número de solicitações de API feitas ao Salesforce. Embora um intervalo de sondagem mais curto melhore a atualização dos dados, ele também aumenta o uso da cota da API. Recomendamos definir um intervalo de pesquisa que equilibre a atualização de dados escolhida com as restrições da cota da API para garantir uma replicação de dados sustentável. Se necessário, aumente a cota global de solicitações de API no Salesforce.

Limitações conhecidas

As limitações conhecidas do uso do Salesforce como origem incluem:

  • Somente objetos que podem ser consultados e replicados são compatíveis.
  • Os campos compostos são replicados como campos nivelados.
  • Até 600.000 exclusões por minuto são aceitas (limitação do Salesforce).
  • Os streams são limitados a 3.000 objetos.
  • Os campos calculados (também conhecidos como fórmulas) são compatíveis apenas parcialmente. A replicação de campos calculados está sujeita às seguintes restrições:

    • Não há suporte para referências entre tabelas.
    • Funções não determinísticas (como NOW() ou TODAY()) não são compatíveis, já que o Datastream não pode determinar quando os valores desses campos mudam.
    • Somente um conjunto específico de funções permitidas é aceito. Se um campo calculado usar qualquer função fora dessa lista, ele não será replicado.

    A lista a seguir mostra as funções compatíveis:

    • Lógico:AND, OR, NOT, IF, CASE, ISNULL, ISBLANK, BLANKVALUE, ISPICKVAL
    • Matemática:ABS, CEILING, MCEILING, FLOOR, MFLOOR, ROUND, MOD, SQRT, EXP, LN, LOG, MAX, MIN
    • Texto:BEGINS, BR, CONTAINS, FIND, HYPERLINK, INCLUDES, LEFT, LEN, LOWER, LPAD, MID, RPAD, RIGHT, SUBSTITUTE, TEXT, TRIM, UPPER, VALUE
    • Data e hora:DATE, DATEVALUE, DATETIMEVALUE, DAY, MONTH, YEAR, HOUR, MINUTE, SECOND, MILLISECOND, WEEKDAY, TIMEVALUE, ADDMONTHS
    • Outro: REGEX
  • A recuperação de stream não é aceita.

A seguir