Delen via


Metrische weergaven van Unity Catalog

Belangrijk

Deze functie bevindt zich in openbare preview-versie.

Metrische weergaven bieden een gecentraliseerde manier om consistente, herbruikbare en beheerde kerngegevens van het bedrijf te definiëren en te beheren. Op deze pagina worden metrische weergaven uitgelegd, hoe u deze definieert, de toegang kunt beheren en er query's op kunt uitvoeren in downstreamhulpprogramma's.

Wat is een metrische weergave?

Metrische weergaven abstraheren complexe bedrijfslogica in een gecentraliseerde definitie, waardoor organisaties eenmaal key performance indicators kunnen definiëren en ze consistent kunnen gebruiken in rapportagehulpprogramma's zoals dashboards, Genie-ruimten en waarschuwingen. Metrische weergaven worden gedefinieerd in YAML-indeling en geregistreerd in Unity Catalog. U kunt ze maken met behulp van SQL of de gebruikersinterface van Catalog Explorer. Net als elke andere tabel of weergave kunnen metrische weergaven query's worden uitgevoerd met behulp van SQL.

Diagram waarin wordt weergegeven dat metrische views zijn gedefinieerd voor brontabellen, weergaven en query's en gebruikt vanuit code en no-code interfaces.

Een metrische weergave geeft een set met metrische definities op, waaronder dimensies en metingen, op basis van een gegevensbron of meerdere bronnen als joinlogica wordt gebruikt. De source definitie van de metrische weergave kan een weergave, tabel of SQL-query zijn. Joins worden alleen ondersteund voor weergaven en tabellen.

Een dimensie is een categorisch kenmerk waarmee gegevens worden ingedeeld en gefilterd, zoals productnamen, klanttypen of regio's. Dimensies bieden de labels en groeperingen die nodig zijn om metingen effectief te analyseren.

Een meting is een waarde die bedrijfsactiviteit samenvat, meestal met behulp van een statistische functie, zoals SUM() of AVG(). Metingen worden onafhankelijk van dimensies gedefinieerd, zodat gebruikers deze tijdens runtime kunnen aggregeren in elke dimensie. Als u bijvoorbeeld een total_revenue meting definieert, wordt aggregatie mogelijk door klant, leverancier of regio. Metingen worden vaak gebruikt als KPI's in rapporten en dashboards.

In het volgende codeblok ziet u een voorbeeld van hoe metingen en dimensies worden gedefinieerd in een metrische weergave:

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')

Metrische weergaven vergeleken met standaardweergaven

Standaardweergaven zijn doorgaans ontworpen om een specifieke zakelijke vraag te beantwoorden. Ze bevatten vaak aggregatielogica en dimensiegroepen die moeten worden opgegeven wanneer de weergave wordt gemaakt. Dit kan problemen veroorzaken wanneer een gebruiker een query wil uitvoeren op een dimensie die niet is opgenomen in de oorspronkelijke weergave. Complexere metingen, zoals verhoudingen of afzonderlijke aantallen, kunnen vaak niet opnieuw worden geaggregeerd zonder onjuiste resultaten te retourneren.

Metrische weergaven stellen auteurs in staat om metingen en dimensies onafhankelijk te definiëren van hoe gebruikers de gegevens filteren en groeperen. Met deze scheiding kan het systeem de juiste query genereren op basis van de selectie van de gebruiker, met behoud van consistente, gecentraliseerde metrische logica.

Voorbeeld

Stel dat u omzet per afzonderlijke klant wilt analyseren op verschillende geografische niveaus. Met een standaardweergave moet u afzonderlijke weergaven maken voor elke groepering, zoals per staat, regio of land, of alle combinaties vooraf berekenen met en GROUP BY CUBE() filteren. Deze tijdelijke oplossingen vergroten de complexiteit en kunnen leiden tot prestatie- en governanceproblemen.

Met een metrische weergave definieert u de metrische waarde slechts één keer en kunt u deze groeperen op verschillende dimensies wanneer er een query wordt uitgevoerd. Bijvoorbeeld de som van de omzet gedeeld door het aantal afzonderlijke klanten. Vervolgens kunnen gebruikers groeperen op elke beschikbare geografiedimensie. De query-engine herschrijft de query achter de schermen om de juiste berekening uit te voeren, ongeacht hoe de gegevens zijn gegroepeerd.

Gebruiksvoorbeelden voor metrische weergaven

Metrische weergaven zijn nuttig wanneer:

  • U moet metrische definities standaardiseren voor teams en hulpprogramma's.
  • U wilt metrische gegevens weergeven die niet veilig opnieuw kunnen worden geaggregeerd, zoals verhoudingen of afzonderlijke aantallen.
  • U wilt flexibele segmentering en filtering voor zakelijke gebruikers inschakelen, terwijl u transparantie en governance via SQL behoudt.

Deze aanpak helpt inconsistenties te voorkomen, duplicatie te verminderen en vereenvoudigt de gebruikerservaring bij het werken met zakelijke metrische gegevens in de hele organisatie.

Een metrische weergave definiëren

Gebruikers met de CREATE TABLE bevoegdheid voor een schema kunnen metrische weergaven maken. U moet ten minste SELECT bevoegdheden hebben voor de bronobjecten. U kunt metrische weergaven maken met behulp van de YAML-editor in de gebruikersinterface van Catalog Explorer of sql.

De YAML-definitie voor een metrische weergave bevat zes velden op het hoogste niveau:

  • version: standaard ingesteld op 0.1. Dit is de versie van de specificatie van de metrische weergave.
  • source: de brongegevens voor de metrische weergave. Dit kan een tabelachtige asset of een SQL-query zijn.
  • joins: Optioneel. Wordt gebruikt om de feitentabel te verlaten JOIN die is gedefinieerd onder source met dimensietabellen als een stervormig schemamodel.
  • filter: Optioneel. Een Booleaanse SQL-expressie die van toepassing is op alle query's; gelijk aan de WHERE component.
  • dimensions: Een matrix met dimensiedefinities, inclusief de dimensienaam en expressie.
  • measures: Een matrix met kolommen voor een samenvoegingsexpressie.

Metrische weergaven kunnen worden gecombineerd, zodat u gelaagde, herbruikbare logica in één weergave kunt bouwen. Dimensies kunnen verwijzen naar eerder gedefinieerde dimensies en metingen kunnen verwijzen naar elke dimensie of eerder gedefinieerde metingen. Wanneer u nieuwe dimensies of metingen definieert, kunt u ook verwijzen naar kolommen uit joins die zijn gedefinieerd in de metrische weergave.

In het volgende voorbeeld wordt uitgelegd hoe u een metrische weergave maakt met behulp van de Gebruikersinterface van Azure Databricks. Zie CREATE VIEW voor informatie over het definiëren van metrische weergaven met behulp van SQL.

Zie Een metrische weergave maken voor een volledig voorbeeld waarin wordt getoond hoe u een metrische weergave maakt.

Een metrische weergave weergeven of bewerken

Iedereen met SELECT bevoegdheden in de metrische weergave kan de gedetailleerde YAML-definitie bekijken. U kunt de definitie bewerken als u de eigenaar van de metrische weergave bent. Details weergeven of een bestaande metrische weergave bewerken:

  1. Klik op het pictogram Gegevens.Catalogus in de zijbalk.
  2. Klik op de naam van de metrische weergave die u wilt bekijken.
  3. Klik op Bewerken om de YAML-editor te openen.

Zie YAML-referentie voor metrische weergave. Zie ALTER VIEW voor informatie over het bewerken van een metrische weergave met behulp van SQL.

Machtigingen voor metrische weergave beheren

Metrische weergaven zijn een beveiligbaar object voor Unity Catalog en volgen hetzelfde machtigingsmodel als andere weergaven. Zie Unity Catalog-bevoegdheden en beveiligbare objecten.

Metrische weergaven gebruiken

U kunt op dezelfde manier query's uitvoeren op metrische weergaven als een standaardweergave. Voer query's uit vanuit een SQL-editor die is gekoppeld aan een SQL-warehouse of een andere rekenresource waarop Databricks Runtime 16.4 of hoger wordt uitgevoerd. Alle metingsevaluaties in een metrische weergavequery moeten gebruikmaken van de MEASURE statistische functie.

Zie measure de statistische functie voor volledige details en syntaxis.

U kunt ook metrische weergaven gebruiken in de Azure Databricks-werkruimte. Zie de bijbehorende documentatie voor meer informatie:

Beperkingen

De volgende beperkingen gelden voor metrische weergaven:

  • Metrische weergaven bieden geen ondersteuning voor herkomst.
  • Metrische weergaven bieden geen ondersteuning voor Delta Sharing.
  • Lakehouse Monitoring wordt niet ondersteund.
  • Gegevensclassificatie (in bètaversie) wordt niet ondersteund.
  • JOINs tijdens een query worden niet ondersteund. Gebruik CTE's om gegevensbronnen samen te voegen.
  • SELECT * wordt niet ondersteund.
  • Een meting kan niet opnieuw worden geaggregeerd. Expressies zoals SUM(MEASURE(measure_name)) worden bijvoorbeeld niet ondersteund. Aggregaties alleen toepassen op basisvelden, niet geaggregeerde metingen.
  • Gekoppelde tabellen kunnen geen typekolommen bevatten MAP .
  • U kunt een vensterfunctie en een geaggregeerd basisveld niet combineren in een MEASURE expressie.