Important
此功能目前以公共预览版提供。 工作区管理员可以从 预览 页控制对此功能的访问。 请参阅 Manage Azure Databricks 预览版。
如 功能视图中所述,可以在 Unity 目录中将功能视图注册为逻辑功能定义,然后具体化以提高效率的训练和推理。 在 Unity 目录中创建和注册功能视图定义后,可以选择具体化它们。 可从目录资源管理器查看功能视图定义和具体化状态,以便进行发现和调试。
Permissions
- 若要搜索并打开功能视图定义,您需要在功能视图上具有
READ FEATURE权限,同时在父目录和架构上具有USE CATALOG和USE SCHEMA权限。 - 查看具体化功能的状态需要相同的
READ FEATURE权限。 但是,若要跟踪基础具体化管道的链接,需要访问运行该管道的工作区。
使用目录浏览器
特征视图会显示在 Unity Catalog 的 目录资源管理器中,位于目录和架构内的 Functions 标题下,并与您可能拥有的任何其他函数一起显示。 可以使用图标将功能视图与其他函数区分开来。 功能视图在“架构详细信息”视图的 “函数 ”选项卡中也可见。 有关 Unity Catalog 架构的详细信息,请参阅 Azure Databricks 中的架构是什么?
浏览功能视图
下面是目录资源管理器中的“功能视图详细信息”页示例。 它包含“定义”部分和具体化功能部分,如下所述。
定义部分
定义部分显示有关功能的基本信息,其中包含指向基础源表的链接。 功能视图是 Unity 目录安全对象,因此主体可以在“权限”选项卡中授予权限,就像任何 Unity 目录安全对象一样。 有关 功能视图 定义的详细信息,请参阅功能视图。
具体化功能部分
具体化功能视图时,Databricks 将其计算特征值存储在表中,以便可以重复使用它们进行模型训练、批量评分和联机服务。 具体化特征部分显示这些表的状态:
- 每个物化特征都由一个表提供支持,该表存储静态的特征数据。 离线特征存储在 Delta 表中,而在线特征存储在在线 Feature Store 中。 可以单击以查看后盾表。
- 特征具体化为一个组,因此单个表包含多个特征,每个特征都存储为一列。
- 每个后盾表都是独立的 Unity 目录对象,因此你可以像管理任何其他 Unity 目录表一样对其进行访问。
- 为每个具体化特征显示最后一次具体化时间及其成功或失败。
物化失败
在计算任何特征值之前,Databricks 将为脱机和联机具体化功能运行验证作业。 此作业将面向用户的错误(例如权限或配置错误)与平台错误分开。 验证错误会直接显示在已物化的特征上,以便您更正根本问题。
如果底层物化管道在验证通过后失败,这很可能是平台错误,你可以将此问题报告给 Databricks 支持团队进行调查。
特征具体化的方式取决于其 触发器:
- 使用
CronSchedule或TableTrigger的功能会分批实例化。 结果和任何错误消息都会显示在“已具体化功能”部分中。 - 使用
StreamingMode触发器的功能由 Lakeflow 声明式管道实现。 功能视图定义通过验证后,将显示指向管道的链接,以便查看它。
由于具体化管道是系统管理的,因此不能直接修改它们,但可以使用 REST API 或 功能工程 SDK 删除这些具体化功能及其关联的管道。
局限性
- 功能视图批处理具体化目前在 UI 中的“作业和管道”选项卡中不可见。 但是,流式处理触发器的功能视图具体化管道在“系统托管”选项卡下的“作业和管道”选项卡中可见。
- 目前无法在“目录资源管理器”中搜索特征,并且特征也不会显示在最近选项卡下。不过,您可以在“目录资源管理器”中导航到特征视图。
- 当前无法针对具体化管道设置警报。