Améliorer les performances des jointures entre bases de données
Important : cette fonctionnalité déplace temporairement les données en dehors de Tableau. Assurez-vous que la base de données à laquelle vous êtes connecté provient d’une source de confiance.
Lors de la jointure de données à partir d’une seule base de données et d’un seul fichier, Tableau peut améliorer les performances en choisissant d’effectuer la jointure en utilisant la base de données au lieu de Hyper. Ce paramètre par défaut permet à Tableau de choisir l’option la plus rapide (Hyper ou la base de données connectée). Si Tableau utilise la base de données connectée, les données de la connexion de fichier sont déplacées dans des tables temporaires de la base de données et la jointure est effectuée à cet emplacement.
Conditions de la fonctionnalité
L’option permettant d’utiliser la base de données connectée pour la jointure est disponible uniquement si les conditions suivantes sont remplies :
- La source de données se compose d’une ou plusieurs connexions basées sur un fichier et d’une connexion SQL unique.
- Les fichiers à joindre doivent correspondre à l’un des types de fichiers suivants : Microsoft Excel, PDF ou Texte (.csv, .txt, .tsv ou .tab).
- La base de données connectée est l’une des suivantes :
- Microsoft SQL Server
- Oracle
- PostgreSQL
- Vertica
- Teradata
- Dans la création Web : L’option Autoriser les utilisateurs à utiliser la création Web est activée.
Modification de l’option privilégiée pour les jointures entre bases de données
- Connectez-vous à la source de données initiale.
- Dans Tableau Desktop : Sur la page de démarrage, sous Connexion, connectez-vous à un type de fichier ou de base de données pris en charge. Cette étape permet d’établir automatiquement la première connexion à la source de données Tableau.
- Dans la création Web : Depuis la page d’Accueil ou Explorer, cliquez sur Créer > Classeur pour commencer un nouveau classeur, puis connectez-vous à vos données. Cette étape permet d’établir automatiquement la première connexion à la source de données Tableau.
- Sélectionnez le fichier ou la base de données auquel/à laquelle vous souhaitez vous connecter, puis double-cliquez sur une table ou faites-la glisser vers l’espace de travail.
Dans le volet de gauche, sous Connexions, cliquez sur le bouton Ajouter ( dans la création Web) pour ajouter votre seconde connexion à la source de données Tableau.
L’option Jointure entre bases de données s’affiche.
Remarque : Si vous ne voyez pas cette option, vérifiez que vous n’utilisez que des types de sources de données prises en charge et que vous avez deux sources de données au minimum (une base de données et un ou plusieurs types de fichiers pris en charge).
- Pour changer la manière dont Tableau effectue la jointure, à côté de l’option de Jointure entre bases de données, cliquez sur Modifier.
- Dans la boîte de dialogue Jointure entre bases de données, sélectionnez l’une des options suivantes, puis cliquez sur OK :
- Effectuez toujours des jointures dans la base de données. Cette option oblige Tableau à utiliser la base de données en direct pour effectuer la jointure.
- Laisser Tableau choisir l’emplacement de la jointure. Cette option par défaut permet à Tableau de choisir l’option la plus rapide pour effectuer la jointure - soit Hyper, soit la base de données à laquelle vous êtes connecté.
L’option de jointure entre bases de données sur le volet Connexions multiples sera mise à jour en fonction de votre choix.
Important : Si vous sélectionnez Laisser Tableau choisir l’emplacement de la jointure, Tableau choisit l’option la plus rapide lorsqu’il effectue la jointure. Ce comportement est prédéterminé par un ensemble de critères, y compris les types de jointure. Par exemple, Tableau choisit toujours Hyper pour les jointures non internes.
Si Tableau utilise Hyper pour effectuer la jointure, ce processus se produit en arrière-plan et aucun indicateur ne s’affiche pour identifier où la jointure a été effectuée.
- Ajoutez une ou plusieurs clauses de jointure en sélectionnant un champ dans une source de données, un opérateur de jointure et un champ dans la table ajoutée. Inspectez la clause de jointure afin de vous assurer qu’elle reflète la façon dont vous souhaitez connecter les tables.
Utilisation de sources de données multi-connexions
Utiliser des données multiconnexion est similaire à l’utilisation de toute autre source de données, à quelques précautions près, que nous allons discuter dans cette section.
Réunir des données depuis une connexion
Pour unir des données, vous devez utiliser des tables de texte ou des tables Excel provenant de la même connexion. Cela signifie que vous ne pouvez pas réunir des tables provenant de différentes bases de données. Dans Tableau Desktop, vous pouvez réunir des tables à travers différents fichiers et classeurs Excel dans différents répertoires. Pour plus d’informations, consultez Réunir des tables en utilisant la recherche avec caractères génériques (Tableau Desktop).
Si vous souhaitez réunir les données de plusieurs bases de données, utilisez Tableau Prep(Le lien s’ouvre dans une nouvelle fenêtre).
Collationnement
Le collationnement désigne les règles d’une base de données déterminant la manière dont les valeurs de chaîne doivent être comparées et triées. Généralement, le collationnement est géré par la base de données. Toutefois, lorsque vous utilisez des jointures entre bases de données, il peut vous arriver de lier des colonnes ayant des collationnements différents.
Par exemple, supposons que votre jointure entre bases de données ait utilisé une clé de jointure comportant une colonne sensible à la casse provenant de SQL Server et une colonne non sensible à la casse provenant d’Oracle. Dans ce type de cas, Tableau mappe certains collationnements avec d’autres afin de minimiser l’interprétation incorrecte des valeurs.
Les règles suivantes sont utilisées dans les jointures entre bases de données :
- Si une colonne utilise les normes de collationnement de l’ICU (International Components for Unicode), Tableau utilise le collationnement de l’autre colonne.
- Si toutes les colonnes utilisent les normes de collationnement de l’ICU, Tableau utilise le collationnement de la colonne de la table de gauche.
- Si aucune colonne n’utilise les normes de collationnement de l’ICU, Tableau utilise un collationnement binaire. Un collationnement binaire signifie que les paramètres régionaux de la base de données et le type de données des colonnes déterminent la manière dont les valeurs de chaîne doivent être comparées et triées.
Conserver la police des caractères pour vos données Excel
Si vous devez conserver la police de caractères pour vos données Excel lors d’une jointure, vous pouvez activer l’option Conserver la police de caractères (Excel) dans le menu Données.
Lorsque cette option est sélectionnée, Tableau conserve la police de caractères et identifie de manière unique les valeurs avec différentes polices de caractères au lieu de les combiner, ce qui génère un nombre différent de lignes.
Prenons l’exemple d’une feuille de calcul avec « Maison » et d’une autre avec « maison » et « MAISON ». Par défaut, Tableau ignore la police de caractères et considère que les trois variantes de « maison » comme identiques. Lorsque l’option Conserver la police de caractères (Excel) est activée, lors de la jointure de vos tables, Tableau conserve les différences de police de caractères. « Maison », « maison » et « MAISON » sont traités comme des valeurs différentes.
Remarque : Cette option est disponible pour toutes les langues prises en charge par Tableau et ne dépend pas des paramètres régionaux de votre système d’exploitation. Cette option est uniquement disponible pour les sources de données Microsoft Excel.
Calculs et sources de données multi-connexions
Vous ne pouvez appliquer qu’un sous-ensemble de calculs à une source de données multiconnexion.
- Dans Tableau Desktop : Vous pouvez utiliser un calcul spécifique si ces deux conditions sont réunies :
- Pris en charge par toutes les connexions dans la source de données multi-connexions
- Pris en charge par les extraits Tableau.
- Dans la création Web (Tableau Cloud et Tableau Server) : Vous pouvez utiliser un calcul spécifique s’il est pris en charge par toutes les connexions dans la source de données multiconnexion.
Procédures stockées
Les procédures stockées ne sont pas disponibles pour les sources de données multiconnexion.
Effectuer la permutation de données depuis une connexion
Pour effectuer la permutation des données, vous devez utiliser des colonnes de texte ou des colonnes Excel provenant de la même connexion. Cela signifie que vous ne pouvez pas inclure des colonnes provenant de différentes bases de données dans un pivot.
Mettre en premier la connexion aux fichiers d’extrait (Tableau Desktop uniquement)
Lorsque vous vous connectez à des fichiers d’extrait dans une source de données multiconnexion, assurez-vous que la connexion au fichier d’extrait (.hyper) vient en premier. De cette manière, toutes les personnalisations faisant partie de l’extrait sont préservées, y compris les modifications apportées aux propriétés par défaut, aux champs calculés, aux groupes, aux alias, etc.
Remarque : Si vous devez de vous connecter à plusieurs fichiers d’extrait dans une source de données multiconnexion, seules les personnalisations de l’extrait dans la première connexion sont préservées.
Extraits de sources de données multiconnexion contenant des connexions vers des données basées sur des fichiers (Tableau Desktop uniquement)
Si vous publiez un extrait d’une source de données multiconnexion contenant des données basées sur un fichier tel qu’un fichier Excel, sélectionner l’option Inclure des fichiers externes place une copie des données basées sur un fichier comme partie intégrante de la source de données. Dans ce cas, une copie de vos données basées sur un fichier peut être téléchargée, et son contenu accédé par d’autres utilisateurs. Si les données basées sur un fichier contiennent des renseignements sensibles que vous avez volontairement exclus de votre extrait, ne sélectionnez pas l’option Inclure les fichiers externes lorsque vous publiez la source de données.
Pour plus d’informations sur la publication de sources de données, consultez Publier une source de données.
Requêtes et jointures entre bases de données
Pour chaque connexion, Tableau envoie des requêtes indépendantes aux bases de données de la jointure. Les résultats sont stockés dans une table temporaire au format d’un fichier d’extrait.
Important : Les jointures entre bases de données peuvent déplacer des données entre les bases de données. Assurez-vous que les bases de données que vous liez sont des sources fiables.
Par exemple, supposons que vous créez des connexions à deux tables, dbo.listings et reviews$. Ces tables sont stockées dans deux bases de données différentes, SQL Server et Excel. Tableau interroge la base de données dans chaque connexion indépendamment. La base de données exécute la requête et applique des personnalisations telles que des filtres et des calculs, et Tableau stocke les résultats de chaque connexion dans une table temporaire. Dans cet exemple, FQ_Temp_1 est la table temporaire pour la connexion à SQL Server et FQ_Temp_2 est la table temporaire pour la connexion à Excel.
Table SQL Server | Table Excel |
Lorsque vous effectuez une jointure entre bases de données, les tables temporaires sont liées par Tableau Desktop. Ces tables temporaires sont nécessaires pour que Tableau effectue des jointures entre bases de données.
Une fois que toutes les tables ont été liées, un filtre Top N est appliqué afin de limiter le nombre de valeurs affichées dans la grille de données aux 1 000 premières lignes. Ce filtre est appliqué pour conserver la réactivité de la grille de données et les performances générales de la page Source de données.
Tables liées