Recuperare i dati dalle origini dati relazionali
Se l'organizzazione usa un database relazionale per le vendite, è possibile usare Power BI Desktop per connettersi direttamente al database anziché usare file flat esportati.
La connessione di Power BI al database consente di monitorare l'andamento dell'azienda e identificare le tendenze, così da poter prevedere i dati delle vendite, pianificare i budget e impostare indicatori di prestazioni e obiettivi. Power BI Desktop può connettersi a molti database relazionali, nel cloud o in locale.
Scenario
Il team sales di Tailwind Traders ha richiesto di connettersi al database locale SQL Server dell'organizzazione e ottenere i dati di vendita in Power BI Desktop in modo da poter creare report di vendita.
Connettersi ai dati in un database relazionale
È possibile usare la funzionalità Recupera dati in Power BI Desktop e selezionare l'opzione applicabile per il database relazionale. In questo esempio si seleziona l'opzione SQL Server, come illustrato nello screenshot seguente.
Suggerimento
Accanto al pulsante Recupera dati sono disponibili opzioni per l'accesso rapido a origini dati come SQL Server.
Il passaggio successivo consiste nell'immettere il nome del server di database e il nome del database nella finestra Database SQL Server. Le due opzioni nella sezione Modalità Connettività dati sono: Importa (selezionata per impostazione predefinita e consigliata) e DirectQuery. Per lo più, si seleziona Importa. Altre opzioni avanzate sono disponibili anche nella finestra del database SQL Server, ma è possibile ignorarle per il momento.
Dopo aver aggiunto i nomi del server e del database, verrà richiesto di accedere con un nome utente e una password. Sono disponibili tre opzioni di accesso:
Windows : usare l'account Windows (credenziali di Azure Active Directory).
Database : usare le credenziali del database. SQL Server, ad esempio, ha un proprio sistema di accesso e di autenticazione che a volte viene usato. Se l'amministratore del database ha fornito un accesso univoco al database, può essere necessario immettere tali credenziali nella scheda Database.
Account Microsoft : usare le credenziali dell'account Microsoft. Questa opzione viene spesso usata per i servizi di Azure.
Selezionare un'opzione di accesso, immettere il nome utente e la password e quindi selezionare Connetti.
Selezionare i dati da importare
Dopo che il database è stato connesso a Power BI Desktop, la finestra Navigazione visualizza i dati disponibili nell'origine dati (il database SQL in questo esempio). È possibile selezionare una tabella o un'entità per visualizzare un'anteprima del relativo contenuto e assicurarsi che nel modello di Power BI vengano caricati i dati corretti.
Selezionare la casella di controllo (es) delle tabelle da inserire in Power BI Desktop e quindi selezionare l'opzione Carica o Trasforma dati.
Caricamento : caricare automaticamente i dati in un modello di Power BI nello stato corrente.
Trasforma dati: aprire i dati in Microsoft Power Query, dove è possibile eseguire azioni, ad esempio l'eliminazione di righe o colonne non necessarie, il raggruppamento dei dati, la rimozione di errori e molte altre attività di qualità dei dati.
Importare i dati scrivendo una query SQL
Un altro modo per importare i dati consiste nel scrivere una query SQL per specificare solo le tabelle e le colonne necessarie.
Per scrivere la query SQL, nella finestra del database SQL Server immettere i nomi del server e del database e quindi selezionare la freccia accanto a Opzioni avanzate per espandere questa sezione e visualizzare le opzioni. Nella casella di istruzione SQL scrivere l'istruzione query e quindi selezionare OK. In questo esempio si userà l'istruzione Select SQL per caricare le colonne ID, NAME e SALESAMOUNT dalla tabella SALES.
Modificare le impostazioni dell'origine dati
Dopo avere creato una connessione all'origine dati e avere caricato i dati in Power BI Desktop, è possibile modificare le impostazioni di connessione in qualsiasi momento. Questa azione è spesso necessaria per soddisfare i criteri di sicurezza all'interno dell'organizzazione, ad esempio quando è necessario aggiornare la password ogni 90 giorni. È possibile modificare l'origine dati, modificare le autorizzazioni o cancellare le autorizzazioni.
Nella scheda Home selezionare Trasforma i dati e quindi selezionare l'opzione Impostazioni origine dati .
Nell'elenco di origini dati visualizzato selezionare l'origine dati da aggiornare. È quindi possibile fare clic con il pulsante destro del mouse sull'origine dati per visualizzare le opzioni di aggiornamento disponibili oppure usare i pulsanti relativi alle opzioni di aggiornamento nella parte inferiore sinistra della finestra. Selezionare l'opzione di aggiornamento necessaria, modificare le impostazioni e quindi applicare le modifiche.
È anche possibile modificare le impostazioni dell'origine dati da Power Query. Selezionare la tabella e quindi selezionare l'opzione Impostazioni origine dati nella barra multifunzione Home . In alternativa, è possibile passare al pannello Impostazioni query sul lato destro della schermata e selezionare l'icona delle impostazioni accanto a Source (o double Select Source). Nella finestra visualizzata aggiornare i dettagli del server e del database e quindi selezionare OK.
Dopo aver apportato le modifiche, selezionare Chiudi e Applica per applicare tali modifiche alle impostazioni dell'origine dati.
Scrivere un'istruzione SQL
Come illustrato in precedenza, è possibile importare dati nel modello di Power BI usando una query SQL. SQL è l'acronimo di Structured Query Language ed è un linguaggio di programmazione standardizzato che consente di gestire i database relazionali ed eseguire diverse operazioni di gestione dei dati.
Si consideri lo scenario in cui il database dispone di una tabella di grandi dimensioni che include i dati di vendita di diversi anni. I dati sulle vendite del 2009 non sono rilevanti per il report creato. Questa situazione è utile per SQL perché consente di caricare solo il set di dati richiesto specificando colonne e righe esatte nell'istruzione SQL e quindi importandole nel modello semantico. È anche possibile unire tabelle diverse, eseguire calcoli specifici, creare istruzioni logiche e filtrare i dati nella query SQL.
L'esempio seguente mostra una query semplice in cui vengono selezionate le colonne ID, NAME e SALESAMOUNT della tabella SALES.
La query SQL inizia con un'istruzione Select , che consente di scegliere i campi specifici che si desidera eseguire il pull dal database. In questo esempio le colonne da caricare sono ID, NAME e SALESAMOUNT.
SELECT
ID
, NAME
, SALESAMOUNT
FROM
FROM specifica il nome della tabella da cui eseguire il pull dei dati. In questo caso si tratta della tabella SALES. L'esempio seguente illustra la query SQL completa:
SELECT
ID
, NAME
, SALESAMOUNT
FROM
SALES
Quando si usa una query SQL per importare i dati, provare a evitare di usare il carattere jolly (*) nella query. Se si usa il carattere jolly (*) nell'istruzione SELECT, importare tutte le colonne non necessarie dalla tabella specificata.
L'esempio seguente mostra la query con il carattere jolly.
SELECT *
FROM
SALES
Il carattere jolly (*) importa tutte le colonne all'interno della tabella Sales . Questo metodo non è consigliato perché porterà ai dati ridondanti nel modello semantico, che causeranno problemi di prestazioni e richiederanno passaggi aggiuntivi per normalizzare i dati per la creazione di report.
Tutte le query devono avere anche una clausola WHERE. Questa clausola consente di filtrare le righe in modo da selezionare solo i record filtrati desiderati. In questo esempio, se si desidera ottenere i dati di vendita recenti dopo il 1° gennaio 2020, aggiungere una clausola WHERE . La nuova query sarà simile all'esempio seguente.
SELECT
ID
, NAME
, SALESAMOUNT
FROM
SALES
WHERE
OrderDate >= ‘1/1/2020’
È consigliabile evitare di farlo direttamente in Power BI. È invece consigliabile scrivere una query di questo tipo in una vista. Una vista è un oggetto in un database relazionale, simile a una tabella. Le viste hanno righe e colonne e possono contenere quasi tutti gli operatori del linguaggio SQL. Se Power BI usa una vista, quando recupera i dati partecipa alla riduzione della query, una funzionalità di Power Query. La riduzione della query verrà illustrata più avanti, ma in breve Power Query ottimizza il recupero dei dati in base alla modalità di utilizzo dei dati prevista.