Les fichiers JSON ne sont pas toujours structurés de manière aussi simpliste que le fichier colors.json que vous avez vu il y a quelques pages. En effet, les fichiers JSON peuvent contenir de nombreux sous-niveaux de données, structurés en nœuds séparés. Chaque nœud peut contenir plusieurs éléments de données regroupés dans une manière logique. Souvent, vous souhaiterez sélectionner des « sous-niveaux » de données à partir du fichier source, ou peut-être sélectionner uniquement certains éléments de sous-niveau et pas d’autres.
Cette section vous montre comment sélectionner les éléments de données qui vous intéressent à partir d’une structure JSON complexe. Plus précisément, l’exemple de fichier de données source contient un niveau “racine” qui affiche des données de base telles que le numéro de facture, la date de vente et le prix de vente (entre autres éléments) et trois “sous-niveaux” qui contiennent des informations sur
- Le véhicule
- Les données financières
- Le consommateur
Remarque Si vous souhaitez avoir une idée de ce à quoi ressemble un fichier JsoN complexe contenant plusieurs nœuds imbriqués, ouvrez simplement le fichier C:\PowerBIDesktopSamples\ CarSalesJSON_Complex.json dans un éditeur de texte.
Dans cet exemple, vous verrez comment sélectionner des éléments parmi une ou plusieurs (mais pas toutes) des données disponibles dans le fichier source :
- Dans le ruban Power BI Desktop, cliquez sur Obtenir des données ➤ Fichier et sélectionnez JSON dans la liste des sources de fichiers à droite de la boîte de dialogue Obtenir des données.
- Cliquez sur Connecter et accédez au dossier contenant le fichier JSON que vous souhaitez charger (C:\PowerBIDesktopSamples\ CarSalesJSON_Complex.json, dans cet exemple).
- Cliquez sur Ouvrir. La fenêtre de l’éditeur de requête apparaîtra et affichera automatiquement le ruban de conversion des outils d’enregistrement. Vous pouvez le voir dans la Figure .
Ouvrir un fichier JSON complexe
- Cliquez sur Dans le tableau dans le ruban Convertir des outils d’enregistrement. La requête
L’éditeur ressemblera à la Figure .
Un fichier JSON complexe
- Cliquez sur l’icône Développer en haut à droite de la colonne Valeur et sélectionnez Développer vers de nouvelles lignes. L’éditeur de requête ressemblera à la figure .
Développer un fichier JSON
- Cliquez sur l’icône Développer en haut à droite de la colonne Valeur et cliquez sur OK pour afficher tous les attributs JSON. La fenêtre de l’éditeur de requête ressemblera à la figure . Chaque colonne contenant le mot « enregistrement » est, en fait, un nœud JSON qui contient d’autres sous-niveaux de données.
Affichage de la structure d’un fichier JSON
- Sélectionnez la colonne Véhicule et cliquez sur l’icône Développer à droite du titre de la colonne. La liste des éléments disponibles qui sont “imbriqués” à un niveau inférieur à l’intérieur du JSON source apparaîtra. Vous pouvez le voir dans la Figure .
Un fichier JSON après analyse
- Cliquez sur le bouton Appliquer les modifications en haut de la fenêtre Power BI Desktop.
Il est conseillé de cliquer sur le lien charger plus dans le menu contextuel Développer lorsque vous identifiez les données imbriquées dans un nœud JsoN. Cela forcera Power Query
pour analyser un plus grand nombre d’enregistrements et renvoyer, potentiellement, une liste plus complète de champs imbriqués.
- Cliquez sur OK. Les nouvelles colonnes seront ajoutées au tableau de données.
- Sélectionnez la colonne Finance et cliquez sur l’icône Développer à droite du titre de la colonne. La liste des éléments disponibles qui sont “imbriqués”
Cette approche vous permet d’être extrêmement sélectif sur les données que vous chargez à partir d’un fichier JSON. Vous pouvez choisir d’inclure n’importe quelle colonne à n’importe quel niveau de la structure source. Comme vous l’avez vu, vous pouvez sélectionner (ou ignorer) des sous-niveaux entiers de données imbriquées extrêmement facilement.
Cette section n’était qu’une simple introduction à l’analyse de fichiers JSON complexes. Comme cette structure de données particulière peut contenir plusieurs sous-niveaux de données et peut mélanger des données et des sous-niveaux dans chaque “nœud” du fichier JSON, la structure de données source peut être extrêmement complexe. Heureusement, les techniques que vous venez d’apprendre peuvent être étendues pour gérer n’importe quel niveau de complexité JSON et vous aider à apprivoiser les structures de données les plus décourageantes.
Il est important d’« aplatir » les données source afin que tous les sous-niveaux (ou nœuds si vous préférez) soient supprimés et que les données qu’ils contiennent s’affichent sous la forme d’une simple colonne dans la requête.