用途:在 Unity Catalog 中用 YAML 定义可复用、受治理的业务指标,将度量定义与维度分组分离,便于在仪表盘、Genie 和 SQL 查询间共享 KPI 层。适用于标准化指标(收入、订单数、转化率)、比率与去重计数等复杂聚合、窗口度量(移动平均、累计、同比、YTD)、星型或雪花模型联接,以及为预计算聚合启用物化。
主要能力:维度用于分组(如地区、日期、状态);度量必须为聚合表达式,查询时用 MEASURE() 包裹且不支持 SELECT *。支持全局 filter、joins 声明式定义、materialization(实验性,需无服务器计算)。相比普通视图,度量聚合不锁死,可安全重聚合比率,并可原生对接 AI/BI 仪表盘、Genie、告警、SQL 编辑器与 Catalog Explorer。
使用方式:可通过 SQL 创建,例如 CREATE OR REPLACE VIEW catalog.schema.orders_metrics WITH METRICS LANGUAGE YAML AS $$ ... $$;也可通过 MCP 工具 manage_metric_views 执行 create、alter、describe、query、drop、grant。查询示例如下:
SELECT Order Month, MEASURE(Total Revenue) AS total_revenue FROM catalog.schema.orders_metrics GROUP BY ALL;
MCP 创建示例:manage_metric_views(action="create", full_name="catalog.schema.orders_metrics", source="catalog.schema.orders", measures=[{"name": "Order Count", "expr": "COUNT(1)"}])。
前提与限制:需 Databricks Runtime 17.2+(YAML 1.1,或 16.4+ 支持 v0.1)、具备 CAN USE 权限的 SQL 仓库、源表 SELECT 及目标 schema 的 CREATE TABLE 与 USE SCHEMA 权限。维度/度量名含空格须用反引号;联接须写入 YAML 而非查询;物化目前为实验性且需无服务器计算。其余如价格、收费、平台支持等资料未提供。