Ga verder naar hoofdinhoud

CDF-gegevens filteren in Power BI

Voeg filters toe in Power BI om grote gegevenssets te filteren in milliseconden in plaats van minuten of uren.

Cognite Data Fusion (CDF)-projecten kunnen miljoenen rijen met gegevens bevatten en het is niet efficiënt of haalbaar om deze allemaal te downloaden naar Power BI.

Filteren is essentieel om werkbare gegevenssets te maken in Power BI. De Cognite Power BI Connector pusht de filters naar CDF via. Cognite OData Service. CDF voert de filters uit en retourneert alleen de overeenkomende rijen naar Power BI.

Filters toevoegen in Power Query Editor

  1. Verbind Power BI met CDF.

  2. Selecteer de vervolgkeuzeknop in de kop van de kolom waaraan u het filter wilt toevoegen.

  3. Selecteer Tekstfilters en het gewenste type filter, bijvoorbeeld Begint met.

  4. Ga naar het dialoogvenster Rijen filteren en geef de voorwaarden op om de rijen in de kolom te filteren.

    Power BI-filter toevoegen
  5. Selecteer Geavanceerd om meerdere filters tegelijk te definiëren of om ze afzonderlijk te definiëren en toe te voegen.

    tip

    Geef altijd de voorwaarde op die de meeste rijen als eerste filtert.

  6. De Cognite Power BI Connector verzendt de query naar CDF voor het filteren en Power Query geeft de resultaten weer die zijn geretourneerd door CDF.

    Power Query geeft een voorbeeld van de resultatenset weer, meestal 1000 rijen. De laatste filtering vindt plaats wanneer u Sluiten en toepassen selecteert.

Ondersteunde filters voor CDF-resourcetypen

De Cognite Power BI Connector kan filters samenvouwen of pushen naar CDF via de Cognite OData Service. Er kan worden gefilterd in:

  • CDF: de meest effectieve filtering. CDF filtert en er worden geen onnodige gegevens verzonden tussen CDF en Power BI.

  • OData Service: de OData-service kan lokaal filteren om functionaliteit te ondersteunen die niet door CDF wordt geboden, bijvoorbeeld functies als contains en endswith. Verklein eerst de gegevensset zoveel mogelijk via de CDF-filters.

  • Power Query: Power Query moet alle gegevens ophalen om te kunnen filteren. In het geval van grote tabellen kan het gaan om aanzienlijke hoeveelheden gegevens. Verklein eerst de gegevensset zoveel mogelijk.

De onderstaande tabellen geven aan welke filters worden ondersteund voor elk resourcetype in CDF, welke filters naar CDF worden gepusht en welke filters lokaal worden uitgevoerd door de OData Service.

Definities

  • Pushdown: filterfuncties die worden gepusht naar de OData-service en CDF.

  • Lokaal: lokale filters uitgevoerd door de OData-service voordat het resultaat wordt geretourneerd naar Power BI.

  • FilterFunctions: Contains, StartsWith en EndsWith.

  • Vergelijking - <, <=, >, >= en =.

  • Zoeken: voor pushdown, maar er wordt gebruikgemaakt van de zoek-API en er zijn aanvullende lokale filters vereist.

    info

    Met Zoeken wordt een beperkt aantal rijen geretourneerd en mogelijk ontvangt u niet alle overeenkomende gegevens in CDF.

Assets (Assets)

EigenschapPushdownLokaal
Id==
ExternalId=, StartsWith=, FilterFunctions
Name=, Search=, FilterFunctions
DescriptionZoeken=, FilterFunctions
ParentId==
ParentExternalId==
DataSetId==
Source==
MetaData=
RootId==
CreatedTimeVergelijkingVergelijking
LastUpdatedTimeVergelijkingVergelijking

Time series (Tijdreeksen)

EigenschapPushdownLokaal
Id==
ExternalId=, StartsWith=, FilterFunctions
Name=, Search=, FilterFunctions
DescriptionZoeken=, FilterFunctions
IsString==
MetaData=
Unit==
IsStep==
AssetId==
SecurityCategories
DataSetId==
CreatedTimeVergelijkingVergelijking
LastUpdatedTimeVergelijkingVergelijking

Data point

EigenschapPushdownLokaal
Id==
TimeStampVergelijkingVergelijking

Events (Gebeurtenissen)

EigenschapPushdownLokaal
Id==
ExternalId=, StartsWithFilterFunctions
DescriptionZoeken=, FilterFunctions
Source==
Type==
SubType==
MetaData=
DataSetId==
StartTimeVergelijkingVergelijking
EndTimeVergelijkingVergelijking
CreatedTimeVergelijkingVergelijking
LastUpdatedTimeVergelijkingVergelijking
AssetIdsContainsContains

Files (Bestanden)

EigenschapPushdownLokaal
Id==
ExternalId=, StartsWith=, FilterFunctions
Name=, Search=, FilterFunctions
Source==
MimeType==
MetaData
DataSetId==
SourceCreatedTimeVergelijkingVergelijking
SourceModifiedTimeVergelijkingVergelijking
CreatedTimeVergelijkingVergelijking
LastUpdatedTimeVergelijkingVergelijking
UploadedTimeVergelijkingVergelijking
Uploaded==
AssetIdsContainsContains

Sequences (Reeksen)

EigenschapPushdownLokaal
Id==
ExternalId=, StartsWith=, StartsWith
Name=, Search=, FilterFunctions
Description=, Search=, FilterFunctions
MetaData
AssetId==
DataSetId==
CreatedTimeVergelijkingVergelijking
LastUpdatedTimeVergelijkingVergelijking
Columns

CDF RAW-databases

EigenschapPushdownLokaal
Name==

CDF RAW-tabellen

EigenschapPushdownLokaal
Name==

CDF RAW-rijen

EigenschapPushdownLokaal
Key==, FilterFunction
LastUpdatedTimeVergelijkingVergelijking

Aangepaste query's gebruiken om gegevens te filteren

Met de Cognite Power BI connector kunt u aangepaste query's maken om eigenschappen te filteren. Stel bijvoorbeeld dat u wilt filteren op de Metadata-eigenschappen van een asset:

  1. Ga naar Power BI, selecteer Gegevens ophalen in het hoofdvenster van Power BI en selecteer vervolgens de Cognite Data Fusion-connector.

  2. Ga naar het veld projectnaam en typ de projectnaam, de resource en het filter in de volgende indeling:

    <project-name>/<resource-type>/?$filter=<Filter>

  3. Selecteer OK en vervolgens Gegevens transformeren om een queryvoorbeeld te openen.

Voorbeelden

De filters volgen de OData-specificatie en u kunt filters met meerdere kenmerken maken door filters te koppelen met 'en/of'. Een gelijkheidsfilter gebruikt bijvoorbeeld de indeling AttributeName eq 'AttributeValue':

Name eq '23-TE-96116-04'

Metagegevens filteren

Metagegevens worden gefilterd op eigenschappen die zijn genest binnen het metagegevens-object. Als u wilt filteren op een metagegevens-eigenschap, moet u een filter maken in de vorm van 'MetaData/NestedAttributeName eq 'NestedAttributeValue'', bijvoorbeeld:

MetaData/RES_ID eq '525283'

Dit is een voorbeeld van een aangepaste query voor het publicdata-project, waarbij wordt gefilterd op Metadata/RES_ID:

publicdata/Assets/?$filter=MetaData/RES_ID eq '525283'&amp;tenantID=48d5043c-cf70-4c49-881c-c638f5796997

Dit is een AND-filter voor Metadata/RES_ID en Name:

publicdata/Assets/?$filter=MetaData/RES_ID eq '525283' and Name eq '23-TE-96116-04'&amp;tenantID=48d5043c-cf70-4c49-881c-c638f5796997

In de bovenstaande voorbeelden is tenantID=48d5043c-cf70-4c49-881c-c638f5796997 de Microsoft Entra ID-tenant die is geconfigureerd voor het publicdata-project.

Foutopsporing

Als u filterfouten wilt verhelpen, is het handig om tools te gebruiken waarmee u kunt zien welke filters naar de OData-service worden gepusht, bijvoorbeeld Fiddler.