Vai al contenuto principale

Filtro dei dati CDF in Power BI

Aggiungere filtri in Power BI per filtrare set di dati di grandi dimensioni in millisecondi anziché minuti o ore.

I progetti Cognite Data Fusion (CDF) possono contenere milioni di righe di dati, pertanto il download in Power BI non è né efficiente né fattibile.

Il filtro è fondamentale per creare set di dati fruibili in Power BI. Cognite Power BI Connector esegue il push dei filtri in CDF tramite Cognite OData Service. CDF esegue il filtro e restituisce solo le righe corrispondenti in Power BI.

Aggiunta di filtri in Power Query Editor

  1. Connettere Power BI a CDF.

  2. Selezionare il pulsante a discesa nell'intestazione di colonna a cui si desidera aggiungere il filtro.

  3. Selezionare Filtri di testo e digitare il tipo di filtro desiderato, ad esempio Inizia con.

  4. Nella finestra di dialogo Righe filtro specificare le condizioni per filtrare le righe nella colonna.

    Aggiunta del filtro Power BI
  5. Selezionare Avanzate per definire più filtri simultaneamente o definirli e aggiungerli singolarmente.

    suggerimento

    Specificare sempre prima la condizione che filtra la maggior parte delle righe.

  6. Cognite Power BI Connector invia la query a CDF per il filtro e Power Query mostra i risultati restituiti da CDF.

    Power Query visualizza in anteprima il set di risultati, in genere 1000 righe. Il filtro finale si verifica quando si seleziona Chiudi e applica.

Filtro supportato per i tipi di risorsa di CDF

Cognite Power BI Connector può eseguire il push dei filtri in CDF tramite Cognite OData Service. Il filtro può verificarsi in:

  • CDF - Il filtro più efficace. CDF esegue il filtro e nessun dato non necessario viene trasmesso tra CDF e Power BI.

  • OData Service - Il servizio OData può eseguire il filtro locale per supportare la funzionalità non fornita da CDF, ad esempio funzioni come contains e endswith. Innanzitutto, ridurre il più possibile il set di dati utilizzando il filtro di CDF.

  • Power Query - Power Query deve recuperare tutti i dati per eseguire il filtro. Per le tabelle di grandi dimensioni, potrebbe trattarsi di quantità significative di dati. Innanzitutto, ridurre il set di dati il più possibile.

Le tabelle riportate di seguito indicano quale filtro è supportato per ogni tipo di risorsa in CDF, quali filtri verranno inviati a CDF e quale filtro verrà eseguito localmente da OData Service.

Definizioni

  • Pushdown - Funzioni filtro sottoposte a push nel servizio OData e in CDF.

  • Locale - Filtro locale eseguito dal servizio OData prima di restituire il risultato a Power BI.

  • FilterFunctions - Contains, StartsWith e EndsWith.

  • Confronto - <, <=, >, >= e =.

  • Ricerca - Esegue il pushdown, ma utilizza l'API di ricerca e richiede un filtro locale aggiuntivo.

    informazioni

    La ricerca restituisce un numero limitato di righe ed è possibile che non si ricevano tutti i dati corrispondenti in CDF.

Assets (Asset)

ProprietàPushdownLocale
Id==
ExternalId=, StartsWith=, FilterFunctions
Name=, Search=, FilterFunctions
DescriptionRicerca=, FilterFunctions
ParentId==
ParentExternalId==
DataSetId==
Source==
MetaData=
RootId==
CreatedTimeConfrontoConfronto
LastUpdatedTimeConfrontoConfronto

Time series (Serie temporale)

ProprietàPushdownLocale
Id==
ExternalId=, StartsWith=, FilterFunctions
Name=, Search=, FilterFunctions
DescriptionRicerca=, FilterFunctions
IsString==
MetaData=
Unit==
IsStep==
AssetId==
SecurityCategories
DataSetId==
CreatedTimeConfrontoConfronto
LastUpdatedTimeConfrontoConfronto

Data point

ProprietàPushdownLocale
Id==
TimeStampConfrontoConfronto

Events (Eventi)

ProprietàPushdownLocale
Id==
ExternalId=, StartsWithFilterFunctions
DescriptionRicerca=, FilterFunctions
Source==
Type==
SubType==
MetaData=
DataSetId==
StartTimeConfrontoConfronto
EndTimeConfrontoConfronto
CreatedTimeConfrontoConfronto
LastUpdatedTimeConfrontoConfronto
AssetIdsContainsContains

Files (File)

ProprietàPushdownLocale
Id==
ExternalId=, StartsWith=, FilterFunctions
Name=, Search=, FilterFunctions
Source==
MimeType==
MetaData
DataSetId==
SourceCreatedTimeConfrontoConfronto
SourceModifiedTimeConfrontoConfronto
CreatedTimeConfrontoConfronto
LastUpdatedTimeConfrontoConfronto
UploadedTimeConfrontoConfronto
Uploaded==
AssetIdsContainsContains

Sequences (Sequenze)

ProprietàPushdownLocale
Id==
ExternalId=, StartsWith=, StartsWith
Name=, Search=, FilterFunctions
Description=, Search=, FilterFunctions
MetaData
AssetId==
DataSetId==
CreatedTimeConfrontoConfronto
LastUpdatedTimeConfrontoConfronto
Columns

Database CDF RAW

ProprietàPushdownLocale
Name==

Tabelle CDF RAW

ProprietàPushdownLocale
Name==

Righe CDF RAW

ProprietàPushdownLocale
Key==, FilterFunction
LastUpdatedTimeConfrontoConfronto

Utilizzo di query personalizzate per filtrare i dati

È possibile utilizzare Cognite Power BI connector per creare query personalizzate per filtrare le proprietà. Ad esempio, per filtrare in base alle proprietà dei Metadata dell'asset:

  1. In Power BI selezionare Recupera dati nella finestra principale di Power BI, quindi selezionare Cognite Data Fusion connector.

  2. Nel campo nome progetto digitare il nome del progetto, la risorsa e il filtro in questo formato:

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

  3. Selezionare OK, quindi Trasforma dati per aprire un'anteprima di una query.

Esempi

Il filtro segue le specifiche OData ed è possibile creare filtri con più attributi concatenando filtri con i termini and/or. Ad esempio, un filtro uguaglianza utilizza il formato AttributeName eq 'AttributeValue':

Name eq '23-TE-96116-04'

Filtro di metadati

Per i metadati, il filtro viene eseguito in base alle proprietà annidate all'interno dell'oggetto metadati. Per filtrare in base alle proprietà dei metadati, è necessario creare un filtro in formato "MetaData/NestedAttributeName eq 'NestedAttributeValue'", ad esempio:

MetaData/RES_ID eq '525283'

È un esempio di query personalizzata nel progetto publicdata, filtrando per Metadata/RES_ID:

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

Si tratta di un filtro AND su Metadata/RES_ID e Name:

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

Negli esempi precedenti, tenantID=48d5043c-cf70-4c49-881c-c638f5796997 è il tenant Microsoft Entra ID configurato per il progetto publicdata.

Debug

Per eseguire il debug del filtro, è utile utilizzare strumenti che consentano di vedere di quali filtri viene eseguito il push nel servizio OData, ad esempio Fiddler.