Du er her:
Optimalisere dataoperasjoner med semi- og anti-koblinger
Semi- og anti-koblinger er en enkel måte å sammenligne datasett på i en linse. De er spesielt nyttige for å identifisere tilstedeværelse eller fravær av relaterte rader uten å kreve komplekse spørringer. Du kan for eksempel enkelt finne kontoer som har minst én salgsmulighet, eller de som ikke har noen salgsmuligheter.
- Åpne en linse for det primære datasettet.
-
Klikk på Koble til datakilde.

- Velg et sekundært datasett på neste skjermbilde.
-
Velg en koblingstype:
Linsen bruker som standard en semikobling.
- Semi-kobling returnerer radene fra det primære datasettet som har et samsvar i det andre datasettet, uten å returnere noen kolonner fra det andre datasettet. Dette er nyttig for filtrering av data basert på eksistensen av relaterte poster.
- Anti-join returnerer bare radene fra det primære datasettet som ikke har et samsvar i det andre datasettet. Det er nyttig for å finne poster som ikke har noen relaterte oppføringer.
- Velg felt som skal samsvare mellom datasettene. Klikk på Legg til felt for å legge til flere felt.
- Klikk på Utført.

-
For å endre koblingstypen:
- Klikk på Rediger i Datasett-området.
- Velg den ønskede koblingstypen og feltene.
- Klikk på Utført.

-
For å fjerne et sekundært datasett:
- Klikk på nedpilen overfor datasettet, og velg Fjern datasett.
- Hvis du vil koble til et annet datasett, gjentar du trinn 2–4 .

-
For å opprette en meningsfylt analyse velger du målinger og felt som skal grupperes etter, i datasettresultatet.
Når du definerer grupper og målinger, velges felt fra det primære datasettet.

Operasjoner som ikke støttes:
- cogroup og koblinger kan ikke brukes i samme spørring.
- Totaler og deltotaler støttes.
- Boolsk filterlogikk støttes ikke.
- Blandinger og koblinger kan ikke kombineres i samme spørring.
Optimalisere ytelse:
- Filtrer det andre datasettet før du kjører en kobling. Samleytelse er direkte proporsjonal med mengden data som returneres av det andre datasettet.
- Utfør koblingssetninger før eventuelle projeksjoner i spørringsresultatene. Hvis for eksempel spørringen inneholder en
foreach-setning somq = foreach q generate count(q1) as 'A';, kjører du den etter koblingen.
Filtre som støttes
Filtre kan brukes på både primære og sekundære datasett.
Koblingsbegrensninger
| Begrensning | Detaljer |
|---|---|
| Datasettgrense | Du kan delta maksimalt to datasett. Vurder å bruke en blanding for å kombinere flere datasett (i opptil seks). |
| Felttparinger | Opptil fem feltparinger er tillatt mellom datasett. |
| Rekkefølge av operasjoner | Datasett må slå sammen før utforsking. Samle datakilde blir utilgjengelig hvis grupperinger, målinger eller filtre legges til først. |
| Egenkoblinger | Kombinasjon av rader i det samme datasettet støttes. Når et filter brukes i en selvkobling, er bare ett datasett synlig. Globale filtre brukes på det primære datasettet i koblingen. |
| Primært datasettfokus | Fasettering og handlinger på postnivå brukes eksklusivt på det primære datasettet. |
- Begrensninger og vurderinger for semi- og anti-koblinger
Semi- og anti-koblinger er kraftige verktøy for filtrering av data basert på eksistensen av relaterte poster. Vurder disse spesifikke virkemåtene når du går i gang for å sikre nøyaktige resultater og optimal ytelse.

