Compartir a través de


Vistas de métricas de Unity Catalog

Importante

Esta característica está en versión preliminar pública.

Las vistas de métricas proporcionan una manera centralizada de definir y administrar métricas empresariales básicas coherentes, reutilizables y reguladas. En esta página se explican las vistas de métricas, cómo definirlas, controlar el acceso y consultarlas en herramientas de nivel inferior.

¿Qué es una vista de métricas?

Las vistas de métricas abstraen lógica de negocios compleja en una definición centralizada, lo que permite a las organizaciones definir indicadores clave de rendimiento una vez y usarlos de forma coherente en herramientas de informes como paneles, espacios de Genie y alertas. Las vistas de métricas se definen en formato YAML y se registran en el catálogo de Unity. Puede crearlos mediante SQL o la interfaz de usuario del Explorador de catálogos. Al igual que cualquier otra tabla o vista, las vistas de métricas se pueden consultar mediante SQL.

Diagrama que muestra que las vistas de métricas se definen en tablas, vistas y consultas de origen y se consumen desde código y sin interfaces de código.

Una vista de métrica especifica un conjunto de definiciones de métricas, que incluyen dimensiones y medidas, basadas en un origen de datos o varios orígenes si se usa lógica de combinación. La source de la definición de la vista de métrica puede ser una vista, una tabla o una consulta SQL. Las combinaciones solo se admiten en vistas y tablas.

Una dimensión es un atributo categórico que organiza y filtra los datos, como nombres de producto, tipos de cliente o regiones. Las dimensiones proporcionan las etiquetas y agrupaciones necesarias para analizar las medidas de forma eficaz.

Una medida es un valor que resume la actividad empresarial, normalmente mediante una función de agregado como SUM() o AVG(). Las medidas se definen independientemente de las dimensiones, lo que permite a los usuarios agregarlas en cualquier dimensión en tiempo de ejecución. Por ejemplo, definir una medida habilita la total_revenue agregación por cliente, proveedor o región. Las medidas se usan normalmente como indicadores clave de rendimiento en informes y tableros.

El siguiente bloque de código muestra un ejemplo de cómo se definen las medidas y dimensiones en una vista de métrica:

version: 0.1

source: samples.tpch.orders
filter: o_orderdate > '1990-01-01'

dimensions:
  - name: Order Month
    expr: DATE_TRUNC('MONTH', o_orderdate)

  - name: Order Status
    expr: CASE
      WHEN o_orderstatus = 'O' then 'Open'
      WHEN o_orderstatus = 'P' then 'Processing'
      WHEN o_orderstatus = 'F' then 'Fulfilled'
      END

  - name: Order Priority
    expr: SPLIT(o_orderpriority, '-')[1]

measures:
  - name: Order Count
    expr: COUNT(1)

  - name: Total Revenue
    expr: SUM(o_totalprice)

  - name: Total Revenue per Customer
    expr: SUM(o_totalprice) / COUNT(DISTINCT o_custkey)

  - name: Total Revenue for Open Orders
    expr: SUM(o_totalprice) FILTER (WHERE o_orderstatus='O')

Vistas de métricas en comparación con las vistas estándar

Normalmente, las vistas estándar están diseñadas para responder a una pregunta empresarial específica. A menudo incluyen la lógica de agregación y las agrupaciones de dimensiones que se deben especificar cuando se crea la vista. Esto puede causar problemas cuando un usuario quiere consultar una dimensión no incluida en la vista original. Las medidas más complejas, como las relaciones o los recuentos distintos, a menudo no se pueden volver a agregar sin devolver resultados incorrectos.

Las vistas de métricas permiten a los autores definir medidas y dimensiones independientemente de cómo los usuarios filtran y agrupan los datos. Esta separación permite al sistema generar la consulta correcta en función de la selección del usuario, a la vez que conserva la lógica de métricas centralizada y coherente.

Ejemplo

Supongamos que quiere analizar los ingresos por cliente distinto en distintos niveles geográficos. Con una vista estándar, tendría que crear vistas independientes para cada agrupación, como por estado, región o país, o calcular todas las combinaciones de antemano mediante GROUP BY CUBE() y filtrar después. Estas soluciones alternativas aumentan la complejidad y pueden provocar problemas de rendimiento y gobernanza.

Con una vista de métrica, se define la métrica solo una vez y se puede agrupar por diferentes dimensiones cuando se consulta. Por ejemplo, la suma del ingreso dividida por el número distinto de clientes. A continuación, los usuarios pueden agrupar por cualquier dimensión de geografía disponible. El motor de consultas vuelve a escribir la consulta en segundo plano para realizar el cálculo correcto, independientemente de cómo se agrupan los datos.

Casos de uso para vistas de métricas

Las vistas de métricas resultan beneficiosas al:

  • Debe estandarizar las definiciones de métricas entre equipos y herramientas.
  • Quiere exponer métricas que no se pueden volver a agregar de forma segura, como ratios o recuentos distintos.
  • Quiere habilitar la segmentación y el filtrado flexibles para los usuarios empresariales, a la vez que mantiene la transparencia y la gobernanza a través de SQL.

Este enfoque ayuda a evitar incoherencias, reduce la duplicación y simplifica la experiencia del usuario al trabajar con métricas empresariales en toda la organización.

Definir una vista de métricas

Los usuarios con el CREATE TABLE privilegio en un esquema pueden crear vistas de métricas. Debe tener al menos privilegios SELECT en los objetos de origen. Puede crear vistas de métricas mediante el editor YAML en la interfaz de usuario del Explorador de catálogos o mediante SQL.

La definición de YAML para una vista de métrica incluye seis campos de nivel superior:

  • version: Tiene como valor predeterminado 0.1. Esta es la versión de la especificación de visualización de métricas.
  • source: Los datos de origen de la vista de métricas. Puede ser un recurso similar a una tabla o una consulta SQL.
  • joins: opcional. Se usa para LEFT JOIN la tabla de hechos definida en source con tablas de dimensiones como modelo de esquema de estrella.
  • filter: opcional. Expresión booleana SQL que se aplica a todas las consultas; equivalente a la WHERE cláusula .
  • dimensions: matriz de definiciones de dimensión, incluido el nombre y la expresión de la dimensión.
  • measures: matriz de columnas de expresión de agregado.

Las vistas de métricas se pueden componer, lo que le permite crear lógica en capas y reutilizables en una sola vista. Las dimensiones pueden hacer referencia a dimensiones definidas previamente y las medidas pueden hacer referencia a cualquier dimensión o medidas previamente definidas. Al definir nuevas dimensiones o medidas, también puede hacer referencia a columnas de uniones definidas en la vista de métricas.

En el ejemplo siguiente se explica cómo crear una vista de métrica mediante la interfaz de usuario de Azure Databricks. Consulte CREATE VIEW para obtener información sobre cómo definir vistas de métricas mediante SQL.

Para obtener un ejemplo completo que muestra cómo crear una vista de métricas, consulte Creación de una vista de métricas.

Ver o editar una vista de métricas

Cualquier usuario con SELECT privilegios en la vista de métricas puede ver la definición de YAML detallada. Puede editar la definición si es el propietario de la vista de métricas. Para ver detalles o editar una vista de métrica existente:

  1. Haga clic en el icono Datos.Catálogo en la barra lateral.
  2. Haga clic en el nombre de la vista de métricas que desea revisar.
  3. Haga clic en Editar para abrir el editor de YAML.

Consulte Referencia de YAML de la vista de métricas. Consulte ALTER VIEW para obtener información sobre cómo editar una vista de métrica mediante SQL.

Administrar permisos de vista de métricas

Las vistas de métricas son un objeto protegible del catálogo de Unity y siguen el mismo modelo de permisos que otras vistas. Consulte Privilegios de Unity Catalog y objetos protegibles.

Consumo de vistas de métricas

Puede consultar vistas de métricas de la misma manera que una vista estándar. Ejecute consultas desde cualquier editor de SQL que esté asociado a una instancia de SQL Warehouse u otro recurso de proceso que ejecute Databricks Runtime 16.4 o superior. Todas las evaluaciones de medida en una consulta de vista de métricas deben usar la función de agregación MEASURE.

Para obtener detalles completos y sintaxis, consulte measure función de agregado.

También puede usar vistas de métricas en el área de trabajo de Azure Databricks. Para obtener más información, consulte la documentación asociada:

Limitaciones

Las siguientes limitaciones se aplican a las vistas de métricas:

  • Las vistas de métricas no admiten el linaje.
  • Las vistas de métricas no admiten Delta Sharing.
  • No se admite la supervisión de Lakehouse.
  • No se admite la clasificación de datos (en beta).
  • No se admiten los JOIN en el momento de la consulta. Use CTE para combinar orígenes de datos.
  • No se admite SELECT *.
  • No se puede volver a agregar una medida. Por ejemplo, no se admiten expresiones como SUM(MEASURE(measure_name)) . Aplique agregaciones solo a campos base, no a medidas agregadas.
  • Las tablas combinadas no pueden incluir columnas de MAP tipo.
  • No se puede combinar una medida con ventana y un campo base agregado en la expresión MEASURE.