Pular para o conteúdo principal

Limitações do conector de ingestão do Salesforce

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

Limitações gerais do conector SaaS

As limitações desta seção se aplicam a todos os conectores SaaS em 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. Você deve excluir a tabela de destino manualmente. Esse comportamento não é consistente com o comportamento do pipeline declarativo LakeFlow.
  • Durante os períodos de manutenção da fonte, a Databricks pode não conseguir acessar seus dados.
  • Se um nome de tabela de origem entrar em conflito com um nome de tabela de destino existente, a atualização do pipeline falhará.
  • O suporte a pipeline de vários destinos é somente de API.
  • Opcionalmente, você pode renomear uma tabela que você ingere. Se o senhor renomear uma tabela no pipeline, ela se tornará um pipeline somente de API e não será mais possível editar o pipeline na interface do usuário.
  • A seleção e a desseleção em nível de coluna são somente para API.
  • Se o senhor selecionar uma coluna depois que um pipeline já tiver começado, o conector não preencherá automaticamente os dados da nova coluna. Para ingerir dados históricos, o senhor deve executar manualmente um refresh completo na tabela.
  • O Databricks não pode ingerir duas ou mais tabelas com o mesmo nome no mesmo pipeline, mesmo que elas venham de esquemas de origem diferentes.
  • O sistema de origem presume que as colunas do cursor estão aumentando monotonicamente.
  • Com o SCD tipo 1 ativado, as exclusões não produzem um evento delete explícito no feed de dados de alteração. Para exclusões auditáveis, use o SCD tipo 2 se o conector for compatível com ele. Para obter detalhes, consulte Exemplo: Processamento de SCD tipo 1 e SCD tipo 2 com dados de origem CDF.

Limitações específicas do conector

As limitações desta seção são específicas do conector de ingestão do Salesforce.

Autenticação

  • O conector suporta OAuth com manual refresh tokens. No entanto, se o Salesforce girar ou revogar um refresh tokens, o conector não o atualizará automaticamente. O senhor deve obter um novo refresh tokens e atualizar a configuração do conector manualmente.

Tipos de dados

  • Os dados do Salesforce do tipo NUMBER e CURRENCY perdem três dígitos de precisão quando ingeridos. Esses valores podem ter 18 dígitos antes da vírgula decimal no Salesforce, mas só têm 15 dígitos antes da vírgula decimal no Databricks.

tubulação

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

  • base64, os tipos address, location ou complexValue não são suportados. Essas colunas são eliminadas automaticamente durante a ingestão.

  • O Databricks pode ingerir campos de fórmula. No entanto, o site Databricks exige um Snapshot completo desses campos. Isso ocorre porque o Salesforce não atualiza a coluna do cursor quando a saída da fórmula muda, de modo que os campos da fórmula podem mudar silenciosamente sem serem detectados pelo pipeline de ingestão. Como resultado, 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, os campos que não são de fórmula podem ser atualizados antes dos campos de fórmula.

  • O Databricks trata as exclusões flexíveis 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 Databricks não oferece suporte a exclusões rígidas automaticamente. O senhor deve acessar refresh a tabela de destino para refletir essas informações.

  • O SCD tipo 2 não é compatível.

Tabelas

A seguir está uma lista não exaustiva de objetos do Salesforce não suportados:

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

    • Announcement
    • AppTabMember
    • CollaborationGroupRecord
    • ColorDefinition
    • ContentDocumentLink * No Salesforce API versão 59.0 e acima, o senhor pode contornar essa limitação se a consulta selecionar Id, LinkedEntityId, ou ContentDocumentId e nenhum outro campo. Isso requer a permissão Query All Files, que também exige a permissão View All Data.
    • ContentFolderItem
    • ContentFolderMember
    • DataStatistics
    • DatacloudDandBCompany
    • EntityParticle
    • FieldDefinition
    • FieldHistoryArchive
    • FlexQueueItem
    • FlowVariableView
    • FlowVersionView
    • IconDefinition
    • IdeaComment
    • NetworkUserHistoryRecent
    • OwnerChangeOptionInfo
    • PicklistValueInfo
    • PlatformAction
    • RelationshipDomain
    • RelationshipInfo
    • SearchLayout
    • SiteDetail
    • TaskWhoRelation
    • UserEntityAccess
    • UserFieldAccess
    • Vote
  • Objetos para monitoramento de eventos em tempo real:

    • ApiEvent
    • BulkApiResultEventStore
    • EmbeddedServiceDetail
    • EmbeddedServiceLabel
    • FormulaFunction
    • FormulaFunctionAllowedType
    • FormulaFunctionCategory
    • IdentityProviderEventStore
    • IdentityVerificationEvent
    • LightningUriEvent
    • ListViewEvent
    • LoginAsEvent
    • LoginEvent
    • LogoutEvent
    • Publisher
    • RecordActionHistory
    • ReportEvent
    • TabDefinition
    • UriEvent
  • Objetos que terminam com __b, __x ou __hd:

    • ActivityMetric
    • ActivityMetricRollup
    • Site