Limitações para conexões de ingestão do Salesforce

Prévia

O LakeFlow Connect está em um Public Preview fechado. Para participar da pré-visualização, entre em contato com a equipe do Databricks account .

Este artigo lista as limitações e considerações sobre a conexão e a ingestão de dados do Salesforce usando o LakeFlow Connect.

  • Quando o senhor executa um pipeline agendado, o alerta não é acionado imediatamente. Em vez disso, eles são acionados quando a próxima atualização é executada.

  • Quando uma tabela de origem é excluída, a tabela de destino não é excluída automaticamente. O senhor deve excluir a tabela de destino manualmente. Esse comportamento não é consistente com o comportamento do Delta Live Tables.

  • Ao selecionar um esquema, você está selecionando não apenas as tabelas CURRENT, mas também as tabelas FUTURE que são adicionadas a ele.

  • Durante os períodos de manutenção, talvez a Databricks não consiga acessar seus dados.

  • Se o nome da tabela de origem entrar em conflito com um nome de tabela de destino existente, o fluxo falhará.

  • Há um máximo de 250 objetos por pipeline. No entanto, não há limite conhecido para o número de linhas ou colunas que são suportadas nesses objetos.

  • base64Os tipos address, location ou complexValue não são compatíveis. Essas colunas são automaticamente eliminadas durante a ingestão.

  • Não há suporte para os seguintes objetos:

    • Objetos com cláusulas WHERE ou restrições LIMIT

    • Objetos para monitoramento de eventos em tempo real

    • Objetos que terminam com __b, __x ou __hd.

  • Só há suporte para um destino por pipeline. Todas as tabelas devem ter o mesmo catálogo e esquema.

  • Databricks selecione uma coluna de cursor para rastrear a leitura incremental de dados e alterações de sequência que compartilham o mesmo key primário. O Databricks seleciona a coluna do cursor na lista a seguir, em ordem de preferência: SystemModstamp, LastModifiedDate, CreatedDate e LoginTime.

    Por exemplo, se SystemModstamp não estiver disponível, o Databricks procura LastModifiedDate. Se um objeto não tiver um desses cursores, o site Databricks tira um Snapshot da tabela.

  • A Databricks transforma automaticamente os tipos de dados do Salesforce em tipos de dados compatíveis com o Delta. Para obter a lista aproximada de transformações, consulte Transformações automáticas de dados.

  • O Databricks pode ingerir campos de fórmula. No entanto, no momento, o site Databricks exige um Snapshot completo desses campos. Isso significa que a latência do pipeline depende do fato de seus dados do Salesforce incluírem campos de fórmula e do volume de atualizações em seus dados do Salesforce.

  • Databricks campos de fórmula de execução na mesma cadência que o restante do pipeline. No entanto, dentro da cadência de atualizações do pipeline, os campos sem fórmula podem ser atualizados antes dos campos com fórmula.

  • Databricks tratar as exclusões da mesma forma que as inserções e atualizações. Quando uma linha é excluída do Salesforce, ela é excluída da tabela bronze na próxima sincronização dos dados. Por exemplo, suponha que o senhor tenha um pipeline sendo executado de hora em hora. Se você sincronizar às 12h e tiver um registro excluído às 12h30, a exclusão não será refletida até que a sincronização às 13h ocorra.

    Há um caso extremo: Se o pipeline não tiver sido executado depois que os registros foram excluídos, mas antes de serem removidos da lixeira do Salesforce, o Databricks perderá essas exclusões. A única maneira de se recuperar disso é com um refresh completo.

  • O Salesforce tem um limite de 4 conexões por usuário e por aplicativo conectado. Se o senhor precisar criar mais de 4 conexões, crie um novo usuário.

  • Por motivos de segurança, só autentique se o senhor tiver clicado em um link OAuth na interface do usuário do Databricks.

  • O Salesforce permite que o senhor gire um refresh tokens. O conector não é compatível com isso.

Exclusões

  • Se a tabela estiver habilitada para exclusão suave:

    • A exclusão é refletida na próxima sincronização.

  • Se a tabela não for compatível com a exclusão suave:

    • O conector agrupa automaticamente o Snapshot para ingestão

    • Exceção: Isso não funciona para objetos de história. O conector pressupõe que eles sejam lidos de forma incremental e que não ocorram exclusões.

  • Se a tabela for compatível com a exclusão suave e o usuário excluir manualmente, o conector não poderá capturar a exclusão. O registro permanece na tabela bronze, a menos que o senhor execute um full-refresh.