了解使用 Databricks Lakeflow Connect 从 Salesforce 导入数据时的限制和注意事项。
常规 SaaS 连接器限制
本节中的限制适用于 Lakeflow Connect 中的所有 SaaS 连接器。
- 运行计划的管道时,警报不会立即触发。 而是在更新下一次运行时触发。
- 删除源表时不会自动删除目标表。 你必须手动删除目标表。 此行为与 Lakeflow Spark 声明性管道行为不一致。
- 在源维护期间,Databricks 可能无法访问数据。
- 如果源表名称与现有目标表名称冲突,则管道更新将失败。
- 多目标管道支持仅限 API。
- 可以选择重命名引入的表。 如果重命名管道中的表,它将变为仅限 API 的管道,并且不能再在 UI 中编辑管道。
- 列级选择和取消选择仅限于通过 API 实现。
- 如果在管道启动后选择列,连接器不会自动为新列回填数据。 若要引入历史数据,请手动对该表执行全面刷新。
- 即使两个表来自不同的源架构,Databricks 也无法在同一管道中引入具有相同名称的两个或多个表。
- 源系统假定游标列单调增加。
- 启用 SCD 类型 1 后,删除不会在更改数据流中生成明确的
delete事件。 对于可审核删除,如果连接器支持 SCD 类型 2,请使用它。 有关详细信息,请参阅 示例:使用 CDF 源数据处理 SCD 类型 1 和 SCD 类型 2。
身份验证
- 连接器支持使用手动刷新令牌的 OAuth。 但是,如果 Salesforce 轮换或撤销刷新令牌,连接器不会自动更新它。 必须获取新的刷新令牌并手动更新连接器配置。
数据类型
- 类型为
NUMBER和CURRENCY的 Salesforce 数据在引入时会损失三位数的精度。 这些值在 Salesforce 中的小数点之前可以有 18 位数字,但它们在 Databricks 中的小数点之前只有 15 位数字。
Pipelines
每个管道最多有 250 个对象。 但是,这些对象中支持的行数或列数没有限制。
不支持
base64、address、location或complexValue类型。 引入期间会自动删除这些列。Databricks 可以引入公式字段。 但是,Databricks 需要这些字段的完整快照。 这是因为 Salesforce 在公式输出更改时不会更新游标列,因此公式字段可以无提示更改,而不会被引入管道选取。 因此,管道延迟取决于 Salesforce 数据是否包括公式字段和 Salesforce 数据中的更新量。
Databricks 以与管道其余部分相同的节奏运行公式字段。 但是,非公式字段可能早于公式字段更新。
Databricks 将软删除视为插入和更新。 从 Salesforce 中删除某行时,它将在下一次同步数据时从青铜表中删除。 例如,假设你有一个每小时运行的管道。 如果在下午12:00同步,随后在下午12:30有一条记录被删除,那么删除情况要到下午1:00进行同步时才会反映出来。
存在一种边缘情况:如果管道在记录被删除后但从 Salesforce 的回收箱中清除前未运行,则 Databricks 会错过这些删除操作。 要从这种情况恢复,唯一的方法是进行完全刷新。
Databricks 不支持自动硬删除。 必须完全刷新目标表以反映这些更改。
表格
下面是不支持的 Salesforce 对象的非详尽列表:
具有
WHERE子句或LIMIT限制的对象:AnnouncementAppTabMemberCollaborationGroupRecordColorDefinition-
ContentDocumentLink* 在 Salesforce API 版本 59.0 及更高版本中,如果查询选择Id,LinkedEntityId或者ContentDocumentId没有其他字段,则可以绕过此限制。 若要引入此对象,必须具有View All Data权限。 ContentFolderItemContentFolderMemberDataStatisticsDatacloudDandBCompanyEntityParticleFieldDefinitionFieldHistoryArchiveFlexQueueItemFlowVariableViewFlowVersionViewIconDefinitionIdeaCommentNetworkUserHistoryRecentOwnerChangeOptionInfoPicklistValueInfoPlatformActionRelationshipDomainRelationshipInfoSearchLayoutSiteDetailTaskWhoRelationUserEntityAccessUserFieldAccessVote
用于实时事件监视的对象:
ApiEventBulkApiResultEventStoreEmbeddedServiceDetailEmbeddedServiceLabelFormulaFunctionFormulaFunctionAllowedTypeFormulaFunctionCategoryIdentityProviderEventStoreIdentityVerificationEventLightningUriEventListViewEventLoginAsEventLoginEventLogoutEventPublisherRecordActionHistoryReportEventTabDefinitionUriEvent
以
__b、__x或__hd结尾的对象:ActivityMetricActivityMetricRollupSite