Recuperare i dati da un database NoSQL

Completato

Alcune organizzazioni non usano un database relazionale, ma usano invece un database NoSQL . Un database NoSQL (detto anche non SQL, non solo SQL o non relazionale) è un tipo flessibile di database che non usa tabelle per archiviare i dati.

Scenario

Gli sviluppatori di software di Tailwind Traders hanno creato un'applicazione per gestire la spedizione e il monitoraggio dei prodotti dai loro magazzini. L'applicazione usa Cosmos DB, un database NoSQL, come repository di dati. I dati vengono archiviati come documenti JSON, che sono formati di file standard aperti usati principalmente per trasmettere dati tra un server e un'applicazione Web. È necessario importare questi dati in un modello semantico di Power BI per la creazione di report.

Connettersi a un database NoSQL (Azure Cosmos DB)

In questo scenario si userà la funzionalità Recupera dati in Power BI Desktop. Tuttavia, questa volta si seleziona l'opzione Altro... per individuare e connettersi al tipo di database usato. In questo esempio si selezionerà la categoria Azure , si seleziona Azure Cosmos DB e quindi si seleziona Connetti.

Screenshot dell'opzione di recupero dei dati da Azure Cosmos DB.

Nella finestra Anteprima connettore selezionareContinua e quindi immettere le credenziali del database. In questo esempio, nella finestra di Azure Cosmos DB è possibile immettere i dettagli del database. È possibile specificare l'URL dell'endpoint dell'account Azure Cosmos DB da cui si vogliono ottenere i dati. È possibile ottenere l'URL dal pannello Chiavi del portale di Azure. In alternativa, è possibile immettere il nome del database o della raccolta oppure usare lo strumento di navigazione per selezionare il database e la raccolta per identificare l'origine dati.

Se ci si connette a un endpoint per la prima volta, come in questo esempio, assicurarsi di immettere la chiave dell'account. È possibile trovare questa chiave nella casella Chiave primaria nel pannello Chiavi di sola lettura del portale di Azure.

Importare un file JSON

Se si usano i dati archiviati in formato JSON, è spesso necessario estrarre e normalizzare prima i dati. Ciò è dovuto al fatto che i dati JSON vengono spesso archiviati in un formato annidato o non strutturato, il che rende difficile analizzare o creare report direttamente.

In questo esempio, i dati devono essere estratti e normalizzati prima di poterli segnalare, quindi è necessario trasformare i dati prima di caricarli in Power BI Desktop.

Dopo aver eseguito la connessione all'account del database, viene visualizzata la finestra Strumento di navigazione che mostra un elenco di database in tale account. Selezionare la tabella da importare. In questo esempio si selezionerà la tabella Product.  Il riquadro di anteprima mostra solo elementi Record perché tutti i record nel documento sono rappresentati come tipo Record in Power BI.

Screenshot della finestra Strumento di navigazione con l'elenco dei record disponibili.

Selezionare il pulsante Modifica per aprire i record in Power Query.

In Power Query selezionare il pulsante Espandi a destra dell'intestazione Column1, che visualizza il menu di scelta rapida con un elenco di campi. Selezionare i campi da caricare in Power BI Desktop, deselezionare la casella di controllo Usa nome colonna originale come prefisso e quindi selezionare OK.

Screenshot della funzione di espansione dei record.

Esaminare i dati selezionati per assicurarsi di essere soddisfatti, quindi selezionare Chiudi & Applica per caricare i dati in Power BI Desktop.

Screenshot del passaggio Chiudi e applica in Power Query.

I dati sono ora simili a una tabella con righe e colonne.  È ora possibile mettere in relazione i dati di Cosmos DB con i dati di altre origini dati e usarli in un report di Power BI.