Uw data combineren
Datacombinatie is een methode voor het combineren van data uit verschillende bronnen. Met datacombinatie wordt aanvullende informatie uit een secundaire databron opgehaald en direct in de weergave weergegeven, samen met data uit de primaire databron.
Het combineren van data is vooral handig als de combinatierelatie (de koppelingsvelden) per blad moet variëren of wanneer gepubliceerde databronnen worden gecombineerd.
Opties voor het combineren van data
Er zijn verschillende manieren om data te combineren, en elke manier heeft zijn eigen sterke en zwakke punten.
Relaties zijn de standaardmethode en kunnen in de meeste gevallen worden gebruikt, ook in tabellen met verschillende detailniveaus. Relaties zijn flexibel en worden per blad aangepast aan de structuur van de analyse. Maar u kunt geen relaties tussen tabellen uit gepubliceerde databronnen maken.
Joins combineren tabellen door meer kolommen met data toe te voegen aan vergelijkbare rijstructuren. Dit kan leiden tot dataverlies of -duplicatie als tabellen verschillende detailniveaus hebben. Bovendien moeten er joins worden gemaakt voordat de analyse kan beginnen. U kunt geen gepubliceerde databron gebruiken in een join.
Combinaties combineren de data nooit rechtstreeks, dit in tegenstelling tot relaties of joins. In plaats daarvan worden bij combinaties afzonderlijke query's uitgevoerd op elke databron, worden de resultaten samengevoegd tot het juiste niveau en worden de resultaten vervolgens visueel weergegeven in de weergave. Daarom kunnen combinaties verschillende detailniveaus aan en ook werken met gepubliceerde databronnen. Combinaties creëren geen nieuwe, gemengde databron (en kunnen daarom niet worden gepubliceerd als 'gecombineerde databron'). Het zijn gewoon gecombineerde resultaten die per blad worden gevisualiseerd.
Stappen voor het combineren van data
Datacombinatie wordt per blad uitgevoerd en wordt tot stand gebracht wanneer een veld uit een tweede databron in de weergave wordt gebruikt.
U moet verbinding maken met minimaal twee databronnen om een combinatie in een werkmap te maken. Breng vervolgens een veld uit één databron naar het werkblad. Dit wordt dan de primaire databron. Schakel over naar de andere databron en gebruik een veld op hetzelfde werkblad. Dit wordt dan een secundaire databron. Er verschijnt een koppelingspictogram in het deelvenster Data om aan te geven welke velden worden gebruikt om de databronnen te combineren.
- Zorg dat de werkmap meerdere databronnen heeft. De tweede databron moet worden toegevoegd via Data > Nieuwe databron.
Tip: Voor het combineren zijn twee of meer afzonderlijke databronnen nodig, die onafhankelijk van elkaar in het deelvenster Data worden weergegeven. Door nog een verbinding toe te voegen aan de eerste databron worden relaties en joins ingeschakeld op de pagina Databron.
- Sleep een veld naar de weergave. Deze databron is de primaire databron.
- Schakel over naar een andere databron en controleer of er een combinatierelatie is met de primaire databron.
- Als u een pictogram voor veldkoppeling () ziet, worden de databronnen automatisch gekoppeld. Zolang er minimaal één actieve koppeling is, kunnen de data worden gecombineerd.
- Als u pictogrammen voor verbroken koppelingen () ziet, klikt u op het pictogram naast het veld dat de twee databronnen moet koppelen. De schuine streep verdwijnt, wat aangeeft dat de koppeling actief is.
- Zie Combinatierelaties voor combineren definiëren als er geen koppelingspictogram naast het gewenste veld verschijnt.
- Sleep een veld vanuit de secundaire databron naar de weergave.
Zodra deze tweede databron in dezelfde weergave wordt gebruikt, wordt er een combinatie tot stand gebracht. In het onderstaande voorbeeld is Movie Adaptations onze primaire databron en is Bookshop de secundaire databron.
- De primaire databron wordt aangegeven met een blauw vinkje. Velden uit de primaire databron die in de weergave worden gebruikt, hebben geen vinkje.
- De secundaire databron wordt aangegeven met een oranje vinkje bij de databron en een oranje balk aan de zijkant van het deelvenster Data. Velden uit de secundaire databron die in de weergave worden gebruikt, hebben een oranje vinkje.
Inzicht in primaire en secundaire databronnen
Voor het combineren van data zijn een primaire databron en ten minste één secundaire databron nodig. De eerste databron die in de weergave wordt gebruikt, wordt de primaire databron en definieert de weergave. Hiermee kunt u de waarden uit de secundaire databron beperken. Alleen waarden die overeenkomen met de primaire databron, worden in de weergave weergegeven. Dit is vergelijkbaar met een join links.
Als de primaire databron bijvoorbeeld een veld Maand bevat met alleen april, mei en juni, worden in elke weergave die is opgebouwd rond maanden alleen april, mei en juni weergegeven. Zelfs als de secundaire databron waarden voor twaalf maanden bevat. Als de gewenste analyse betrekking heeft op alle twaalf maanden, probeer de primaire databron dan te wijzigen door het werkblad opnieuw op te bouwen en eerst de andere databron te gebruiken.
In de onderstaande voorbeelden worden dezelfde databronnen gebruikt die aan hetzelfde veld zijn gekoppeld. De visualisatie is beide keren op dezelfde manier opgebouwd. Het verschil tussen de resultaten wordt veroorzaakt door welke databron als primair is aangemerkt.
- Hier wordt het veld Maand van de databron Rainfall als eerste overgebracht naar de weergave. Omdat Rainfall slechts drie maanden bevat, worden alleen de data van drie maanden in beeld gebracht wanneer de dataset Pollen als secundaire dataset wordt toegevoegd.
- Op een ander blad wordt het veld Maand van de dataset Pollen als eerste overgebracht naar de weergave. Alle twaalf maanden worden weergegeven. Wanneer de dataset Rainfall wordt toegevoegd als secundaire dataset, is Rainfall alleen beschikbaar voor de drie maanden in die dataset.
Werken met gecombineerde databronnen
Vanwege de aard van een datacombinatie zijn er een aantal zaken waarmee u rekening moet houden wanneer u met gecombineerde databronnen werkt.
Het uitvoeren van berekeningen met velden uit meerdere databronnen kan iets anders verlopen dan een gewone berekening. Een berekening moet in één databron worden gemaakt. Bovenaan de editor berekeningen wordt aangegeven in welke databron de berekening zich bevindt.
- Aggregatie. Velden die uit een andere databron worden gebruikt, worden met een aggregatie geleverd. Standaard is dit SUM, maar dit kan worden gewijzigd. Omdat berekeningen geen geaggregeerde en niet-geaggregeerde argumenten kunnen combineren, moeten velden uit de hostdatabron van de berekening ook worden geaggregeerd. (In de onderstaande afbeeldingen is de aggregatie SUM automatisch toegevoegd en is de aggregatie som handmatig toegevoegd.)
- Puntnotatie. Elk veld waarnaar in de berekening wordt verwezen dat tot een andere databron behoort, verwijst naar die databron met behulp van de puntnotatie. (In de onderstaande afbeeldingen voor de in Voorbeeld - Superstore opgestelde berekening wordt het veld Verkoopdoel [Verkoop.Doelen].[Verkoopdoel]. Wanneer de berekening is opgesteld in Verkoopdoelen, wordt het veld Verkoop [Voorbeeld - Superstore].[Verkoop].)
- Dit zijn equivalente versies van dezelfde berekening die in elke databron zijn ingebouwd. In beide gevallen betreft dit SUM(Verkoop) / SUM(Verkoopdoel).
Naast het feit dat berekeningen op een iets andere manier worden verwerkt, kennen secundaire databronnen ook enkele beperkingen. Het is mogelijk dat u niet kunt sorteren op een veld uit een secundaire databron en dat actiefilters niet naar verwachting werken bij gecombineerde data. Zie Andere problemen met het combineren van data voor meer informatie.
Combinatierelaties voor combineren definiëren
Er moeten een of meer gemeenschappelijke dimensies bestaan tussen de databronnen zodat Tableau weet hoe data uit meerdere bronnen moeten worden gecombineerd. Deze gemeenschappelijke dimensie wordt het koppelingsveld genoemd. Actieve koppelingsvelden worden in het deelvenster Data voor de secundaire databron aangegeven met een pictogram van een actieve koppeling () en potentiële koppelingsvelden worden aangegeven met een pictogram voor een verbroken koppeling (). Koppelingsvelden worden in de primaire databron niet aangegeven.
Bij een combinatie van transactie- en quotadata kan een geografisch veld bijvoorbeeld het gewenste koppelingsveld zijn, zodat u het quotum en de prestaties ten opzichte van dat quotum voor dezelfde regio kunt analyseren.
Opmerking: De koppelingsvelden moeten ook waarden of leden delen om de combinatie te laten functioneren. Tableau stelt de weergave van gecombineerde data samen op basis van de gedeelde waarden. Bijvoorbeeld: als Kleur het koppelingsveld in beide databronnen is, dan zal Tableau data voor 'Paars' van de primaire bron en 'Paars' van de secundaire bron afstemmen. Maar 'Lt.blauw' zal niet correct worden gekoppeld aan ’Lichtblauw', dus aan een van de twee zal een nieuwe alias moeten toegewezen. Net zoals u velden een andere naam kunt geven om Tableau te helpen bij het identificeren van koppelingsvelden, kunt u aliassen voor leden ook bewerken in die velden. Zie Aliassen maken om de naam van leden in de weergave aan te passen voor meer informatie.
Een koppeling instellen
Als het koppelingsveld in de primaire en secundaire databronnen dezelfde naam heeft, maakt Tableau de relatie automatisch. Wanneer een primaire databron is ingesteld (dat wil zeggen, een veld wordt in de weergave gebruikt) en de secundaire databron is geselecteerd in het deelvenster Data, wordt in alle velden met dezelfde naam in de twee databronnen een koppelingspictogram weergegeven ( of ) in de secundaire databron. Als het gerelateerde veld uit de primaire databron in de weergave wordt gebruikt, wordt de koppeling automatisch actief.
Als de secundaire databron geen koppelingspictogramen bevat, moet u Tableau mogelijk op een van de twee volgende manieren helpen de koppeling tot stand te brengen:
Als gemeenschappelijke dimensies niet dezelfde naam hebben (zoals 'Titel' en 'Boektitel'), kunt u de naam van één dimensie wijzigen. Zo kan Tableau ze als gemeenschappelijke dimensies identificeren en de koppeling tot stand brengen.
U kunt ook handmatig een relatie definiëren tussen de velden in de primaire en secundaire databron. Hieronder vindt u meer informatie over het handmatig maken van een koppelingsrelatie
Er kunnen zoveel actieve of potentiële koppelingsvelden zijn als nodig is. Klik op het pictogram voor de verbroken koppeling () in het deelvenster Data om de relatie actief te maken.
Als uw gemeenschappelijke dimensies niet dezelfde naam hebben, kunt u de relatie tussen de dimensies handmatig toewijzen.
Selecteer Data > Combinatierelaties bewerken....
Controleer in het dialoogvenster Combinatierelaties of de primaire databron is geselecteerd in de vervolgkeuzelijst Primaire databron.
Selecteer de secundaire databron in het deelvenster Secundaire databron. Bestaande, automatische combinatierelaties zijn zichtbaar (en kunnen worden verwijderd door de cursor op de rij te plaatsen en op de x te klikken). Selecteer Aangepast in de lijst Relaties en klik vervolgens op Toevoegen.
Ga als volgt te werk in het dialoogvenster Veldtoewijzing toevoegen/bewerken:
Selecteer een veld uit de primaire databron.
Selecteer het vergelijkbare veld uit de secundaire databron.
Klik op OK.
In dit voorbeeld is Segment toegewezen aan Klantensegment.
Tip: Voor datums kan de relatie nauwkeurig worden opgegeven. Vouw het datumveld uit en selecteer het gewenste aspect van de datum, zoals de exacte datum, maand, jaar, enz.
Maak zoveel veldtoewijzingen als u wilt en klik op OK.
Meerdere koppelingen
Net als bij relaties of joins zijn er gevallen waarin de koppelingen tussen de databronnen door meerdere velden worden gedefinieerd. Als regionale verkoopquota bijvoorbeeld maandelijks worden bekeken, moet er een combinatie worden gemaakt van verkoopdata en quotadata voor zowel de regio als de maand, zodat de juiste data in de weergave worden gecombineerd. Er kunnen meerdere koppelingen tegelijkertijd actief zijn.
Wanneer data worden gecombineerd op basis van meerdere velden, worden waarden alleen in de weergave opgenomen als de combinatie van data uit die velden overeenkomt met beide datasets. Laten we eens naar een voorbeeld kijken om dit te verduidelijken.
We hebben twee tabellen, één voor vogels die daadwerkelijk door vogelaars zijn gezien en één voor vogels die als gezien zijn gemeld.
en
Als we een gecombineerde weergave instellen met de velden Vogelaars en Aantal vogels van de primaire databron (Vogels gezien) en het veld Aantal rapporten toevoegen uit de secundaire databron (Vogels gemeld), combineert Tableau automatisch op Vogelaar.
We zien dat vogelaar A drie vogels heeft gezien en twee meldingen heeft gedaan, B zag vier vogels en deed één melding, en C zag 8 vogels en deed twee meldingen.
Maar er is nog een ander mogelijk koppelingsveld: Soorten gezien. Waarom nemen we dat ook niet op in de combinatie? Zal het verschil maken?
Het maakt een behoorlijk groot verschil. Nu zien we dat er maar één melding is voor vogelaars A en C, en dat B een nul heeft. Wat gebeurt hier?
Het blijkt dat deze vogelaars niet erg eerlijk zijn. Toen ze hun waarnemingen alleen melden op basis van een dagboeknotitie (blauwe balken in de afbeelding hierboven), kwamen de soorten die ze meldden niet overeen met wat ze daadwerkelijk zagen (let op de null-waarden in de tweede kolom, van de secundaire databron Vogels gezien). Toen ze de melding ondersteunden met een foto (oranje balken), waren ze eerlijk (beide kolommen van Soorten gezien komen overeen).
Omdat drie meldingen niet overeenkwamen qua soort, werden die rijen met data verwijderd toen Soorten gezien werd gebruikt als koppelingsveld. De weergave toont alleen data waarvan de waarden voor beide koppelingsvelden overeenkomen.
Leerpunten
Wees voorzichtig bij het koppelen van meerdere velden. Hoewel het heel eenvoudig kan zijn om op het pictogram te klikken en een actieve koppeling tot stand te brengen, kan het maken van te veel koppelingen of een koppeling naar ongewenste velden ernstige gevolgen hebben voor de analyse.
Verschillen tussen joins en datacombinatie
Datacombinatie simuleert een traditionele join links. Het belangrijkste verschil tussen de twee is het moment waarop de aggregatie wordt uitgevoerd. Bij een join worden de data gecombineerd en vervolgens geaggregeerd. Bij een combinatie worden de data geaggregeerd en vervolgens gecombineerd.
Join links
Wanneer u een join links gebruikt om data te combineren, wordt er een query verzonden naar de database waarin de join wordt uitgevoerd. Met een join links worden alle rijen uit de linkertabel en alle overeenkomende rijen uit de rechtertabel geretourneerd. De resultaten van de join worden vervolgens teruggestuurd naar Tableau en geaggregeerd voor weergave in de visualisatie.
Bij een join links worden alle rijen uit de linkertabel gebruikt. De gemeenschappelijke kolommen zijn Gebruikers-ID en Klant-ID. Indien de rechtertabel overeenkomstige data bevat, worden die data geretourneerd. Anders wordt een null-waarde geretourneerd.
Stel dat u dezelfde tabellen hebt, maar de volgorde omdraait. Deze nieuwe join links levert andere resultaten op. Ook hier geldt dat bij een join links alle data uit de nieuwe linkertabel worden overgenomen, maar dat in feite een rij uit de rechtertabel wordt genegeerd. De rij met data voor Gebruikers-ID = 4 is niet opgenomen omdat er in de linkertabel geen rij voor Gebruikers-ID = 4 is.
Datacombinatie
Wanneer u datacombinaties gebruikt om data te combineren, wordt er een query naar de database verzonden voor elke databron die in het werkblad wordt gebruikt. De resultaten van de query's worden als geaggregeerde data teruggestuurd naar Tableau en samen in de visualisatie gepresenteerd.
Opmerking: Het aggregeren van meetwaarden is eenvoudig. We kunnen gemakkelijk de som, het gemiddelde, het maximum of een andere aggregatie van een getal nemen. Meetwaarden worden samengevoegd op basis van de manier waarop het veld in de weergave is geaggregeerd. Alle velden uit een secundaire databron moeten echter worden geaggregeerd. Hoe werkt dat voor dimensies? Dimensiewaarden worden geaggregeerd met de aggregatiefunctie ATTR. Deze retourneert één waarde voor alle rijen in de secundaire databron. Als er meerdere waarden in die rijen staan, wordt er een sterretje (*) weergegeven. Dit kan worden geïnterpreteerd als 'er zijn meerdere waarden in de secundaire databron voor deze markering in de weergave'.
De weergave gebruikt alle waarden uit de primaire databron (die fungeert als de linkertabel) en de overeenkomstige rijen uit de secundaire databron (de rechtertabel) op basis van de koppelingsveld(en).
Stel dat u de volgende tabellen hebt. Als de koppelingsvelden Gebruikers-ID en Klant-ID zijn, kunnen niet alle waarden deel uitmaken van de resulterende tabel vanwege het volgende:
Een rij in de linkertabel heeft geen overeenkomende rij in de rechtertabel, zoals aangegeven door de null-waarde in de resultaten.
De rijen in de rechtertabel bevatten meerdere overeenkomstige waarden, zoals aangegeven door het sterretje (*) in de resultaten.
Wanneer het om meetwaarden gaat, worden deze ook geaggregeerd, zoals u hieronder ziet:
Belangrijk: Een sterretje (*) in een weergave met gecombineerde data geeft aan dat er meerdere waarden zijn. U kunt dit oplossen door te zorgen dat er voor elke markering in de primaire databron slechts één overeenkomende waarde in de secundaire databron staat. U kunt dit eventueel doen door de primaire en secundaire databron om te wisselen. Zie Problemen met Datacombinatie oplossen voor meer informatie.
Datacombinatie in één oogopslag
- Data worden per blad gecombineerd.
- De volgorde waarin velden worden gebruikt, bepaalt welke databron de primaire en welke de secundaire databron is.
- De primaire databron wordt aangegeven met een blauw vinkje. Eventuele secundaire databronnen en velden uit secundaire databronnen hebben een oranje vinkje.
- Koppelingsveld(en) kunnen automatisch worden bepaald op basis van gedeelde veldnamen, maar de combinatierelatie kan ook handmatig worden gemaakt.
- Het combineren van data verloopt op een vergelijkbare manier als een join links. Dit kan ertoe leiden dat er data uit de secundaire databron ontbreken.
- Er kunnen sterretjes (*) worden getoond. Hiermee worden meerdere dimensiewaarden in één markering aangegeven, omdat datacombinaties uitgaan van de geaggregeerde resultaten en deze combineren in de weergave.
- Er kan een secundaire databron worden gebruikt om nieuwe aliassen toe te wijzen aan de veldwaarden in een primaire databron. Zie Aliassen uitvoeren voor veldwaarden met behulp van datacombinatie voor meer informatie.
Beperkingen voor datacombinatie
- Het combineren van data kent enkele beperkingen voor niet-additieve aggregaten, zoals COUNTD, MEDIAN en RAWSQLAGG. Zie Problemen met Datacombinatie oplossen voor meer informatie
- Gecombineerde databronnen kunnen niet als een eenheid worden gepubliceerd. Publiceer in plaats daarvan elke databron afzonderlijk (op dezelfde server) en combineer de gepubliceerde databronnen vervolgens.
- Data uit secundaire databronnen moeten altijd worden geaggregeerd in berekeningen.
- Als u een kubusdatabron combineert, moet dit de primaire databron zijn.