Skip to main content
Databricks 端口允许通过向 Databricks 推送或从 Databricks 拉取数据,将 Databricks 集成到数据流中。

核心功能

  • Databricks Lakehouse 平台集成:支持 Personal Access Token 和 Azure Service Principal 身份验证。
  • HTTP Path 配置:用于定位特定的 Databricks 计算资源和集群。
  • 标准数据库端口操作:提供 Select、Lookup、Upsert 和 Stored Procedure 用于数据操作。
按照以下步骤将知行之桥连接到 Databricks。

建立连接

要允许知行之桥使用 Databricks 中的数据,必须首先建立到 Databricks 的连接。有两种方式可以建立此连接:
  • 将 Databricks 端口添加到工作流中。然后在设置窗格中,单击 Connection 下拉列表旁边的 Create。
  • 打开知行之桥系统设置 页面,然后打开 Connections 选项卡。单击 Add,选择 Databricks,然后单击 Next。
  • 登录过程仅在首次创建连接时需要。
  • Databricks 连接可以在多个 Databricks 端口之间重复使用。

输入连接设置

打开新的连接对话框后,请按照以下步骤操作:
  1. 输入连接信息:
    • Name — 连接的固定名称。
    • Type — 始终设置为 Databricks。
    • Auth Scheme — 用于连接的身份验证方案。选项为 Personal Access Token 和 Azure Service Principal。
  2. 根据所选 Auth Scheme 创建连接:
    • Personal Access Token — 输入以下信息:
      • Server — 托管 Databricks 的服务器主机名或 IP 地址。
      • HTTP Path — Databricks 实例上发送 API 请求的端点路径,通常格式为 /sql/1.0/warehouses/{warehouse_id}。
      • Access Token — Databricks 访问令牌。
    • Azure Service Principal — 输入以下信息:
      • Server — 托管 Databricks 的服务器主机名或 IP 地址。
      • HTTP Path — Databricks 实例上发送 API 请求的端点路径,通常格式为 /sql/1.0/warehouses/{warehouse_id}。
      • AzureTenantId — Microsoft Azure Active Directory 的租户 ID。
      • AzureClientId — Microsoft Azure Active Directory 应用程序的应用程序(客户端)ID。
      • Azure Client Secret — Microsoft Azure Active Directory 应用程序的应用程序(客户端)密码。
      • Azure Subscription Id — Microsoft Azure Databricks Service Workspace 的订阅 ID。
      • Azure Resource Group — Microsoft Azure Databricks Service workspace 的资源组名称。
      • Azure Workspace — Microsoft Azure Databricks Service Workspace 的名称。
  3. 如有必要,单击 Advanced 打开高级连接设置下拉菜单。在大多数情况下不需要这些设置。
  4. 单击 Test Connection,确保知行之桥可以使用所提供的信息连接到 Databricks。如果发生错误,请检查所有字段并重试。
  5. 单击 Add Connection 完成连接。
  6. 在端口配置窗格的 Connection 下拉列表中,选择新创建的连接。
  7. 单击 Save Changes。

选择一个操作

与 Databricks 建立连接后,必须选择 Databricks 端口将执行的操作。下表概述了每个操作及其在知行之桥工作流中的位置。

高级选项卡

高级选项卡上的许多设置都是从正在使用的数据源动态加载的,因此本文档中未介绍这些设置。可以在我们网站的在线帮助文件页面上找到数据源的详细信息。 下面描述的选项适用于所有数据源。

消息

保存至 Sent 文件夹和Sent 文件夹方案设置已弃用,默认处于隐藏状态。只有先前已启用这些设置或将其配置为非默认值的端口才会显示它们。若要保留成功处理的文件副本,请在工作流中右键单击该端口,选择显示成功路径,然后将成功路径连接到File 端口。

高级设置

高级设置 是依赖任意数据库驱动程序(例如 Database、CData 和 API 端口)以连接到各种数据源的端口的通用设置。

其它

其它设置 适用于特定用例。

自动化选项卡

自动化设置

与端口自动处理文件相关的设置。

性能

与分配给端口的资源相关的设置。

通知选项卡

与配置通知相关的设置。 在执行服务等级协议 (SLA) 之前,需要设置电子邮件通知。默认情况下,知行之桥使用通知选项卡上的全局设置。要为此端口使用其他设置,请启用 覆盖全局设置。 默认情况下,错误通知已启用,这意味着每当发生错误时都会发送电子邮件。要关闭它们,请取消选中 启用 复选框。 输入 主题(必填),然后可选地输入以逗号分隔的 收件人 电子邮件列表。

SLA 选项卡

与配置服务等级协议 (SLA) 相关的设置。 SLA 允许配置期望工作流中的端口发送或接收的数据量,并设置期望达到该数据量的时间范围。当 SLA 未满足时,知行之桥会发送电子邮件警告用户,并将 SLA 标记为 有风险,这意味着如果 SLA 很快仍未满足,则会被标记为 已违反。这使用户有机会介入并确定 SLA 未满足的原因,并采取适当措施。如果在风险时间段结束时仍未满足 SLA,SLA 会被标记为已违反,并再次通知用户。 要定义 SLA,请启用 预期数据量,然后单击 设置 选项卡。 空 SLA 配置
  • 如果端口具有单独的发送和接收操作,请使用单选按钮指定 SLA 适用的方向。
  • 在窗口的 预计至少 部分:
    • 设置期望处理的最小事务数(数量)
    • 使用 每 字段指定时间范围
    • 指定 SLA 应何时生效。如果选择 开始于,请填写日期和时间字段。
    • 勾选希望 SLA 生效的星期几。如有需要,使用下拉菜单选择 每天。
  • 在窗口的 将状态设置为“有风险” 部分,指定何时应将 SLA 标记为有风险。
    • 默认情况下,只有违反 SLA 后才会发送通知。若要更改此设置,请选中 发送“有风险”通知。
以下示例显示了为预计周一至周五每天接收 1000 个文件的端口配置的 SLA。如果尚未收到 1000 个文件,则会在时间段结束前 1 小时发送风险通知。 SLA 配置示例
如有必要,可以关闭 SLA 通知。这在维护窗口期间非常有用。单击导航栏上的 Settings,然后导航到 Alerts > General Alerts。单击平板和铅笔图标进行编辑,并取消选中 SLA Alerts 设置。

宏

在文件命名策略中使用宏可以提高组织效率和对数据的上下文理解。通过将宏合并到文件名中,可以动态包含标识符、时间戳和消息头信息等相关信息,为每个文件提供有价值的上下文。这有助于确保文件名反映对组织重要的详细信息。 知行之桥支持这些宏,它们都使用以下语法:%Macro%。

示例

某些宏(例如 %Ext% 和 %ShortDate%)不需要参数,但其他宏需要。所有带参数的宏都使用以下语法:%Macro:argument% 以下是一些带参数宏的示例:
  • %Header:headername%:其中 headername 是消息上消息头的名称。
  • %Header:mycustomheader% 替换为输入消息上设置的 mycustomheader 消息头的值。
  • %Header:ponum% 替换为输入消息上设置的 ponum 消息头的值。
  • %RegexFilename:pattern%:其中 pattern 是正则表达式模式。例如,%RegexFilename:^([\w][A-Za-z]+)% 会匹配并替换为文件名中的第一个单词,且不区分大小写(test_file.xml 替换为 test)。
  • %Vault:vaultitem%:其中 vaultitem 是保管库中项目的名称。例如,%Vault:companyname% 替换为保管库中存储的 companyname 项的值。
  • %DateFormat:format%:其中 format 是可接受的日期格式(详见示例日期格式)。例如,%DateFormat:yyyy-MM-dd-HH-mm-ss-fff% 替换为文件上的日期和时间戳。
还可以创建更复杂的宏,如以下示例所示:
  • 在一个文件名中组合多个宏:%DateFormat:yyyy-MM-dd-HH-mm-ss-fff%%EXT%
  • 包含宏之外的文本:MyFile_%DateFormat:yyyy-MM-dd-HH-mm-ss-fff%
  • 在宏中包含文本:%DateFormat:'DateProcessed-'yyyy-MM-dd_'TimeProcessed-'HH-mm-ss%