Hoppa till huvudinnehållet

Power BI: Hämta data från en CDF-datamodell

Anslut en CDF-datamodell (Cognite Data Fusion) som datakälla och använd Power BI för att fråga, omvandla och visualisera CDF-data.

info

Innan du kan logga in med ditt organisations-ID och hämta data från CDF måste en administratör registrera sig och samtycka till att din organisation får använda Microsoft Power Query for Excel.

För att komma åt data i en datamodell behöver du följande funktioner på projektnivå eller per utrymmesnivå: dataModelsAcl:read, dataModelInstancesAcl:read. Se

Se Konfigurera åtkomst till datamodeller.

För att få tillgång till metadata för CDF-kärnelement, såsom tidsserier eller filer, måste du ha tillgång till elementet på projekt- eller datamängdsnivå. Se Tilldela kapacitet.

Anslut Power BI connector till en datamodell

  1. Innan du börjar: För att ansluta till en datamodell med Cognite Power BI connector måste du veta namnet på och versionen av datamodellen och CDF projektet där den används. Hitta informationen:

    1. Gå till fusion.cognite.com, logga in på CDF-projektet och navigera till Utforska > Modellera dina data.

    2. Välj datamodell och klicka sedan på knappen Power BI.

    3. I dialogrutan, kopierar och noterar du projektnamn och CDF-miljö.

      Hämta inställningar för Power BI connector
  2. Öppna Power BI Desktop och Logga in med ditt organisationskonto.

  3. På fliken Hem i menyfliksområdet väljer du Hämta data och sedan Mer. Välj sedan Övrigt och Cognite Data Fusion-kontakten i dialogrutan Hämta data.

    Hämta data
  4. Ange den information du noterade om datamodellen och CDF projektet i Projektnamn och CDF: Miljöfält.

    Valfritt: För att logga in med ett specifikt Microsoft Entra-ID (tidigare Azure Active Directory), lägg till parametern tenantid={tenantId} till projektnamnets URI i det här formatet:

    {projectName}/models/spaces/{space}/datamodels/{datamodel}/versions/{version}?tenantid={tenantId}

    • Där {tenantId} är GUID för den Microsoft Entra-ID-klient du vill använda, till exempel d1ce9074-3079-488a-9a2d-f0522babd7a9.

    För att hitta klient-ID för Microsoft Entra-ID, kontakta din administratör, eller följ stegen i den här artikeln.

  5. I dialogrutan Autentisering väljer du Organisationskonto och sedan Logga in med ditt organisations-ID.

    Autentisering
  6. Power BI-kontakten listar alla typer för den valda datamodellen.

    Varje Type i datamodellen visas som en tabell i Power BI med varje Instance av typen som en rad.

  7. Välj en tabell (typ) och välj sedan Transformera data.

    varning

    Tabellen kan innehålla ett stort antal poster. Välj inte Ladda om du inte vill ladda alla poster.

    Navigator
  8. Du kan nu transformera data med Power Query Editor.

    För att begränsa datamängden kan du till exempel välja Behåll rader > Behåll översta rader och ange antalet rader som ska behållas.

    Navigator

    För att ladda de resulterande värdena i Power BI, välj Stäng och använd.

info

Power BI låter dig expandera ett relaterat objekt för att göra en tabell plattare. Detta kan ha en betydande negativ inverkan på prestanda och vi rekommenderar att du inte använder denna funktion.

Filtrera objekt i datamodeller

Filtrering är avgörande för att skapa fungerande datamängder i Power BI. Vi rekommenderar att du använder filtrering i Power Query snarare än i Power BI-rapporten/kontrollpanel. Detta förbättrar prestandan och gör det enklare att arbeta med återanvändbara dataset.

Power BI Connector skickar filtren till CDF via Cognite OData-tjänsten. CDF utför filtreringen och returnerar endast de matchande raderna till Power BI. Se även Filtrera CDF-data i Power BI.

Filter för pushdown av datamodellering

TypPushdown
ModellegenskapJa, utom EndsWith och Contains
Metadata för tidsserierIngen
Data och strängpunktertimestamp endast
Metadata för filerIngen

Power Query utför EndsWith och Contains filtrering av strängar i minnet.

JSONObjects visas som textvärden i Power BI.

Arbeta med tidsserier och datapunkter

Datamodellering stöder hämtning av Timeseries från datamodeller. För att hämta datapunkter för en specifik tidsserie kan du gå till string- eller dataPoints. För att hämta datapunkter från ett tidsintervall filtrerar du datapunkten på ett tidsstämpelvärde. CDF stöder inte filtrering av tidsserier på deras värden.

Tidsserier kan innehålla mycket detaljerade data. För att förbättra prestanda och minska datamängden kan du använda funktionen CDF dataPoint Aggregate, liknande Hämta aggregat för en enda tidsserie.

Power BI konverterar automatiskt ett Unix Epoch-tidsstämpelvärde till ett UTC DateTime-värde.

Om du vill skapa en visualisering som visar data från de två sista dagarna i en tidsserie rekommenderar vi att du använder funktionen aggregate för Time Series. Med Power Query kan du ange dynamiska värden som uppdateras vid varje uppdatering av datasetet. till exempel returnerar funktionen DateTimeZone.UtcNow() Power Query alltid aktuellt datum och tid i UTC-tid. Genom att kombinera den med Date.AddX-funktioner som Date.AddDays kan du skapa ett dynamiskt intervall för frågan att driva ner till CDF som ett aggregerat funktionsanrop, vilket resulterar i en snabbare datauppdatering.

När datum används som filter för funktionsparametrar ska typen PowerQuery DateTimeZone användas.

Läs mer:

Ändra inloggad användare

När du har loggat in lagrar Power BI dina inloggningsuppgifter för datakällan. Om du vill använda en annan användare för att komma åt datamodellen kan du ta bort de lagrade inloggningsuppgifterna för datakällan:

  1. I Power BI Desktop, gå till Fil > Alternativ och inställningar > Inställningar för datakälla.
  2. Redigera eller ta bort inloggningsuppgifterna för dina datakällor.