Uw data relateren
Relaties zijn een dynamische, flexibele manier om data uit meerdere tabellen te combineren voor analyse. Een relatie beschrijft hoe twee tabellen zich op basis van gemeenschappelijke velden tot elkaar verhouden, maar voegt de tabellen niet samen. Wanneer er een relatie tussen tabellen wordt gecreëerd, blijven de tabellen gescheiden en behouden ze hun oorspronkelijke detailniveau en domeinen.
Zie een relatie als een contract tussen twee tabellen. Wanneer u een visualisatie bouwt met velden uit deze tabellen, haalt Tableau data uit deze tabellen binnen met behulp van dat contract om een query met de juiste joins te bouwen.
Meer informatie: De mogelijkheid om data te combineren met behulp van relaties is een belangrijk kenmerk van de nieuwe mogelijkheden voor datamodellering van Tableau. Zie Wat is er veranderd bij databronnen en analyse(Link wordt in een nieuw venster geopend) voor meer informatie. Leer meer over hoe relaties werken in deze Tableau-blogposts:
- Relaties, deel 1: Introductie van nieuwe datamodellering in Tableau (in het Engels)(Link wordt in een nieuw venster geopend)
- Relaties, deel 2: Tips en trucs (in het Engels)(Link wordt in een nieuw venster geopend)
- Relaties, deel 3: Vragen stellen over meerdere gerelateerde tabellen (in het Engels)(Link wordt in een nieuw venster geopend)
Bekijk een video: Bekijk deze video van 5 minuten voor een inleiding tot het gebruik van relaties in Tableau.
Opmerking: De interface voor het bewerken van relaties die in deze video wordt getoond, wijkt enigszins af van de huidige versie, maar heeft dezelfde functionaliteit.
Actie-analyse(Link wordt in een nieuw venster geopend) biedt ook nuttige video-podcasts over het gebruik van relaties in Tableau. Zie Waarom heeft Tableau relaties uitgevonden?(Link wordt in een nieuw venster geopend) voor een introductie. Klik op Video-podcast op de Actie-analyse-website Bibliotheek(Link wordt in een nieuw venster geopend) om andere podcasts te bekijken.
Wat zijn relaties?
Relaties zijn de flexibele, verbindende lijnen die tussen de logische tabellen in uw databron worden gemaakt. Sommige mensen noemen relaties liefkozend 'noedels', maar in onze helpdocumentatie noemen we ze meestal 'relaties'.
Wij adviseren om relaties als eerste aanpak te gebruiken bij het combineren van uw data, omdat dit de voorbereiding en analyse van data eenvoudiger en intuïtiever maakt. Gebruik alleen joins als dat absoluut noodzakelijk is(Link wordt in een nieuw venster geopend).
Relaties bieden verschillende voordelen ten opzichte van het gebruik van joins voor data in meerdere tabellen:
- U hoeft geen join-typen(Link wordt in een nieuw venster geopend) tussen tabellen te configureren. U hoeft alleen maar de velden te selecteren om de relatie te definiëren.
- Gerelateerde tabellen blijven gescheiden en onderscheidend; ze worden niet samengevoegd tot één enkele tabel.
- Relaties maken gebruik van joins, maar het gaat om automatische joins. Tableau selecteert join-typen automatisch op basis van de velden die in de visualisatie worden gebruikt. Tijdens de analyse past Tableau de join-typen op intelligente wijze aan en blijft het oorspronkelijke detailniveau in uw data behouden.
- Tableau gebruikt relaties om tijdens de analyse de juiste aggregaties en passende joins te genereren, op basis van de huidige context van de velden die in een werkblad worden gebruikt.
- Er worden meerdere tabellen met verschillende detailniveaus ondersteund in één databron. U kunt datamodellen bouwen die meer tabellen bevatten en het aantal databronnen beperken dat nodig is om een visualisatie te maken.
- Niet-overeenkomende meetwaarden worden niet verwijderd (geen onbedoeld verlies van data).
- Het gebruik van relaties voorkomt het dupliceren van data en filterproblemen die soms het gevolg kunnen zijn van joins.
- Tableau genereert alleen query's voor de data die relevant zijn voor de huidige weergave.
Zie voor gerelateerde informatie:
- Relaties gebruiken voor data-analyse met meerdere tabellen(Link wordt in een nieuw venster geopend)
- Verschillen tussen relaties en joins(Link wordt in een nieuw venster geopend)
- Hoe analyse werkt in databronnen met meerdere tabellen die gebruikmaken van relaties(Link wordt in een nieuw venster geopend)
- Laat u niet afschrikken door relaties(Link wordt in een nieuw venster geopend)
Vereisten voor relaties
- Bij het relateren van tabellen moeten de velden die de relaties definiëren hetzelfde datatype hebben.
- U kunt geen relaties definiëren op basis van geografische velden.
- Circulaire relaties worden niet ondersteund in het datamodel.
- U kunt geen relaties tussen gepubliceerde databronnen definiëren.
Factoren die de voordelen beperken van het gebruik van gerelateerde tabellen zijn:
- Vervuilde data in tabellen (bijvoorbeeld tabellen die niet zijn gemaakt met een goed gestructureerd model in gedachten en die een combinatie van meetwaarden en dimensies in meerdere tabellen bevatten) kunnen de analyse met meerdere tabellen complexer maken.
- Het gebruik van databronfilters beperkt de mogelijkheid van Tableau om join-culling op de data toe te passen. Join-culling is een term voor de manier waarop Tableau query's vereenvoudigt door onnodige joins te verwijderen.
- Tabellen met veel niet-overeenkomende waarden in relaties.
- In Tableau-versie 2024.2 en hoger kunt u gedeelde dimensies modelleren en meerdere basistabellen gebruiken om conforme dimensies aan te pakken met behulp van relaties tussen meerdere feiten. Zie Over datamodellen met relaties tussen meerdere feiten(Link wordt in een nieuw venster geopend), Wanneer een model met relaties tussen meerdere feiten gebruiken(Link wordt in een nieuw venster geopend) en Een datamodel maken met relaties tussen meerdere feiten(Link wordt in een nieuw venster geopend) voor meer informatie.
Data die niet gerelateerd kunnen worden
De meeste relationele verbindingstypen worden volledig ondersteund. In Tableau 2020.2 geldt een beperking van één logische tabel voor kubussen, SAP HANA (met OLAP-kenmerk), JSON en Google Analytics. Opgeslagen procedures kunnen alleen in één logische tabel worden gebruikt.
Gepubliceerde databronnen mogen niet aan elkaar worden gerelateerd.
Niet ondersteund
- Kubus-databases ondersteunen de nieuwe logische laag niet. Verbinding maken met een kubus werkt net als in versies vóór 2020.2.
- Opgeslagen procedures: ondersteunen federatie, relaties of joins niet. Ze worden weergegeven in één logische tabel en staan het openen van het canvas Join/Vereniging (fysieke laag) niet toe.
- Splunk: ondersteunt geen joins naar links (en daarom geen logische tabellen).
- JSON: ondersteunt geen federatie, aangepaste SQL, joins of relaties (alleen verenigingen).
- Databronnen die geen LOD-berekeningen ondersteunen. Zie Databronbeperkingen voor LOD-expressies(Link wordt in een nieuw venster geopend) voor meer informatie.
Beperkte ondersteuning
- Salesforce- en WDC-standaardverbindingen: deze worden weergegeven als samengevoegde tabellen in een logische tabel. Het toevoegen van deze verbindingen wordt momenteel alleen ondersteund voor databronnen met één logische tabel. Standaardverbindingen kunnen niet aan een bestaande tabel worden gekoppeld.
- SAP HANA: biedt momenteel geen ondersteuning voor het relateren van logische tabellen wanneer het OLAP-kenmerk is ingesteld voor de verbinding.
Relaties maken en definiëren
Voor modellen met één basistabel geldt dat, nadat u de eerste tabel naar het canvas op het hoogste niveau van de databron hebt gesleept, elke nieuwe tabel die naar het canvas wordt gesleept aan een bestaande tabel moet zijn gerelateerd. Wanneer u relaties maakt tussen tabellen in de logische laag, bouwt u feitelijk het datamodel voor uw databron op.
Opmerking: In Tableau-versie 2020.3 en hoger kunt u relaties maken op basis van berekende velden en kunt u met behulp van operators in de relatiedefinitie velden vergelijken die voor relaties worden gebruikt.
In versie 2024.2 en hoger: Voor modellen met meerdere basistabellen moet elke nieuwe tabel die u aan het model toevoegt, zijn gerelateerd in ten minste één boom van de basistabel. Zie Over datamodellen met relaties tussen meerdere feiten(Link wordt in een nieuw venster geopend), Wanneer een model met relaties tussen meerdere feiten gebruiken(Link wordt in een nieuw venster geopend) en Een datamodel maken met relaties tussen meerdere feiten(Link wordt in een nieuw venster geopend) voor meer informatie.
Een relatie maken
U maakt relaties in de logische laag van de databron. Dit is de standaardweergave van het canvas die u ziet op de pagina Databron.
De stappen in dit onderwerp gaan specifiek over het opzetten van relaties voor modellen met één tabel.
In versie 2024.2 en hoger kunt u een model met één basistabel of een model met meerdere basistabellen maken. Zie Een datamodel maken met relaties tussen meerdere feiten(Link wordt in een nieuw venster geopend) voor informatie over het maken van relaties tussen meerdere feiten met meerdere basistabellen.
Opmerking: De Salesforce-connector ondersteunt geen ongelijkheidsoperators. Google Big Query- en MapR-connectoren ondersteunen ongelijke joins vanaf versie 2021.4. De MapR-connector is vanaf versie 2022.3 verouderd.
Sleep een tabel naar het canvas.
Voor een model met één basistabel: de eerste tabel die u aan het canvas toevoegt, wordt de basistabel. Alle andere tabellen die u toevoegt, worden aan die tabel gerelateerd.
Voor een model met meerdere basistabellen: u moet beslissen welke tabellen de basistabellen zijn. Om nog een basistabel te maken, sleept u een tabel uit het linkerdeelvenster naar het neerzetgebied Nieuwe basistabel. Zie Een datamodel maken met relaties tussen meerdere feiten(Link wordt in een nieuw venster geopend) voor meer informatie.Sleep nog een tabel naar het canvas. Wanneer u de 'noedel' ziet tussen de twee tabellen die u wilt relateren, zet u die tabel neer.
De relatie-instellingen worden onder het canvas geopend in het deelvenster Details van tabel. Tableau probeert automatisch de relatie te maken op basis van bestaande sleutelbeperkingen en overeenkomende velden om de relatie te definiëren. Als de overeenkomende velden niet kunnen worden bepaald, moet u deze selecteren.
Om de velden te wijzigen: Selecteer een veldpaar en klik vervolgens in de lijst met velden hieronder om een nieuw paar overeenkomende velden te selecteren.
Om meerdere veldparen toe te voegen: Nadat u het eerste paar hebt geselecteerd, klikt u op Sluiten en vervolgens op Meer velden toevoegen.
Als geen beperkingen worden gedetecteerd, wordt er een veel-op-veel-relatie gecreëerd en wordt de referentiële integriteit ingesteld op Sommige records komen overeen. Deze standaardinstellingen zijn een veilige keuze en bieden de meeste flexibiliteit voor uw databron. De standaardinstellingen ondersteunen volledige joins buiten en optimaliseren query's door tabeldata samen te voegen voordat tijdens de analyse joins worden gevormd. Alle kolom- en rijdata uit elke tabel worden beschikbaar voor analyse.
In veel analytische scenario's levert het gebruik van de standaardinstellingen voor een relatie alle data op die u nodig hebt voor analyse. Een veel-op-veel-relatie werkt zelfs als uw data veel-op-één of één-op-één zijn. Als u de specifieke kardinaliteit en referentiële integriteit van uw data kent, kunt u de Instellingen voor prestatieopties(Link wordt in een nieuw venster geopend) aanpassen om uw data nauwkeuriger te beschrijven en te optimaliseren hoe Tableau de database raadpleegt.
Voeg indien nodig meer tabellen toe door dezelfde stappen te volgen.
Nadat u uw gerelateerde databron met meerdere tabellen hebt gemaakt, kunt u de data gaan verkennen. Zie Hoe analyse werkt voor databronnen met meerdere tabellen die gebruikmaken van relaties en Problemen met analyses met meerdere tabellen oplossen(Link wordt in een nieuw venster geopend) voor meer informatie.
Een tabel verplaatsen om een andere relatie te maken
Om een tabel te verplaatsen, sleept u deze naast een andere tabel. Of wijs een tabel aan met de muis, klik op de pijl en selecteer Verplaatsen.
Tip: Sleep een tabel over de bovenkant van een andere tabel om deze te vervangen.
De root- of basistabel van een datamodel wijzigen
U kunt de roottabel (versie 2020.2 tot en met 2024.1) of een basistabel (versie 2024.2 en hoger) omwisselen met een andere downstream-tabel. Klik met de rechtermuisknop op een andere logische tabel in het datamodel en selecteer vervolgens Wisselen met root of Wisselen met basistabel (tabelnaam) om de wijziging door te voeren.
Een tabel verwijderen uit een relatie
Om een tabel te verplaatsen, wijst u een tabel aan met de muis, klikt u op de pijl en selecteert u Verwijderen.
Als u een tabel in het canvas verwijdert, worden ook de bijbehorende onderliggende elementen automatisch verwijderd.
Een relatie bekijken
- Wijs de relatielijn (noedel) aan met de muis om de overeenkomende velden te zien die deze definiëren. U kunt ook een logische tabel aanwijzen met de muis om te zien wat deze bevat.
Een relatie bewerken
- Klik op een relatielijn om de relatie-instellingen in het deelvenster Details van tabel te openen. U kunt velden toevoegen, wijzigen of verwijderen die worden gebruikt om de relatie te definiëren. Voeg meer veldparen toe om een samengestelde relatie te maken.
Om meerdere veldparen toe te voegen: Nadat u het eerste paar hebt geselecteerd, klikt u op Sluiten en vervolgens op Meer velden toevoegen.
Tips voor het maken van relaties
- De eerste tabel die u naar het canvas sleept, wordt de root- of basistabel voor het datamodel in uw databron. Nadat u de basistabel hebt versleept, kunt u in willekeurige volgorde meer tabellen naar buiten slepen. U moet overwegen welke tabellen aan elkaar gerelateerd moeten zijn, en welke overeenkomende veldparen u voor elke relatie definieert.
- Voordat u relaties gaat maken, kan het ook handig zijn om de data uit de databron voor of tijdens de analyse te bekijken, zodat u een idee krijgt van het bereik van elke tabel. Zie Onderliggende data weergeven voor meer informatie. U kunt ook Data weergeven gebruiken om de onderliggende data van een tabel te bekijken wanneer een relatie ongeldig is.
- Als u een sterrenschema maakt, kan het handig zijn om eerst de feitentabel naar buiten te slepen en vervolgens dimensietabellen aan die tabel te relateren.
- Elke relatie moet bestaan uit ten minste één overeenkomend paar velden. Voeg meerdere veldparen toe om een samengestelde relatie te creëren. Overeenkomende paren moeten hetzelfde datatype hebben. Als u het datatype op de pagina Databron wijzigt, wordt dit vereiste niet gewijzigd. Tableau gebruikt voor query's nog steeds het datatype in de onderliggende database.
- Relaties kunnen worden gebaseerd op berekende velden. U kunt ook opgeven hoe velden moeten worden vergeleken door operators te gebruiken terwijl u de relatie definieert.
- Als u een tabel in het canvas verwijdert, worden ook de bijbehorende onderliggende elementen automatisch verwijderd.
- U kunt de roottabel (versie 2020.2 tot en met 2024.1) of een basistabel (versie 2024.2 en hoger) omwisselen met een andere downstream-tabel. Klik met de rechtermuisknop op een andere logische tabel in het datamodel en selecteer vervolgens Wisselen met root of Wisselen met basistabel (tabelnaam) om de wijziging door te voeren.
Relaties in uw databron valideren
Er zijn verschillende manieren om uw datamodel te valideren voor analyse. Bij het maken van het model voor uw databron raden we u aan naar het blad te gaan, die databron te selecteren en vervolgens een visualisatie te bouwen om de aantallen records, niet-overeenkomende waarden, null-waarden of herhaalde meetwaarden te bekijken. Probeer met velden in verschillende tabellen te werken om ervoor te zorgen dat alles er zo uitziet als u voor ogen had.
Let bijvoorbeeld op het volgende:
- Gebruiken uw relaties in het datamodel de juiste overeenkomende velden voor hun tabellen?
- Wat gebeurt er als u verschillende dimensies en meetwaarden in de weergave sleept?
- Ziet u het verwachte aantal rijen?
- Zouden samengestelde relaties de relatie nauwkeuriger maken?
- Als u een van de standaardinstellingen in de Instellingen voor prestatieopties hebt gewijzigd, zijn de waarden in de visualisatie dan wat u zou verwachten? Als dat niet het geval is, controleer dan de instellingen of herstel de standaardinstellingen.
Opties voor het valideren van relaties en het datamodel:
- Elke tabel bevat een telling van het aantal records, in de vorm van een veld met de naam TabelNaam(Aantal), op het detailniveau van die tabel. Sleep het veld Aantal naar de weergave om het aantal voor een tabel te zien. Als u het aantal voor alle tabellen wilt zien, selecteert u het veld Aantal voor elke tabel in het deelvenster Data en klikt u op de teksttabel in Laten zien.
- Klik op Data weergeven in het deelvenster Data om het aantal rijen en data per tabel weer te geven. Voordat u relaties gaat maken, kan het ook handig zijn om de data uit de databron voor of tijdens de analyse te bekijken, zodat u een idee krijgt van de scope van elke tabel. Zie Onderliggende data weergeven(Link wordt in een nieuw venster geopend) voor meer informatie.
- Sleep dimensies naar rijen om het aantal rijen in de statusbalk te zien. Als u niet-overeenkomende waarden wilt zien, klikt u op het menu Analyse en selecteert u Lay-out tabel > Lege rijen weergeven of Lege kolommen weergeven. U kunt ook verschillende meetwaarden naar de weergave slepen, zoals <YourTable>(Aantal) uit een van de tabellen in uw visualisatie. Zo ziet u alle waarden van de dimensies uit die tabel.
Tip: u kunt de prestatieregistratie in Tableau Desktop gebruiken als u de query's wilt zien die voor relaties worden gegenereerd.
- Klik op het menu Help en selecteer vervolgens Instellingen en prestaties > Prestatieregistratie starten.
- Sleep velden naar de weergave om uw visualisatie samen te stellen.
- Klik op het menu Help en selecteer vervolgens Instellingen en prestaties > Prestatieregistratie stoppen.
- Klik in het dashboard Prestatiesamenvatting onder Gebeurtenissen gesorteerd op tijd op een Query wordt uitgevoerd-balk en bekijk de query eronder.
Een andere, meer geavanceerde optie is het gebruik van de Tableau Log Viewer(Link wordt in een nieuw venster geopend) op GitHub. Met behulp van end-protocol.query
kunt u filteren op een specifiek trefwoord. Ga naar de Tableau Log Viewer-wikipagina(Link wordt in een nieuw venster geopend) op GitHub voor meer informatie.
Visualisaties met alleen dimensies
Als u bij het gebruik van een databron met meerdere tabellen en gerelateerde tabellen een visualisatie met alleen dimensies bouwt, gebruikt Tableau binnenste joins en ziet u niet het volledige, niet-overeenkomende domein.
Als u gedeeltelijke combinaties van dimensiewaarden wilt bekijken, kunt u:
- Lege rijen/kolommen weergeven gebruiken om alle mogelijke rijen te zien. Klik op het menu Analyse en selecteer vervolgens Lay-out tabel > Lege rijen weergeven of Lege kolommen weergeven.
- U kunt een meetwaarde, zoals <YourTable>(Aantal), vanuit een van de tabellen in uw visualisatie aan de weergave toevoegen. Dit zorgt ervoor dat u alle waarden van de dimensies uit die tabel ziet.
Zie Analyses in databronnen met meerdere tabellen versus databronnen met één tabel(Link wordt in een nieuw venster geopend) en Problemen met analyses met meerdere tabellen oplossen(Link wordt in een nieuw venster geopend).
Relaties (logische tabellen) versus joins (fysieke tabellen)
Hoewel ze vergelijkbaar zijn, gedragen joins en relaties zich anders in Tableau en zijn ze gedefinieerd in verschillende lagen van het datamodel(Link wordt in een nieuw venster geopend). U maakt relaties tussen logische tabellen op het hoogste niveau in de logische laag van uw databron. U maakt joins tussen fysieke tabellen in de fysieke laag van uw databron.
Met joins worden data uit twee tabellen samengevoegd tot één tabel voordat uw analyse begint. Wanneer u de tabellen samenvoegt, kunnen er data uit één of beide tabellen worden gedupliceerd of gefilterd. Ook kunnen er NULL-rijen aan uw data worden toegevoegd als u een linker, rechter of volledig buitenste join gebruikt. Wanneer u gekoppelde data analyseert, moet u ervoor zorgen dat u de effecten van de join op uw data op de juiste manier verwerkt.
Opmerking: Wanneer duplicatie of de filtereffecten van een join wenselijk zijn, kunt u joins gebruiken om tabellen samen te voegen in plaats van relaties. Dubbelklik op een logische tabel om de fysieke laag te openen en gekoppelde tabellen toe te voegen.
Een relatie beschrijft hoe twee onafhankelijke tabellen zich tot elkaar verhouden, maar voegt de tabellen niet samen. Hiermee voorkomt u problemen met het dupliceren en filteren van data die kunnen optreden bij een join. Bovendien kunt u hierdoor gemakkelijker met uw data werken.
relaties | joins |
---|---|
Gedefinieerd tussen logische tabellen in het canvas Relatie (logische laag) | Gedefinieerd tussen fysieke tabellen in het canvas Join/Vereniging (fysieke laag) |
U hoeft geen join-type te definiëren | Vereist join-planning en join-type |
Fungeren als containers voor tabellen die zijn samengevoegd of verenigd | Zijn samengevoegd in hun logische tabel |
Er worden alleen query's uitgevoerd op data die relevant zijn voor de visualisatie. Instellingen voor kardinaliteit en referentiële integriteit kunnen worden aangepast om query's te optimaliseren. | Uitvoeren als onderdeel van elke query |
Het detailniveau bevindt zich op de aggregatie voor de visualisatie | Het detailniveau bevindt zich op het rijniveau van de enkele tabel |
Join-typen worden automatisch door Tableau gevormd op basis van de context van de analyse. Tableau bepaalt de benodigde joins op basis van de meetwaarden en dimensies in de visualisatie. | Join-typen zijn statisch en vastgelegd in de databron, ongeacht de analytische context. Joins en verenigingen worden vóór de analyse vastgelegd en wijzigen niet. |
Rijen worden niet gedupliceerd | Samengevoegde tabeldata kunnen leiden tot duplicatie |
Niet-overeenkomende records worden opgenomen in aggregaties, tenzij expliciet uitgesloten | Niet-overeenkomende records worden uit de samengevoegde data weggelaten |
Maken onafhankelijke domeinen op meerdere detailniveaus | Ondersteunen scenario's waarvoor één datatabel nodig is, zoals extractfilters en aggregatie |
Relaties versus combinaties
Hoewel zowel relaties als combinaties analyses op verschillende detailniveaus ondersteunen, zijn er duidelijke verschillen. Eén reden waarom u combinaties in plaats van relaties zou kunnen gebruiken, is om gepubliceerde databronnen te combineren voor uw analyse.
relaties | combinaties |
---|---|
Gedefinieerd in de databron | Gedefinieerd in het werkblad tussen een primaire en een secundaire databron |
Kan gepubliceerd worden | Kan niet gepubliceerd worden |
Alle tabellen zijn semantisch gelijk | Hangt af van de selectie van primaire en secundaire databronnen en de manier waarop deze databronnen zijn gestructureerd. |
Ondersteunt volledig buitenste joins | Ondersteunt alleen linker joins |
Lokaal berekend | Berekend als onderdeel van de SQL-query |
Gerelateerde velden zijn vastgelegd | Gerelateerde velden variëren per blad (kunnen per blad worden aangepast) |
Kenmerken van verschillende opties voor het combineren van data: relaties, joins en combinaties
Er zijn veel manieren om datatabellen te combineren, elk met zijn eigen voorkeursscenario's en nuances.
Relateren | Gebruik deze optie wanneer u data van verschillende detailniveaus combineert.
|
Een join maken | Gebruik deze optie als u meer kolommen met data wilt toevoegen aan dezelfde rijstructuur.
|
Vereniging | Gebruik deze optie als u meer rijen met data met dezelfde kolomstructuur wilt toevoegen.
|
Combinatie | Gebruik deze optie wanneer u data van verschillende detailniveaus combineert.
|