连接到数据源
本文就管理员和其他 Power User 如何配置 Azure Databricks 和数据源之间的连接提供了有见地的建议。 如果尝试确定是否有权从外部系统读取数据,请先查看工作区中有权访问的数据。 请参阅发现数据。
注意
有关连接到不一定是数据源的外部服务的信息,请参阅 使用服务凭据管理对外部云服务的访问。
可以将 Azure Databricks 帐户连接到数据源,例如云对象存储、关系数据库管理系统、流式处理数据服务和企业平台(例如 CPM)。 配置连接所需的特定权限取决于数据源、Azure Databricks 工作区中的权限配置方式、与源中的数据交互所需的权限、数据治理模型和用于连接的首选方法。
大多数方法都需要对数据源和 Azure Databricks 工作区具有提升的权限,以配置集成系统所需的权限。 没有这些权限的用户应请求帮助。 请参阅请求访问数据源。
配置对象存储连接
云对象存储为在 Azure Databricks 上存储大多数数据提供了基础。 若要详细了解云对象存储以及 Azure Databricks 存储数据的位置,请参阅 Azure Databricks 在何处写入数据?
Databricks 建议使用 Unity Catalog 来配置对云对象存储的访问权限。 Unity Catalog 为云对象存储中的结构化和非结构化数据提供数据治理。 请参阅 使用 Unity 目录连接到云对象存储和服务。
不使用 Unity Catalog 的客户必须使用旧方法配置连接。 请参阅配置对 Azure Databricks 云对象存储的访问权限。
若要配置网络到云对象存储,请参阅网络。
配置与外部数据系统的连接
Databricks 根据你的需求就配置与外部数据系统的连接建议多个选项。 下表概要介绍了这些选项:
选项 | 说明 |
---|---|
Lakehouse Federation | 提供对企业数据系统中数据的只读访问权限。 通过 Unity Catalog 在目录或架构级别配置连接,将多个表与单个配置同步。 请参阅“什么是 Lakehouse Federation?”。 |
Partner Connect | 利用技术合作伙伴解决方案连接到外部数据源,并自动实现将数据引入湖屋。 某些解决方案还包括反向 ETL,以及从外部系统直接访问湖屋数据。 请参阅什么是 Databricks Partner Connect? |
驱动程序 | Azure Databricks 将外部数据系统的驱动程序包含在每个 Databricks Runtime 中。 可以选择安装第三方驱动程序以访问其他系统中的数据。 必须为每个表配置连接。 某些驱动程序包括写入访问权限。 请参阅连接到外部系统。 |
JDBC | 几个包含的外部系统驱动程序构建在本机 JDBC 支持之上,并且 JDBC 选项提供了用于配置与其他系统的连接的可扩展选项。 必须为每个表配置连接。 请参阅使用 JDBC 查询数据库。 |
连接到流式处理数据源
Azure Databricks 为许多流式处理数据系统提供优化的连接器。
对于所有流式处理数据源,必须生成提供访问权限的凭据,并将这些凭据加载到 Azure Databricks 中。 Databricks 建议使用机密存储凭据,因为你可以对所有配置选项和在所有访问模式下使用机密。
流式处理源的所有数据连接器都支持在定义流式处理查询时使用选项传递凭据。 请参阅配置流式处理数据源。
请求访问数据源
在许多组织中,大多数用户对 Azure Databricks 或外部数据源没有足够的权限来配置数据连接。
你的组织可能已使用本页链接的文章中所述的模式之一配置了对数据源的访问权限。 如果你的组织对于请求访问数据有一个清楚明确的过程,Databricks 建议遵循此过程。
如果不确定如何获取数据源的访问权限,此过程可能会有所帮助:
- 使用目录资源管理器查看可以访问的表和卷。 请参阅什么是目录资源管理器?。
- 向团队成员或经理询问他们可以访问的数据源。
- 大多数组织使用从其标识提供者(例如:Okta 或 Microsoft Entra ID)同步的组来管理工作区用户的权限。 如果团队的其他成员可以数据源,而你却需要访问权限,请让工作区管理员将你添加到正确的组以授予访问权限。
- 如果特定表、卷或数据源由某个同事配置,则该同事应有权向你授予对这些数据的访问权限。
- 某些组织通过设置计算群集和 SQL 仓库来配置数据访问权限。
- 对数据源的访问权限可能因计算而异。
- 可以在“计算”选项卡上查看计算创建者。联系创建者,询问应可访问的数据源。