Données Microsoft SQL Server dans Power BI

Comme premier exemple de DirectQuery au travail, j’utiliserai une base de données Microsoft SQL Server comme source de données. Les étapes sont les suivantes:

  1. Ouvrez une nouvelle application Power BI Desktop.
  2. Dans le ruban Power BI Desktop, cliquez sur le petit triangle en bas du bouton Obtenir les données, puis cliquez sur SQL Server. La boîte de dialogue de la base de données SQL Server apparaît.
  3. Saisissez le nom du serveur dans la zone de texte Serveur. Ce sera le nom de votre SQL Server ou l’une des ressources SQL Server utilisées par ton organisation.
  4. Saisissez le nom de la base de données ; si vous utilisez les exemples de données, ce sera CarSalesData.
  5. Sélectionnez le bouton DirectQuery. La boîte de dialogue ressemblera à la figure suivante.

La boîte de dialogue de la base de données Microsoft SQL Server

  1. Cliquez sur OK. La boîte de dialogue des informations d’identification apparaîtra. Définissez le type d’informations d’identification que vous souhaitez utiliser, comme vous l’avez fait au chapitre précédent
  2. Cliquez sur Connecter. Power BI Desktop se connectera au serveur et affichera la boîte de dialogue Navigateur contenant toutes les tables et vues dans la base de données que vous êtes autorisé à voir sur le serveur que vous avez sélectionné. Dans certains cas, une boîte de dialogue indiquant que la source de données ne prend pas en charge le chiffrement. Si vous êtes satisfait d’une connexion non cryptée, cliquez sur le bouton OK pour cette boîte de dialogue.
  3. Cochez les cases des tables Clients, Couleurs, Pays, Factures, Lignes de facture et Stock. Les données des dernières données sélectionnées s’affichent à droite de la boîte de dialogue Navigateur.
  4. Cliquez sur Charger. Power BI Desktop affiche la liste des tables source pour lesquelles il établit une connexion. Vous pouvez le voir dans la Figure .

Création de connexions DirectQuery

  1. La fenêtre Power BI Desktop s’ouvre et affiche les tables que vous avez sélectionnées dans la liste Champs de la fenêtre Rapport. Vous pouvez le voir dans la Figure .

Power BI Desktop utilisant une connexion directe

C’est tellement similaire au processus que vous avez vu dans la première section du chapitre précédent que vous pouvez être pardonné de demander : « Alors, quelle est la différence ? Eh bien, il y a quelques différences, mais elles sont si subtiles qu’elles sont presque invisibles :

  • Il n’y a pas eu de phase de chargement des données. Lorsque vous avez cliqué sur Charger à l’étape 9, la fenêtre Power BI Desktop s’est affichée presque instantanément. C’est pourquoi la boîte de dialogue qui est apparue brièvement à l’étape 9 indique “Créer des connexions” au lieu de “Charger les données”.
  • Lorsque vous créez des visuels Power BI Desktop, ils prennent un peu plus de temps à remplir avec des données et à s’afficher.
  • Pour être un peu technique, ce que Power BI Desktop a fait ici est pour interroger uniquement les métadonnées du système source. Les métadonnées n’étant rien d’autre que la description des données et des structures de données (ou “données sur les données”), le processus est extrêmement rapide car très peu d’informations sont renvoyées du serveur vers Power BI Desktop. C’est pourquoi l’établissement d’une connexion DirectQuery est si rapide au départ.

En décidant d’utiliser DirectQuery, vous avez adopté une logique différente quant à la façon dont les données sont stockées. Au lieu de copier toutes les données source sélectionnées dans Power BI Desktop, vous laissez les données là où elles se trouvent (dans SQL Server dans cet exemple) et n’importez que les données qui décrivent les données, les métadonnées. Ainsi, au lieu d’avoir besoin de toutes les données dans Power BI Desktop avant de pouvoir effectuer une analyse, vous pouvez accéder uniquement aux données dont vous avez besoin, au fur et à mesure que vous en avez besoin. Néanmoins, vous pouvez utiliser ces données comme base pour le mashup de données et la modélisation décrits dans les chapitres 7 à 12. Vous pouvez donc ajouter des calculs et modifier les données (avec quelques limitations, au moins) comme vous le pouvez si vous avez chargé toutes les données source dans Power BI Desktop avant de commencer votre analyse.

En décidant d’utiliser DirectQuery, vous avez essentiellement accepté un compromis. Utilisant

DirectQuery implique que :

  • Vous gagnerez du temps en ne chargeant pas les données dans le modèle en mémoire de Power BI Desktop.
  • Ouvrir le rapport dans Power BI Desktop et choisir Actualiser mettra à jour les champs du modèle pour refléter les modifications de métadonnées.
  • Vous interrogerez la source de données chaque fois que vous créerez, modifierez ou filtrerez un visuel Power BI Desktop, mais uniquement pour le sous-ensemble de données requis pour le visuel spécifique que vous créez ou modifiez.
  • Lorsque vous actualisez les données, vous ne rechargez pas toutes les données en mémoire comme c’est le cas lors de l’importation de données. Power BI Desktop n’interrogera la base de données que pour les données réellement nécessaires pour afficher les visuels que vous avez créés.
  • Le découpage des données peut prendre plus de temps lors de l’utilisation de DirectQuery, car tous les

Les visuels Power BI Desktop sont interrogés à nouveau.

  • Certaines des techniques de mashup de données que vous découvrirez dans les chapitres 7 à 12 ne peuvent pas être utilisées. Heureusement, ce sont des événements assez fréquents.
  • Lorsque les données nécessaires pour traiter la demande ont été récemment demandées, Power BI Desktop utilise des données récentes pour réduire le temps nécessaire à l’affichage de la visualisation. Cependant, sélectionner Actualiser dans le ruban Accueil garantira que toutes les visualisations sont actualisées avec les données actuelles

Cependant, si vous disposez d’un ensemble de données source en grande partie propre et cohérent, comme les données d’un entrepôt de données d’entreprise, où le “travail lourd” requis pour rendre les données fiables et utilisables a déjà été effectué, alors DirectQuery peut vraiment accélérer votre l’analyse des données. Et vous êtes absolument certain de voir également les données actuelles.

Notez que vous pouvez aussi bien utiliser une requête t-SQL ou une procédure stockée SQL Server

pour renvoyer des données via une connexion DirectQuery. Développez simplement la section des options avancées de la boîte de dialogue de connexion à l’étape 5 (voir Figure ) et entrez ou copiez le texte SQL à exécuter comme décrit dans le chapitre précédent pour charger des données à partir de SQL Server.

Pour donner une image équilibrée (et malgré une appréciation sincère de l’utilité de DirectQuery), je dois admettre qu’il y a quelques inconvénients à ce type de connexion dont vous devez être conscient :

  • Vous ne pouvez pas (pour le moment du moins) spécifier une procédure stockée dans les Options avancées comme source de données.
  • Toutes les tables doivent provenir d’une seule base de données, sauf si vous utilisez des modèles composites (qui mélangent DirectQuery et des données chargées en mémoire) introduits en juillet 2019 dans Power BI Desktop.
  • Le temps requis pour actualiser un visuel dépend du temps que prend la source de données pour répondre et renvoyer les résultats de la requête.
  • Vous ne pouvez renvoyer qu’un maximum d’un million d’enregistrements à Power BI Desktop lors de l’utilisation de DirectQuery. Heureusement, ce seuil est une limite de lignes et non une limite sur les données source. Donc, si vous regroupez une source de données d’un milliard d’enregistrements mais ne renvoyant que 999 999 enregistrements récapitulatifs, la requête fonctionnera.
  • Le filtrage des relations (vous le verrez au chapitre 13) ne fonctionnera que dans une seule direction.
  • Les requêtes DAX très complexes ne fonctionneront tout simplement pas lors de l’utilisation de DirectQuery. La seule solution pour forcer les requêtes complexes à fonctionner consiste à revenir au chargement des données source dans le modèle de données en mémoire.
  • Sélectionnez Fichier ➤ Options et paramètres ➤ Options ➤ DirectQuery puis “Autoriser les mesures sans restriction en mode DirectQuery” empêchera Power BI Desktop d’appliquer les limitations intégrées aux expressions DAX. Cependant, cela peut rendre certaines requêtes extrêmement lentes, car la conversion de DAX en SQL n’est pas toujours efficace.
  • DAX Time Intelligence n’est pas disponible avec DirectQuery.
  • Certaines fonctionnalités du service Power BI (telles que Quick Insights) ne sont pas disponibles pour les jeux de données utilisant DirectQuery.
  • La complexité disponible pour les requêtes SQL est limitée.
  • La prise en charge de la date et de l’heure est d’une précision d’une seconde seulement.
  • Les colonnes calculées sont limitées à être intra-ligne, comme dans, elles ne peuvent faire référence qu’aux valeurs d’autres colonnes de la même table, sans l’utilisation de fonctions d’agrégation.
  • Les tables calculées ne sont pas prises en charge.
  • Il n’est pas possible d’utiliser la fonction de regroupement pour rechercher automatiquement des groupes.

Pour terminer sur une note positive, DirectQuery présente les avantages suivants :

  • Les rapports créés à l’aide de DirectQuery peuvent, bien sûr, être publiés sur le

Service Power BI.

  • La limite de 1 Go sur la taille du jeu de données dans Power BI Desktop ne s’applique pas aux connexions DirectQuery.

Notez que si Power Bi Desktop a récemment demandé les données du serveur requises pour une visualisation, il utilisera les données existantes qui ont été mises en cache pour éviter de mettre un stress excessif sur le serveur source ainsi que pour améliorer l’expérience utilisateur. Par conséquent, vous devez actualiser les données si vous voulez être sûr que vous consultez les informations les plus récentes et que vous pensez que les données de la source ont été mises à jour récemment.

Données dimensionnelles SQL Server Analysis Services Une autre source de données pouvant utiliser DirectQuery (qui utilise la variante que Microsoft appelle « Connect Live ») est l’entrepôt de données dimensionnelles SQL Server Analysis Services, ou « SSAS classique », comme on l’appelle également. Bien qu’une connexion en direct à un SSAS classique

l’entrepôt de données dimensionnelles est très similaire au chargement de données de SSAS dans Power BI Desktop, il existe quelques différences qui pourraient vous faire préférer cette méthode.

Remarque La connexion en direct à un entrepôt de données tabulaire ne fonctionnera que si vous utilisez

SQL Server 2012 Sp1 Cu4 ou supérieur. dans ce cas, vous devez disposer d’une édition Enterprise ou Business Intelligence, sauf si vous utilisez SQL Server 2016, auquel cas l’édition standard peut être utilisée.

La configuration d’une connexion en direct à SSAS classique nécessite les étapes suivantes :

  1. Dans le ruban Power BI Desktop, cliquez sur Obtenir des données ➤ Plus ➤ Base de données et sélectionnez Base de données SQL Server Analysis Services dans la boîte de dialogue Obtenir des données.
  2. Cliquez sur Connecter. La boîte de dialogue de la base de données SQL Server Analysis Services s’affiche.
  3. Entrez le nom du serveur Analysis Services et le nom de la base de données (ou « cube »), si vous le connaissez. Dans cet exemple, la base de données est nommée CarSalesOLAP ; bien sûr, vous devrez spécifier votre propre nom de base de données SSAS. Dans tous les cas, vous devrez utiliser le nom de votre propre serveur SSAS.
  4. Sélectionnez le bouton Connecter en direct.
  5. Cliquez sur OK. Si c’est la première fois que vous vous connectez au cube, la boîte de dialogue Access SQL Server Analysis Services s’affiche pour vous permettre de définir les informations d’identification que vous utilisez pour vous connecter à la base de données Analysis Services.
  6. Acceptez ou modifiez les informations d’identification et cliquez sur Connecter. La boîte de dialogue Navigateur apparaît.
  7. Cliquez sur le cube auquel vous souhaitez vous connecter à partir de la base de données SSAS, explorez les éléments du cube et sélectionnez les métriques et les dimensions qui vous intéressent. La boîte de dialogue ressemblera à quelque chose comme Illustration .

Connexion en direct à une base de données tabulaire

  1. Cliquez sur OK. La fenêtre Power BI Desktop s’ouvrira et affichera les tables de faits et les dimensions que vous avez sélectionnées dans la liste Champs dans la fenêtre Rapport. Cela pourrait ressembler à quelque chose comme la figure 4-5.

Power BI Desktop à l’aide d’une connexion en direct

Ainsi, bien que généralement similaire au processus de chargement des données de SSAS classique dans Power BI Desktop que vous avez vu dans le chapitre précédent, cette approche manifeste néanmoins une différence fondamentale :

  • Vous n’avez pas pu sélectionner les tables à utiliser à partir de la source de données tabulaire. Cependant, la structure sous-jacente du cube Analysis Services est visible comme elle le serait à partir, par exemple, d’Excel. Cela inclut la visibilité de la hiérarchie des dossiers pour les données présentes dans le cube SSAS.

Ainsi, dans l’ensemble, une connexion en direct implique que les données sources doivent être prêtes à l’emploi et correctement structurées pour que vous puissiez y baser vos rapports analytiques Power BI Desktop. Vous ne pouvez pas apporter de modifications aux données ou aux structures de données ni ajouter de calculs dans Power BI Desktop.

Il y a quelques autres points que vous devrez peut-être prendre en compte si vous hésitez entre une connexion en direct et le chargement de données dans Power BI Desktop :

  • Aucune des possibilités de mashup de données que vous découvrirez dans les chapitres 7 à 12 n’est disponible.
  • Vous ne pouvez pas utiliser MDX pour sélectionner les données que vous souhaitez utiliser dans Power

Bureau BI. Ainsi, une connexion en direct est une option “tout ou rien”.

  • Certaines fonctionnalités de votre cube ne sont pas entièrement prises en charge ou ne sont pas prises en charge du tout avec Live Connections à partir de Power BI Desktop.

Pourtant, encore une fois, une connexion directe apporte un facteur crucial dans le mélange, et c’est la vitesse pure. Comme les entrepôts de données SSAS peuvent être énormes, le fait que vous ne chargez pas d’énormes quantités de données dans Power BI Desktop peut vous faire gagner un temps considérable. De plus, un entrepôt de données trop volumineux pour être chargé dans Power BI Desktop peut désormais devenir accessible via une connexion directe. De plus, vos visuels Power BI Desktop renverront uniquement les données exactes dont ils ont besoin à partir de la source de données SSAS, comme c’était le cas pour la base de données SQL Server dans la section précédente. Tout le travail acharné est effectué par le serveur, laissant Power BI Desktop (et vous) libre de vous concentrer sur l’analyse et la présentation.

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x