Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cette page explique comment créer et gérer des vues de métriques à l’aide de SQL.
Prerequisites
- Vous devez disposer
SELECTde privilèges sur les objets de données sources. - Vous devez disposer du
CREATE TABLEprivilège et duUSE SCHEMAprivilège dans le schéma dans lequel vous souhaitez créer l’affichage des métriques. - Vous devez également disposer du
USE CATALOGprivilège sur le catalogue parent du schéma. - PEUT UTILISER des autorisations sur un entrepôt SQL ou une autre ressource de calcul exécutant Databricks Runtime 17.2 ou version ultérieure.
Un administrateur de metastore ou le propriétaire du catalogue peut vous octroyer tous ces privilèges. Un propriétaire de schéma ou un utilisateur disposant du privilège MANAGE peut vous accorder USE SCHEMA et CREATE TABLE privilèges sur le schéma.
Créer une vue métrique
Utilisez CREATE VIEW avec la clause WITH METRICS pour créer une vue métrique. La vue métrique doit être définie avec une spécification YAML valide dans le contenu. Les données sources d’une vue métrique peuvent être une table, une vue ou une requête SQL.
Les données sources de la vue métrique suivante sont la samples.tpch.orders table disponible dans le catalogue d’exemples pour la plupart des déploiements Azure Databricks. La DDL SQL suivante crée une vue de métrique nommée orders_metric_view dans le catalogue et le schéma actuels. Pour spécifier un autre catalogue et schéma, utilisez l’espace de noms de trois niveaux du catalogue Unity.
Vous pouvez ajouter des commentaires au niveau de la table et des colonnes à la définition de vue de métrique.
CREATE OR REPLACE VIEW orders_metric_view
WITH METRICS
LANGUAGE YAML
AS $$
version: 1.1
comment: "Orders KPIs for sales and financial analysis"
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')
$$
Modifier une vue des métriques
Pour apporter des modifications à la définition associée à une vue de métrique, utilisez ALTER VIEW. L’exemple suivant ajoute des commentaires aux dimensions et aux mesures dans l’affichage orders_metric_view des métriques.
ALTER VIEW orders_metric_view
AS $$
version: 1.1
comment: "Orders KPIs for sales and financial analysis"
source: samples.tpch.orders
filter: o_orderdate > '1990-01-01'
dimensions:
- 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: open, processing, or fulfilled"
- name: Order Priority
expr: SPLIT(o_orderpriority, '-')[1]
comment: "Numeric priority 1 through 5; 1 is highest"
measures:
- name: Order Count
expr: COUNT(1)
- name: Total Revenue
expr: SUM(o_totalprice)
comment: "Sum of total price"
- name: Total Revenue per Customer
expr: SUM(o_totalprice) / COUNT(DISTINCT o_custkey)
comment: "Sum of total price by customer"
- name: Total Revenue for Open Orders
expr: SUM(o_totalprice) FILTER (WHERE o_orderstatus='O')
comment: "Potential revenue from open orders"
$$
Accorder des privilèges sur une vue de métrique
Une vue de métrique est un objet sécurisable du catalogue Unity et suit le même modèle de permissions que d’autres vues. Les privilèges sont hiérarchiques, de sorte que les privilèges sur un metastore, un catalogue ou un schéma se répercutent sur les objets qu’ils contiennent. L’exemple suivant accorde des privilèges minimaux nécessaires aux utilisateurs du data_consumers groupe pour interroger une vue de métrique.
GRANT SELECT ON orders_metric_view to `data-consumers`;
Pour en savoir plus sur les privilèges dans le catalogue Unity, consultez Gérer les privilèges dans le catalogue Unity. Pour en savoir plus sur la création et la gestion de groupes, consultez Groupes.
Obtenir la définition d’affichage des métriques
Utilisez DESCRIBE TABLE EXTENDED avec le paramètre facultatif AS JSON pour afficher la définition d’une vue de métrique. Le AS JSON paramètre est facultatif. Omettre cela fournit une sortie de meilleure qualité pour les lecteurs humains, tandis que son inclusion est préférable pour les systèmes automatisés. L’exemple suivant retourne une chaîne JSON qui décrit la vue de métrique et ses composants.
DESCRIBE TABLE EXTENDED orders_metric_view AS JSON
Supprimer une vue de métrique
Utilisez la syntaxe DROP VIEW pour supprimer une vue métrique.
DROP VIEW orders_metric_view;
Étapes suivantes
Maintenant que vous avez créé une vue de métrique à l’aide de SQL, explorez ces rubriques connexes :
Interroger et utiliser des vues de métriques
- Interrogez une vue métrique.
- Utilisez des vues de métriques avec des tableaux de bord IA/BI.
- Utilisez des vues de métriques avec AI/BI Genie.
- Définissez des alertes sur les vues de métriques.
Fonctionnalités avancées d’affichage des métriques
- Utilisez des métadonnées sémantiques dans les vues de métriques.
- Utilisez des jointures dans les vues de métriques.
- Utilisez les mesures de fenêtre dans les vues métriques.
- Référence de syntaxe YAML.
Autres méthodes de création
- Créez une vue métrique à l’aide de l’interface utilisateur de l’Explorateur de catalogues.
- CREATE VIEW.
- ALTER VIEW.
- DESCRIBE TABLE.