托管连接器常见问题解答

本文解答了有关 Databricks Lakeflow Connect 中托管连接器的常见问题。 有关特定于连接器的常见问题解答,请参阅连接器的文档。

Databricks 支持哪些托管连接器?

Lakeflow Connect 为 Salesforce、SQL Server、ServiceNow 和 Google Analytics 提供托管连接器。 若要获取路线图或提前访问专用预览版连接器,请联系客户团队。

托管连接器支持哪些接口?

所有托管连接器都支持使用 Databricks API 和 Databricks 资产捆绑包创建管道。 大多数连接器还支持从以下入口点在 UI 中创建管道:

  • “添加数据”页 (数据引入
  • “作业和管道”页面(新建>引入管道
  • 新作业的“任务”窗格(添加任务>+ 新建引入管道类型>管道

下表总结了每个连接器支持哪些接口。

连接器 基于用户界面的管道设计 基于 API 的管道编写 Databricks 资产捆绑包
Salesforce 是的 是的 是的
Workday 是的 是的
SQL Server 是的 是的 是的
ServiceNow 是的 是的 是的
GA4 是的 是的 是的
SharePoint 是的 是的

托管连接器如何处理架构演变?

除非选择通过显式指定要引入的列来选择退出,否则所有托管连接器都会自动处理添加和删除的列。

  • 当源中出现新列时,Databricks 会在管道的下一次运行中自动引入该列。 对于在架构更改之前显示的列中的任何行,Databricks 会将值留空。 您可以选择不参与自动列引入,通过 API 列出特定的列来进行引入,或者在 UI 中禁用任何将来的列引入。
  • 从源中删除列时,Databricks 不会自动删除它。 相反,连接器使用表属性将已删除的列设置为目标中的“非活动”。 如果以后另一列同名,则管道会失败。 在这种情况下,您可以执行表的全面刷新,或手动删除不活跃的列。

同样,连接器可以处理新的和已删除的表。 如果引入整个架构,则除非选择退出,否则 Databricks 会自动引入任何新表。如果在源中删除表,连接器会将其设置为目标中的 inactive。 请注意,如果选择引入整个架构,则应查看连接器每个管道的表数限制。

其他架构更改取决于源。 例如,Salesforce 连接器会将列重命名视作列删除和新增,并根据上述行为自动进行更改。 但是,SQL Server 连接器需要完全刷新受影响的表才能继续引入。

下表总结了每个连接器可以自动处理哪些架构更改:

连接器 新列和已删除列 数据类型更改 列重命名 新表
Salesforce 是的 是的 - 作为新列(新名称)处理,并删除列(旧名称)。 不需要完全刷新。 是 - 如果引入整个架构。
Workday 是的 是的 - 作为新列(新名称)处理,并删除列(旧名称)。 不需要完全刷新。 不適用
SQL Server 是的 是 - 列已重命名。 需要完全刷新。 是 - 如果引入整个架构。
ServiceNow 是的 是的 - 作为新列(新名称)处理,并删除列(旧名称)。 不需要完全刷新。 是 - 如果引入整个架构。
GA4 是的 是的 - 作为新列(新名称)处理,并删除列(旧名称)。 不需要完全刷新。 是 - 如果引入整个架构。

是否可以自定义托管连接器?

可以选择引入的对象、目标、计划、权限、通知等。 无法自定义数据摄取过程本身,因为这些连接器由系统完全管理。 若要进一步进行自定义,可以使用 Lakeflow Spark 声明式管道或结构化流式处理。

托管连接器、Lakehouse Federation 和 Delta Sharing 之间有什么差别?

使用 Lakehouse Federation 可以在不移动数据的情况下查询外部数据源。 使用 Delta Sharing 可以跨平台、云和区域安全地共享实时数据。

在托管连接器、Lakehouse Federation 和 Delta Sharing 之间进行选择时,对于以下场景,可以选择 Delta Sharing:

  • 限制数据重复。
  • 查询尽可能最新的数据。

对于以下情形,请选择 Lakehouse 联邦系统:

  • 针对 ETL 管道执行特别报告或概念证明工作。

托管连接器和自动加载程序之间的区别是什么?

使用托管连接器可以增量引入来自 Salesforce 等 SaaS 应用程序的数据,以及 SQL Server 等数据库。 自动加载器是一个云对象存储连接器,可让你在文件到达 S3、ADLS 和 GCS 后以增量方式逐步引入文件。 它与结构化流式传输和 Lakeflow Spark 声明式管道兼容,但不提供完全托管的数据摄取管道。

托管连接器能否写回数据源?

否。 如果你对此功能感兴趣,请联系你的帐户团队。

托管连接器是否在所有区域中可用?

否。 请参阅 无服务器计算功能可用性

管道是否可以写入多个目标架构?

所有托管 SaaS 连接器(如 Salesforce、Workday 和 ServiceNow)的 Lakeflow Connect API 都支持此功能。

如果选择使用此功能,您的数据流将仅限于 API。 无法在 UI 中编辑它。

可以更改所引入表的名称?

所有托管连接器的 Lakeflow Connect API 都支持此功能。

如果选择使用此功能,您的数据流将仅限于 API。 不能在 UI 中编辑仅限 API 的管道。

对于要重命名的每个表,添加包含所需表名称的 destination_table 配置。

如果管道在计划运行下一次更新(更新 N+1)时仍在运行(更新 N),会发生什么情况?

Databricks 跳过更新 N+1,在确认更新 N 已按时完成后,继续进行更新 N+2。

当引入管道被删除时,目标表会怎么样?

删除引入管道时,将删除目标表。

托管连接器如何定价?

托管连接器具有基于计算的定价模型。

SaaS 源(如 Salesforce 和 Workday)仅在无服务器基础结构上运行,会产生无服务器 Lakeflow Spark 声明性管道 DBU 费用。

对于 SQL Server 等数据库源,引入网关可以在经典模式或无服务器模式下运行,具体取决于源,引入管道在无服务器上运行。 因此,您可以同时获得经典和无服务器 Lakeflow Spark 声明性管道的 DBU 费用。

有关费率详细信息,请参阅 Lakeflow Spark 声明性管道定价页

能否在目标表上启用 Delta Lake 更改数据源?

所有目标表都已启用此功能。

连接器特定的常见问题解答

有关特定于连接器的常见问题解答,请参阅连接器的文档: