共用方式為

连接到数据源和外部服务

本页为配置 Azure Databricks 与外部数据源和服务之间的连接的管理员和 Power 用户提供了建议。

可以将 Azure Databricks 帐户连接到数据源,例如云对象存储、关系数据库管理系统、流式处理数据服务和企业平台(例如 CPM)。 还可以将 Azure Databricks 帐户连接到非存储外部服务。

配置与对象存储的连接

Azure Databricks 工作负荷使用的大多数数据都存储在云对象存储中,例如 Azure Data Lake Storage 或 AWS S3。 可以使用以下任一项来管理对云对象存储的访问:

配置到外部数据系统的连接

Databricks 提供了多个用于配置与外部数据系统的连接的选项。 下表概要介绍了这些选项:

选项 说明
查询联合连接器 Lakehouse Federation 提供对企业数据系统中数据的只读访问权限。 查询联合 使用安全的 JDBC 连接来联合到外部数据系统,例如 PostgreSQL 和 MySQL。 目录联合连接 外部目录,例如 Hive 元存储、AWS Glue 或 Snowflake Horizon 目录,以直接在文件存储中查询数据。
流式处理连接器 Azure Databricks 为许多流式处理数据系统提供优化的连接器。
对于所有流式处理数据源,必须生成提供访问权限的凭据,并将这些凭据加载到 Azure Databricks 中。 Databricks 建议使用机密存储凭据,因为你可以对所有配置选项和在所有访问模式下使用机密。
流式处理源的所有数据连接器都支持在定义流式处理查询时使用选项传递凭据。 请参阅 Lakeflow Connect 中的标准连接器
驱动程序 Azure Databricks 将外部数据系统的驱动程序包含在每个 Databricks Runtime 中。 可以选择安装第三方驱动程序以访问其他系统中的数据。 必须为每个表配置连接。 某些驱动程序包括写入访问权限。 请参阅连接到外部系统
对于只读查询联合,Lakehouse 联合身份验证始终优先于这些驱动程序。
JDBC 几个包含的外部系统驱动程序构建在本机 JDBC 支持之上,并且 JDBC 选项提供了用于配置与其他系统的连接的可扩展选项。 必须为每个表配置连接。 请参阅使用 JDBC 查询数据库
对于只读查询联合,Lakehouse 联合身份验证始终优先于这些驱动程序。

配置与外部服务的连接

Unity 目录使用名为 服务凭据的安全对象控制对非存储服务的访问。 服务凭据封装一个长期云凭据,该凭据提供对用户从 Azure Databricks 连接到的外部服务的访问权限。 请参阅 使用 Unity 目录连接到外部云服务

管理和请求对数据源和外部服务的访问权限

大多数连接方法都需要对外部数据源或服务以及 Azure Databricks 工作区具有提升的权限。 在典型组织中,很少有用户在 Azure Databricks 或外部数据和存储提供程序中拥有足够的权限来配置数据连接本身。

你的组织可能已使用此页面链接的文章中所述的其中一种模式配置了对数据源或服务的访问权限。 如果你的组织有一个定义完善的过程来请求访问数据和第三方服务,Databricks 建议遵循此过程。 如果不确定如何获取数据源的访问权限,此过程可能会有所帮助:

  1. 使用目录资源管理器查看可以访问的表和卷。 请参阅什么是目录资源管理器?

  2. 向团队成员或经理询问他们可以访问的数据源。

    • 大多数组织使用从其标识提供者(例如:Okta 或 Microsoft Entra ID)同步的组来管理工作区用户的权限。 如果团队的其他成员可以访问需要访问权限的数据源,请让工作区管理员将你添加到正确的组以授予访问权限。
    • 如果特定表、卷或数据源由同事配置,则个人应能够授予你对数据的访问权限。

某些组织将数据访问权限附加到特定的计算群集和 SQL 仓库。 这是一个旧式治理模型,但如果组织使用它,并且想要了解特定计算资源上可用的数据源,请联系“ 计算 ”选项卡上列出的计算创建者。