Abrufen von Daten aus relationalen Datenquellen

Abgeschlossen

Wenn Ihre Organisation eine relationale Datenbank für den Vertrieb verwendet, können Sie Power BI Desktop verwenden, um eine direkte Verbindung mit der Datenbank herzustellen, anstatt exportierte Flatfiles zu verwenden.

Das Herstellen einer Verbindung zwischen Power BI und Ihrer Datenbank hilft Ihnen dabei, den Fortschritt Ihres Unternehmens zu überwachen und Trends zu ermitteln, sodass Sie Verkaufszahlen vorhersagen, Budgets planen und Leistungsindikatoren und -ziele festlegen können.   Power BI Desktop kann Verbindungen zu vielen relationalen Datenbanken herstellen, die entweder in der Cloud oder lokal gespeichert sind.

Szenario

Das Vertriebsteam bei Tailwind Traders hat Ihnen die Aufgabe erteilt, eine Verbindung zur lokalen SQL Server-Datenbank der Organisation herzustellen und die Verkaufsdaten abzurufen und in Power BI Desktop zu laden, damit Sie Verkaufsberichte erstellen können.

Herstellen einer Verbindung mit Daten in einer relationalen Datenbank

Sie können das Feature Daten abrufen in Power BI Desktop verwenden und eine geeignete Option für Ihre relationale Datenbank auswählen. In diesem Beispiel könnten Sie wie auf dem folgenden Screenshot gezeigt die Option SQL Server auswählen.

Tipp

Neben der Schaltfläche Daten abrufen finden Sie Optionen für den Schnellzugriff auf Datenquellen, z. B. SQL Server.

Als nächsten Schritt geben Sie den Datenbankservernamen und einen Datenbanknamen im Fenster SQL Server-Datenbank ein.  Im Datenkonnektivitätsmodus stehen zwei Optionen zur Verfügung: Importieren (standardmäßig ausgewählte und empfohlene Option) und DirectQuery. In den meisten Fällen eignet sich die Option Importieren für Sie. Im Fenster SQL Server-Datenbank finden Sie weitere, erweiterte Optionen. Sie können sie an dieser Stelle jedoch ignorieren.

Nachdem Sie den Namen Ihres Servers und den Ihrer Datenbank hinzugefügt haben, werden Sie aufgefordert, sich mit einem Benutzernamen und einem Kennwort anzumelden. Es gibt drei Anmeldeoptionen:

  • Windows: Verwenden Sie Ihr Windows-Konto (Azure Active Directory-Anmeldeinformationen).

  • Datenbank: Verwenden Sie die Anmeldeinformationen Ihrer Datenbank.   SQL Server hat beispielsweise ein eigenes Anmelde- und Authentifizierungssystem, das manchmal verwendet wird.   Wenn Ihnen der Datenbankadministrator eindeutige Anmeldeinformationen für die Datenbank zugewiesen hat, müssen Sie sie möglicherweise auf der Registerkarte Datenbank eingeben.

  • Microsoft-Konto: Verwenden Sie die Anmeldeinformationen Ihres Microsoft-Kontos.  Diese Option wird bei Azure-Diensten oft genutzt.

Wählen Sie eine Anmeldeoption aus, geben Sie Ihren Benutzernamen und Ihr Kennwort ein, und wählen Sie dann Verbinden aus.

Auswählen der Daten für den Import

Sobald die Datenbank mit Power BI Desktop verbunden ist, werden im Fenster Navigator die Daten angezeigt, die in Ihrer Datenquelle verfügbar sind (in diesem Beispiel die SQL-Datenbank). Sie können eine Tabelle oder eine Entität auswählen, um sich deren Inhalte als Vorschau anzeigen zu lassen, um sicherzustellen, dass die richtigen Daten in das Power BI-Modell geladen werden.

Wählen Sie das/die Kontrollkästchen für die Tabelle(n) aus, die Sie in Power BI Desktop laden möchten, und wählen Sie dann entweder die Option Laden oder Daten transformieren aus.

  • Laden: Mit dieser Option werden Ihre Daten im aktuellen Zustand automatisch in ein Power BI-Modell geladen.

  • Daten transformieren: Mit dieser Option öffnen Sie Ihre Daten in Microsoft Power Query. Dort können Sie Aktionen durchführen, z. B. unnötige Datensätze oder Spalten entfernen, Ihre Daten gruppieren, Fehler entfernen. Außerdem stehen viele weitere Aufgaben zur Datenqualität zur Verfügung.

Importieren von Daten durch Schreiben einer SQL-Abfrage

Eine andere Möglichkeit, Daten zu importieren, ist das Schreiben einer SQL-Abfrage. So haben Sie die Möglichkeit, nur die Tabellen und Spalten anzugeben, die Sie benötigen.

Geben Sie zum Schreiben einer SQL-Abfrage im Fenster SQL Server-Datenbank den Namen Ihres Servers und den Ihrer Datenbank ein, und wählen Sie dann den Pfeil neben Erweiterte Optionen aus, um diesen Bereich aufzuklappen und sich die verfügbaren Optionen anzusehen. Schreiben Sie Ihre Abfrageanweisung in das Feld SQL-Anweisung, und wählen Sie dann OK aus. In diesem Beispiel verwenden Sie die SQL-Anweisung SELECT, um die Spalten ID, NAME und SALESAMOUNT (Verkaufsmenge) aus der Tabelle SALES (Verkäufe) zu laden.

Ändern der Datenquelleneinstellungen

Wenn Sie die Datenquellenverbindung hergestellt und Daten in Power BI Desktop geladen haben, können Sie jederzeit zurückkehren und Ihre Verbindungseinstellungen ändern.  Diese Aktion ist oft aufgrund einer Sicherheitsrichtlinie innerhalb der Organisation erforderlich, beispielsweise, wenn das Kennwort alle 90 Tage aktualisiert werden muss.  Sie können die Datenquelle ändern und Berechtigungen bearbeiten oder löschen.

Wählen Sie auf der Registerkarte Start die Option Daten transformieren und dann die Option Datenquelleneinstellungen aus.

Wählen Sie in der angezeigten Liste der Datenquellen die Datenquelle aus, die Sie aktualisieren möchten.  Klicken Sie dann mit der rechten Maustaste auf diese Datenquelle, damit die verfügbaren Optionen angezeigt werden. Alternativ können Sie auch die Schaltflächen für Aktualisierungsoptionen unten links im Fenster verwenden.  Wählen Sie die für Sie erforderliche Aktualisierungsoption aus, ändern Sie die Einstellungen nach Bedarf, und wenden Sie die Änderungen dann an.

Sie können Ihre Datenquelleneinstellungen auch in Power Query selbst ändern. Wählen Sie die Tabelle und dann im Menüband Start die Option Datenquelleneinstellungen aus. Alternativ können Sie das Panel Abfrageeinstellungen auf der rechten Seite des Bildschirms aufrufen und dort das Symbol „Einstellungen“ neben „Quelle“ auswählen (oder auf „Quelle auswählen“ doppelklicken). Im angezeigten Fenster aktualisieren Sie die Details zu Server und Datenbank. Wählen Sie dann OK aus.

Nachdem Sie die Änderungen vorgenommen haben, wählen Sie Schließen und Anwenden aus, um diese Änderungen auf Ihre Datenquelleneinstellungen anzuwenden.

Schreiben einer SQL-Anweisung

Wie bereits erwähnt wurde, können Sie Daten mithilfe einer SQL-Abfrage in Ihr Power BI-Modell importieren.  SQL steht für Structured Query Language (strukturierte Abfragesprache) und ist eine standardisierte Programmiersprache, die verwendet wird, um relationale Datenbanken zu verwalten und verschiedene Datenverwaltungsvorgänge durchzuführen.

Stellen Sie sich ein Szenario vor, in dem in Ihrer Datenbank eine große Tabelle enthalten ist, die aus Verkaufsdaten mehrerer Jahre besteht. Die Verkaufsdaten von 2009 sind für den Bericht, den Sie erstellen, nicht relevant. In so einer Situation kann SQL von Nutzen sein, da Sie so nur die erforderlichen Daten laden können, indem Sie die exakten Spalten und Datensätze in Ihrer SQL-Anweisung angeben und diese dann in Ihr semantisches Modell importieren.  Sie können in Ihrer SQL-Abfrage auch verschiedene Tabellen miteinander verknüpfen, bestimmte Berechnungen ausführen, logische Anweisungen erstellen und Daten filtern.

Im folgenden Beispiel sehen Sie eine einfache Abfrage, für die die Spalten ID, NAME, und SALESAMOUNT (Verkaufsmenge) der Tabelle SALES (Verkäufe) ausgewählt sind.

Die SQL-Abfrage beginnt mit einer SELECT-Anweisung. Dabei können Sie die spezifischen Felder angeben, die aus der Datenbank gepullt werden sollen.  In diesem Beispiel möchten Sie die Spalten ID, NAME und SALESAMOUNT (Verkaufsmenge) laden.

SELECT
ID
, NAME
, SALESAMOUNT
FROM

FROM gibt den Name der Tabelle an, aus der die Daten gepullt werden sollen. In diesem Fall handelt es sich um die Tabelle SALES (Verkäufe). Im folgenden Beispiel sehen Sie die vollständige SQL-Abfrage:

SELECT
ID
, NAME
, SALESAMOUNT
FROM
SALES

Bei der Verwendung einer SQL-Abfrage zum Importieren von Daten sollten Sie vermeiden, das Platzhalterzeichen (*) in Ihrer Abfrage zu verwenden. Wenn Sie das Platzhalterzeichen (*) in Ihrer SELECT-Anweisung nutzen, importieren Sie alle Spalten aus der angegebenen Tabelle, auch wenn Sie nur bestimmte benötigen.

Im folgenden Beispiel sehen Sie die Abfrage, wenn das Platzhalterzeichen verwendet wird.

SELECT *
FROM
SALES

Das Platzhalterzeichen (*) importiert alle Spalten in der Tabelle SALES (Verkäufe). Diese Methode wird nicht empfohlen, da sie zu redundanten Daten in Ihrem semantischen Modell führt. Dies wiederum führt zu Leistungsproblemen und erfordert zusätzliche Schritte, um Ihre Daten für die Berichterstellung zu normalisieren.

Alle Abfragen sollten auch eine WHERE-Klausel enthalten. Diese Klausel filtert die Datensätze, sodass nur die gefilterten Datensätze abgerufen werden, die Sie auch wirklich benötigen. In diesem Beispiel müssen Sie eine WHERE-Klausel hinzufügen, wenn Sie aktuelle Verkaufsdaten nach dem 1. Januar 2020 abrufen möchten. Das folgende Beispiel zeigt die so veränderte Abfrage.

SELECT
ID
, NAME
, SALESAMOUNT
FROM
SALES
WHERE
OrderDate >= ‘1/1/2020’

Es gilt als Best Practice, diese Aktion nicht direkt in Power BI auszuführen. Sie sollten eine solche Abfrage stattdessen in einer Ansicht erstellen. Eine Ansicht ist ein Objekt in einer relationalen Datenbank ähnlich einer Tabelle. Ansichten verfügen über Zeilen und Spalten und können beinahe jeden Operator in der SQL-Programmiersprache enthalten. Wenn von Power BI beim Abrufen von Daten eine Ansicht verwendet wird, kommt dabei Query Folding zum Einsatz, ein Feature von Power Query. Query Folding soll später genauer erklärt werden. Hier nur kurz zusammengefasst: Power Query optimiert beim Query Folding den Datenabruf entsprechend der späteren Verwendungsform der Daten.