Pular para o conteúdo principal

Criar view de métricas

O Catalog Explorer fornece uma interface visual para criar views de métricas. Defina campos e medidas interativamente, sem escrever uma definição YAML.

Esta página mostra como construir uma view de métricas na IU do Explorador de Catálogos. Para um exemplo mais complexo com joins e medidas avançadas, consulte Tutorial: construir uma view de métricas com joins e modelagem de dados.

Pré-requisitos

Antes de criar uma view de métrica, verifique se você possui as seguintes permissões:

  • Privilégios SELECT no ativo tipo tabela ou consulta SQL usado como fonte.
  • Privilégios CREATE TABLE e USE SCHEMA no esquema onde você deseja criar a view de métricas.
  • Privilégio USE CATALOG no catálogo pai.
  • CAN USE permissão em um SQL warehouse ou outro recurso de compute executando o Databricks Runtime 17.3 ou superior.

Um administrador de metastore ou proprietário de catálogo pode conceder todos esses privilégios. Um proprietário de esquema ou usuário com privilégio MANAGE pode conceder privilégios USE SCHEMA e CREATE TABLE no esquema.

Criar uma view de métricas

Criar uma view de métricas no Explorador de Catálogos usando um dos seguintes métodos:

  • Editor de IU : na guia IU , defina campos e medidas interativamente, sem escrever código.
  • Editor YAML : clique no botão <> para editar a definição diretamente. Para a sintaxe, consulte Referência de Sintaxe YAML da View de Métricas. É possível também usar uma definição YAML em uma declaração SQL para criar uma view de métricas. Para o exemplo completo em YAML e SQL, consulte Definir uma view de métricas em SQL ou YAML.
  • Genie Code : abra o Genie Code no botão Ícone de código do Sparkle genie. no canto superior direito e descreva o que deseja em linguagem natural. Consulte Usar Genie Code.

Os passos a seguir usam a tab **UI** e a samples.tpch.orders tabela, disponível em cada workspace, para construir uma view de métrica de analítica de ventas de exemplo. A view de métrica concluída corresponde à definição em Defina uma view de métrica em SQL ou YAML. Para saber mais sobre este dataset, consulte Datasets de exemplo.

Passo 1: Criar a view de métricas e abrir o editor

  1. Clique em Ícone de dados. Catálogo na barra lateral do workspace.
  2. Utilize a barra de pesquisa para encontrar samples.tpch.orders e clique no nome da tabela.
  3. Clique em Criar > View de métricas . Na caixa de diálogo Criar view de métricas , insira um nome, selecione um catálogo e um destino de esquema e clique em Criar .

O editor abre na tab UI . O editor adiciona automaticamente todas as colunas de origem à tab Campos e adiciona uma medida de amostra COUNT(*).

A interface de edição da view de métricas no Explorador de Catálogos.

Ao editar um campo, defina sua expressão em um de dois modos:

  • Construtor : na seção Expressão , selecione nas listas suspensas com reconhecimento de contexto, e o editor compõe a expressão SQL para você. As escolhas disponíveis mudam com base no tipo de coluna e nos valores.
  • Personalizado : Insira a expressão SQL diretamente.

Os passos a seguir alternam entre os dois modos com base na complexidade de cada expressão. Use o Construtor para transformações e agregações de colunas simples e alterne para Personalizado para expressões que o Construtor não consegue compor, como instruções CASE e medidas compostas.

Passo 2: Adicionar um join

O exemplo faz o join da tabela customer para que os atributos do cliente estejam disponíveis como campos. Para adicionar o join, clique no botão de join no canto superior direito do editor:

  1. Para o source to join, selecione samples.tpch.customer e clique em Adicionar .
  2. Insira customer como o Nome do join .
  3. Use os menus suspensos para definir a condição de join para o_custkey = c_custkey. Para adicionar mais de uma coluna de junção, clique em **+ Chave de Join**. Para definir uma condição diferente de igualdade, clique em **Expressão** e refine a condição.
  4. Em **Cardinalidade de Junção**, selecione **Muitos para um**. Para obter orientação sobre como escolher uma cardinalidade, consulte Cardinalidade de junção.
  5. Selecione No máximo uma correspondência em desempenho da consulta. Cada pedido corresponde a, no máximo, um cliente, então esta otimização é segura e define at_most_one_match: true na definição YAML.
  6. Click join .
  7. Na caixa de diálogo Adicionar campos , selecione c_mktsegment e, em seguida, clique em Adicionar 1 campo . É possível adicionar um campo de join a qualquer momento após o join ter sido adicionado.

Joins combinam a tabela de origem com outras tabelas ou consultas. Para conceitos de modelagem de join, incluindo esquemas star e snowflake, e padrões YAML, consulte Trabalhar com joins.

o Passo 3: definir um filtro

A definição YAML completa nesta página inclui um filtro que limita a view de métrica a pedidos feitos após 1º de janeiro de 1990. Para definir o filtro:

  1. Clique Ícone de filtro. em **Filtrar** no canto superior direito do editor de view de métricas.
  2. Defina o filtro em um de dois modos:
    • Construtor: Selecione a o_orderdate Coluna, o Operador > e o 1990-01-01Valor.
    • **Personalizado**: Escreva a expressão SQL.o_orderdate > '1990-01-01'

Um filtro se aplica a todas as queries que fazem referência à view de métricas. Para conceitos de modelagem de filtro e padrões YAML, consulte Aplicar filtros.

Passo 4: Adicionar campos

O exemplo define três campos: duas colunas transformadas da fonte e uma coluna da tabela customer unida. Campos, também chamados de dimensões, comportam-se como colunas de tabela comuns. Um campo pode ser uma coluna categórica usada para agrupar e filtrar, ou uma coluna numérica não agregada que você pode agregar no momento da consulta. Para saber mais sobre a modelagem de campos, consulte Campos.

O editor adiciona todas as colunas de origem à tab **Fields** automaticamente. Para corresponder ao exemplo, remova as colunas desnecessárias para que apenas o_orderdate, o_orderstatus e c_mktsegment permaneçam.

Para remover um campo:

  1. Clique na tab Campos.
  2. Clique na caixa de seleção à esquerda do nome do campo para selecionar os campos que deseja remover.
  3. Clique em Excluir .

Para excluir campos individuais, use o Ícone de menu kebab. à direita do nome do campo.

Ao editar um campo, você também pode adicionar metadados:

  • Nome de exibição : um rótulo descritivo.
  • Comentário : uma descrição do campo.
  • Sinônimos : nomes alternativos que ajudam as ferramentas de AI a descobrir o campo. Consulte Sinônimos.
  • Formato : formatação de dados personalizada que controla como os valores são exibidos. O formato está disponível apenas para colunas numéricas, de data e de data/hora. Consulte Especificações de formato.
  • Tags controladas : tags controladas para classificação e governança.

O editor de campo na UI da view de métricas.

Para definir cada campo, clique em seu nome na **tab Campos**, crie sua expressão e adicione um comentário opcional. Para executar a transformação e view o resultado, clique em Ícone Reproduzir **Preview**.

  1. Mês do Pedido: No modo **Builder**, selecione o_orderdate e aplique uma transformação de mês para DATE_TRUNC('MONTH', o_orderdate) produzir. Adicione o comentário Month of order.

  2. Status do Pedido : No modo Personalizado , adicione o comentário Status of order e insira a seguinte expressão:

    SQL
    CASE
    WHEN o_orderstatus = 'O' THEN 'Open'
    WHEN o_orderstatus = 'P' THEN 'Processing'
    WHEN o_orderstatus = 'F' THEN 'Fulfilled'
    END
  3. Segmento de Mercado: No modo **Builder**, selecione a c_mktsegment coluna da tabela customer com join. Adicione o comentário Customer market segment.

Passo 5: adicionar medidas

O exemplo define três medidas. Medidas são expressões agregadas que produzem métricas de negócios, como receita total ou contagem de pedidos. O editor adiciona uma medida COUNT(*) automaticamente; você pode editá-la ou removê-la.

Ao editar uma medida, você também pode adicionar um Nome de exibição , Comentário , Sinônimos , Formato e Tags governadas , os mesmos metadados disponíveis para campos.

Para adicionar cada medida, na tab **Medidas**, clique em **+**, crie sua expressão e adicione um comentário opcional. Para executar a agregação e ver o resultado, clique Ícone Reproduzir em **Pré-visualizar**. Ao adicionar uma medida, as sugestões do Genie aparecem na parte superior do painel do editor de medidas; clique em uma sugestão para criar essa medida.

  1. Contagem de Pedidos : No modo Builder , selecione a agregação Count para produzir COUNT(1). Adicione o comentário Total number of orders.
  2. **Receita Total**: No modo **Construtor**, selecione o_totalprice e a agregação **Soma** para SUM(o_totalprice) produzir. Adicione o comentário Sum of all order prices.
  3. Receita Total por Cliente : No modo Personalizado , insira SUM(o_totalprice) / COUNT(DISTINCT o_custkey). Adicione o comentário Average revenue per unique customer.

Pré-visualize uma medida na UI da view de métrica.

Para adicionar uma medida de janela para cálculos de séries temporais, como médias móveis ou totais acumulados, clique em + Janela ao editar a medida. Consulte Medidas de janela.

Passo 6: Salvar a view de métricas

Clique em Salvar . A view de métrica concluída corresponde à definição em Definir uma view de métrica em SQL ou YAML.

Defina uma view de métricas em SQL ou YAML

Em vez de criar uma view de métricas na UI, você pode defini-la diretamente em YAML ou em SQL usando a instrução CREATE VIEW com a cláusula WITH METRICS. A seguir está a definição completa da view de métricas de exemplo. É uma view filtrada de samples.tpch.orders unida a samples.tpch.customer, com campos para mês do pedido, status do pedido e segmento de mercado do cliente, e medidas para contagem de pedidos, receita total e receita por cliente.

nota

Estes exemplos utilizam a palavra-chave fields. Ao construir uma view de métricas no editor de baixo código, o YAML gerado utiliza a palavra-chave dimensions equivalente. Consulte Campos.

Definição YAML

Para definir a view de métricas diretamente em YAML, utilize a seguinte definição:

Visualizar a definição YAML

YAML
version: 1.1
comment: 'Orders KPIs for sales analysis'
source: samples.tpch.orders

joins:
- name: customer
source: samples.tpch.customer
'on': o_custkey = c_custkey
rely:
at_most_one_match: true

filter: o_orderdate > '1990-01-01'

fields:
- name: Order Month
expr: DATE_TRUNC('MONTH', o_orderdate)
comment: 'Month of order'

- name: Order Status
expr: CASE
WHEN o_orderstatus = 'O' THEN 'Open'
WHEN o_orderstatus = 'P' THEN 'Processing'
WHEN o_orderstatus = 'F' THEN 'Fulfilled'
END
comment: 'Status of order'

- name: Market Segment
expr: customer.c_mktsegment
comment: 'Customer market segment'

measures:
- name: Order Count
expr: COUNT(1)
comment: 'Total number of orders'

- name: Total Revenue
expr: SUM(o_totalprice)
comment: 'Sum of all order prices'

- name: Total Revenue per Customer
expr: SUM(o_totalprice) / COUNT(DISTINCT o_custkey)
comment: 'Average revenue per unique customer'

Para obter detalhes completos da sintaxe YAML, consulte referência de sintaxe YAML da view de métricas.

Instrução SQL

Para criar a view de métricas em SQL, envolva a definição YAML em uma instrução CREATE VIEW com a cláusula WITH METRICS e posicione o YAML entre os delimitadores $$:

Visualizar a declaração SQL

SQL
CREATE OR REPLACE VIEW orders_metric_view WITH METRICS LANGUAGE YAML AS
$$
version: 1.1
comment: "Orders KPIs for sales analysis"
source: samples.tpch.orders

joins:
- name: customer
source: samples.tpch.customer
'on': o_custkey = c_custkey
rely:
at_most_one_match: true

filter: o_orderdate > '1990-01-01'

fields:
- name: Order Month
expr: DATE_TRUNC('MONTH', o_orderdate)
comment: "Month of order"

- name: Order Status
expr: CASE
WHEN o_orderstatus = 'O' THEN 'Open'
WHEN o_orderstatus = 'P' THEN 'Processing'
WHEN o_orderstatus = 'F' THEN 'Fulfilled'
END
comment: "Status of order"

- name: Market Segment
expr: customer.c_mktsegment
comment: "Customer market segment"

measures:
- name: Order Count
expr: COUNT(1)
comment: "Total number of orders"

- name: Total Revenue
expr: SUM(o_totalprice)
comment: "Sum of all order prices"

- name: Total Revenue per Customer
expr: SUM(o_totalprice) / COUNT(DISTINCT o_custkey)
comment: "Average revenue per unique customer"
$$

Usar o Genie Code

O Genie Code é um assistente de AI que você abre do botão Ícone de código do Sparkle genie. no canto superior direito do editor. Descreva o que você deseja em linguagem natural, e o Genie Code atualiza a definição da view de métricas para você. O Genie Code é sensível ao contexto: na **tab** de **IU**, ele atualiza o editor para você, e no editor YAML, ele insere YAML.

Para adicionar uma única medida a uma view de métrica existente, descreva-a:

prompt

Diga ao Genie Code (modo Agente) para fazer isso por você:

add an average sales per customer measure

Para construir uma view de métricas completa a partir de uma descrição em linguagem natural, descreva-a ao Genie Code. O resultado é uma definição semelhante ao exemplo nesta página; os nomes exatos dos campos e os comentários podem variar.

prompt

Diga ao Genie Code (modo Agente) para fazer isso por você:

Create a metric view on samples.tpch.orders joined to samples.tpch.customer on o_custkey = c_custkey. Add a field for order month by truncating the order date to the month, a field for order status that maps 'O' to Open, 'P' to Processing, and 'F' to Fulfilled, and a field for the customer market segment. Add measures for the total number of orders, the total revenue as the sum of order price, and the total revenue per unique customer. Filter to orders placed after January 1, 1990.

Recursos adicionais

Após criar uma view de métricas, use os seguintes recursos para consultar, modelar e gerenciar seu trabalho.