在 Microsoft Purview 中连接和管理 Azure Databricks

本文概述如何在 Microsoft Purview 中注册 Azure Databricks,以及如何向 Azure Databricks 进行身份验证并与之交互。 有关 Microsoft Purview 的详细信息,请阅读简介文章

支持的功能

元数据提取 完全扫描 增量扫描 限定范围扫描 分类 访问策略 沿袭
No No No

扫描 Microsoft Databricks 源时,Azure Purview 支持:

  • 提取技术元数据,包括:

    • Azure Databricks 工作区
    • Hive 服务器
    • 数据库
    • 包含列、外键、唯一约束和存储说明的表
    • 包含列和存储说明的视图
  • 提取外部表与 Azure Data Lake Storage Gen2/Azure Blob 资产(外部位置)之间的关系。

  • 基于视图定义提取表与视图之间的静态世系。

已知的限制

从数据源中删除对象后,后续扫描目前不会自动删除 Microsoft Purview 中的相应资产。

必备条件

  • 你的 Azure 帐户必须具有有效订阅。 创建帐户

  • 你必须具有有效的 Microsoft Purview 帐户

  • 需要 Azure 密钥保管库,并授予 Microsoft Purview 访问机密的权限

  • 需要拥有数据源管理员和数据读取者权限才能在 Microsoft Purview 治理门户中注册和管理源。 有关权限的详细信息,请参阅 Microsoft Purview 中的访问控制

  • 设置最新的自承载集成运行时。 有关详细信息,请参阅创建和配置自承载集成运行时。 支持的最低自承载集成运行时版本为 5.20.8227.2。

    • 确保在安装了自承载集成运行时的计算机上安装 JDK 11。 在新安装 JDK 后重启计算机,使其生效。

    • 确保在运行自承载集成运行时的计算机上安装 Visual C++ 可再发行程序包(Visual Studio 2012 更新 4 或更新版本)。 如果尚未安装此更新,请立即下载

  • 在 Azure Databricks 工作区中:

    • 生成个人访问令牌,并将其作为机密存储在 Azure 密钥保管库中。

    • 创建群集。 记下群集 ID - 可以在 Azure Databricks 工作区 ->“计算”-> 你的群集 ->“标记”->“自动添加的标记”->“ClusterId”中找到它。

    • 确保用户拥有以下权限,以便能够连接到 Azure Databricks 群集:

      • “可连接”权限,用于连接到正在运行的群集。
      • “可重启”权限。在连接时,如果群集处于已终止状态,将使用此权限来自动触发群集启动。

注册

本部分介绍如何使用 Microsoft Purview 治理门户在 Microsoft Purview 中注册 Azure Databricks 工作区。

  1. 转到你的 Microsoft Purview 帐户。

  2. 在左侧窗格中选择“数据映射”。

  3. 选择“注册”。

  4. 在“注册源”中,选择“Azure Databricks”>“继续”。

  5. 在“注册源(Azure Databricks)”屏幕上执行以下操作:

    1. 对于“名称”,请输入 Microsoft Purview 将列为数据源的名称。

    2. 对于“Azure 订阅”和“Databricks 工作区名称”,请从下拉列表中选择要扫描的订阅和工作区。 系统会自动填充 Databricks 工作区 URL。

    3. 从列表中选择连接。

    注册 Azure Databricks 源的屏幕截图。

  6. 选择“完成”。

扫描

提示

若要排查与扫描有关的任何问题,请执行以下操作:

  1. 确认已满足所有先决条件
  2. 查看扫描故障排除文档

使用以下步骤扫描 Azure Databricks 以自动识别资产。 若要大致了解有关扫描的更多信息,请参阅 Microsoft Purview 中的扫描和引入

  1. 在管理中心,选择“集成运行时”。 确保设置了自承载集成运行时。 如果未设置,请按照创建和管理自承载集成运行时中的步骤进行设置。

  2. 转到“源”。

  3. 选择已注册的 Azure Databricks。

  4. 选择“+ 新建扫描”。

  5. 提供以下详细信息:

    1. 名称:输入扫描的名称。

    2. 通过集成运行时进行连接:选择已配置的自承载集成运行时。

    3. 凭据:选择用于连接到数据源的凭据。 请确保:

      • 在创建凭据时选择“访问令牌身份验证”。
      • 在相应的框中,提供你在先决条件部分创建的个人访问令牌的机密名称。

      有关详细信息,请参阅 Microsoft Purview 中用于源身份验证的凭据

    4. 群集 ID:指定 Microsoft Purview 要连接到的并对其启动扫描的群集 ID。 可以在 Azure Databricks 工作区 ->“计算”-> 你的群集 ->“标记”->“自动添加的标记”->“ClusterId”中找到此 ID。

    5. 装入点:将外部存储手动装载到 Databricks 时,提供装入点和 Azure 存储源位置字符串。 使用 /mnt/<path>=abfss://<container>@<adls_gen2_storage_account>.dfs.core.chinacloudapi.cn/;/mnt/<path>=wasbs://<container>@<blob_storage_account>.blob.core.chinacloudapi.cn 格式。 它用于捕获 Microsoft Purview 中表与相应存储资产之间的关系。 此设置是可选的,如果未指定,则不会检索此类关系。

      可以通过在笔记本中运行以下 Python 命令来获取 Databricks 工作区中的装入点列表:

      dbutils.fs.mounts()
      

      它会输出所有装入点,如下所示:

      [MountInfo(mountPoint='/databricks-datasets', source='databricks-datasets', encryptionType=''),
      MountInfo(mountPoint='/mnt/ADLS2', source='abfss://samplelocation1@azurestorage1.dfs.core.chinacloudapi.cn/', encryptionType=''),
      MountInfo(mountPoint='/databricks/mlflow-tracking', source='databricks/mlflow-tracking', encryptionType=''), 
      MountInfo(mountPoint='/mnt/Blob', source='wasbs://samplelocation2@azurestorage2.blob.core.chinacloudapi.cn', encryptionType=''),
      MountInfo(mountPoint='/databricks-results', source='databricks-results', encryptionType=''),
      MountInfo(mountPoint='/databricks/mlflow-registry', source='databricks/mlflow-registry', encryptionType=''), MountInfo(mountPoint='/', source='DatabricksRoot', encryptionType='')]  
      

      此示例指定的装入点如下:

      /mnt/ADLS2=abfss://samplelocation1@azurestorage1.dfs.core.chinacloudapi.cn/;/mnt/Blob=wasbs://samplelocation2@azurestorage2.blob.core.chinacloudapi.cn

    6. 架构:要导入的架构的子集,以分号分隔的列表形式表示。 例如,schema1;schema2。 如果该列表为空,则会导入所有用户架构。 默认情况下,所有系统架构和对象都将被忽略。

      可接受的架构名称模式可以是静态名称,也可以包含通配符 %。 例如:A%;%B;%C%;D

      • 以 A 开头或
      • 以 B 结尾或
      • 包含 C 或
      • 等于 D

      不能使用 NOT 和特殊字符。

      注意

      自承载集成运行时版本 5.32.8597.1 及更高版本支持此架构筛选器。

    7. 最大可用内存:客户计算机上可供扫描进程使用的最大内存 (GB)。 此值取决于要扫描的 Azure Databricks 的大小。

      注意

      根据经验,应该为每 1000 个表提供 1GB 内存。

    设置 Azure Databricks 扫描的屏幕截图。

  6. 选择“继续”。

  7. 对于“扫描触发器”,可以选择是设置一个计划还是运行一次扫描。

  8. 查看扫描,然后选择“保存并运行”。

扫描成功完成后,请参阅如何浏览和搜索 Azure Databricks 资产

查看扫描和扫描运行情况

若要查看现有扫描,请执行以下操作:

  1. 转到 Microsoft Purview 门户。 在左窗格中,选择“数据映射”。
  2. 选择数据源。 可以在“最近使用的扫描”下查看该数据源上的现有扫描列表,或者可以在“扫描”选项卡上查看所有扫描。
  3. 选择要查看结果的扫描。 窗格会显示先前的所有扫描运行,以及每次扫描运行的状态和指标。
  4. 选择运行 ID 以检查扫描运行详细信息

管理扫描

若要编辑、取消或删除扫描:

  1. 转到 Microsoft Purview 门户。 在左窗格中,选择“数据映射”。

  2. 选择数据源。 可以在“最近使用的扫描”下查看该数据源上的现有扫描列表,或者可以在“扫描”选项卡上查看所有扫描。

  3. 选择要管理的扫描。 然后,可以:

    • 通过选择“编辑扫描”来编辑扫描。
    • 通过选择“取消扫描运行”来取消正在进行的扫描。
    • 通过选择“删除扫描”来删除扫描。

注意

  • 删除扫描不会删除以前扫描中创建的类别资产。

浏览和搜索资产

扫描 Azure Databricks 源后,可以浏览数据目录搜索数据目录,以查看资产详细信息。

沿袭

请参阅支持的功能部分来了解支持的 Azure Databricks 方案。 若要详细了解世系的常规信息,请参阅数据世系世系用户指南

转到 Hive 表/视图资产 ->“世系”选项卡可以看到资产关系(如果适用)。 对于表与外部存储资产之间的关系,你将看到 Hive 表资产和存储资产是直接双向连接的,因为它们相互影响。 如果在 create table 语句中使用装入点,则需要在扫描设置中提供装入点信息才能提取此类关系。

显示 Azure Databricks 世系示例的屏幕截图。

后续步骤

现在你已经注册了源,请按照以下指南来详细了解 Microsoft Purview 和你的数据: