Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Op deze pagina wordt uitgelegd hoe u metrische weergaven maakt en beheert met behulp van SQL.
Vereiste voorwaarden
- U moet bevoegdheden hebben
SELECTvoor de brongegevensobjecten. - U moet beschikken over de
CREATE TABLEbevoegdheid en deUSE SCHEMAbevoegdheid in het schema waarin u de metrische weergave wilt maken. - Je moet ook de
USE CATALOGrechten hebben in de bovenliggende catalogus van het schema. - KAN MACHTIGINGEN GEBRUIKEN voor een SQL-warehouse of andere rekenresource met Databricks Runtime 17.2 of hoger.
Een metastore-beheerder of de cataloguseigenaar kan u al deze bevoegdheden verlenen. Een schema-eigenaar of -gebruiker met de MANAGE-bevoegdheid kan u USE SCHEMA en CREATE TABLE bevoegdheden voor het schema verlenen.
Een metrische weergave maken
Gebruik CREATE VIEW met de WITH METRICS clausule om een metrische weergave te maken. De metrische weergave moet worden gedefinieerd met een geldige YAML-specificatie in de hoofdtekst. Brongegevens voor een metrische weergave kunnen een tabel, weergave of SQL-query zijn.
De brongegevens voor de volgende metrische weergave zijn de samples.tpch.orders tabel die beschikbaar is in de voorbeeldencatalogus voor de meeste Azure Databricks-implementaties. Met de volgende SQL DDL maakt u een metrische weergave met de naam orders_metric_view in de huidige catalogus en het huidige schema. Als u een andere catalogus en een ander schema wilt opgeven, gebruikt u de naamruimte op drie niveaus van Unity Catalog.
U kunt opmerkingen op tabel- en kolomniveau toevoegen aan de definitie van de metrische weergave.
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')
$$
Een metrische weergave wijzigen
Als u wijzigingen wilt aanbrengen in de definitie die is gekoppeld aan een metrische weergave, gebruikt u ALTER VIEW. In het volgende voorbeeld worden opmerkingen toegevoegd aan dimensies en metingen in de orders_metric_view metrische weergave.
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"
$$
Bevoegdheden verlenen voor een metrische weergave
Een metrische weergave is een beveiligbaar object voor Unity Catalog en volgt hetzelfde machtigingsmodel als andere weergaven. Bevoegdheden zijn hiërarchisch, dus bevoegdheden voor een metastore, catalogus of schema worden doorgegeven aan de objecten die erin zijn opgenomen. In het volgende voorbeeld worden minimale bevoegdheden verleend die nodig zijn voor gebruikers in de data_consumers groep om een query uit te voeren op een metrische weergave.
GRANT SELECT ON orders_metric_view to `data-consumers`;
Zie Bevoegdheden beheren in Unity Catalog voor meer informatie over bevoegdheden in Unity Catalog. Zie Groepen voor meer informatie over het maken en beheren van groepen.
Definitie van metrische weergave ophalen
Gebruik DESCRIBE TABLE EXTENDED met de optionele AS JSON parameter om de definitie van een metriekweergave te bekijken. De AS JSON-parameter is optioneel. Het weglaten ervan levert uitvoer die beter is voor menselijke lezers, terwijl het opnemen ervan beter is voor machinale verwerking. In het volgende voorbeeld wordt een JSON-tekenreeks geretourneerd die de metrische weergave en de bijbehorende onderdelen beschrijft.
DESCRIBE TABLE EXTENDED orders_metric_view AS JSON
Een metrische weergave verwijderen
Gebruik DROP VIEW de syntaxis om een metrische weergave te verwijderen.
DROP VIEW orders_metric_view;
Volgende stappen
Nu u een metrische weergave hebt gemaakt met behulp van SQL, bekijkt u de volgende verwante onderwerpen:
Metrische weergaven opvragen en gebruiken
- Een query uitvoeren op een metrische weergave.
- Metrische weergaven gebruiken met AI/BI-dashboards.
- Gebruik metrische weergaven met AI/BI Genie.
- Waarschuwingen instellen voor metrische weergaven.
Geavanceerde functies voor metrische gegevensweergave
- Gebruik semantische metagegevens in metrische weergaven.
- Gebruik joins in metrische weergaven.
- Venstermetingen gebruiken in metrische weergaven.
- YAML-syntaxis referentie.
Alternatieve methoden voor het maken
- Een metrische weergave maken met behulp van de gebruikersinterface van Catalog Explorer.
- CREATE VIEW.
- ALTER VIEW.
- DESCRIBE TABLE.