Forskjellen mellom Semi Join og Bloom Join

Forskjellen mellom Semi Join og Bloom Join
Forskjellen mellom Semi Join og Bloom Join

Video: Forskjellen mellom Semi Join og Bloom Join

Video: Forskjellen mellom Semi Join og Bloom Join
Video: Mario Kart 8 Deluxe [Switch] vs. Mario Kart 8 [Wii U] Graphics Comparison 2024, Juli
Anonim

Semi Join vs Bloom Join

Semi join og Bloom join er to sammenføyningsmetoder som brukes i spørringsbehandling for distribuerte databaser. Når du behandler spørringer i distribuerte databaser, må data overføres mellom databaser som ligger på forskjellige steder. Dette kan bli en kostbar operasjon avhengig av mengden data som må overføres. Derfor, når du behandler spørringer i et distribuert databasemiljø, er det viktig å optimalisere spørringene for å minimere mengden data som overføres mellom nettsteder. Semi join og bloom join er to metoder som kan brukes til å redusere mengden dataoverføring og utføre effektiv spørringsbehandling.

Hva er Semi Join?

Semi join er en metode som brukes for effektiv spørringsbehandling i distribuerte databasemiljøer. Tenk på en situasjon der en ansattdatabase (som inneholder informasjon som ansatts navn, avdelingsnummer hun jobber for osv.) som ligger på sted 1 og en avdelingsdatabase (inneholder informasjon som avdelingsnummer, avdelingsnavn, lokasjon osv.) på stedet 2. Hvis vi for eksempel ønsker å få ansattnavnet og avdelingsnavnet som hun jobber for (bare for avdelinger som ligger i "New York"), ved å utføre en spørring på en spørringsprosessor på sted 3, er det flere måter som data kan overføres mellom de tre nettstedene for å oppnå denne oppgaven. Men når du overfører data, er det viktig å merke seg at det ikke er nødvendig å overføre hele databasen mellom nettstedene. Bare noen av attributtene (eller tuplene) som kreves for sammenføyningen, må overføres mellom nettstedene for å utføre spørringen effektivt. Semi join er en metode som kan brukes til å redusere mengden data som sendes mellom nettstedene. I semi join overføres bare sammenføyningskolonnen fra det ene stedet til det andre, og deretter brukes den overførte kolonnen til å redusere størrelsen på de sendte relasjonene mellom de andre nettstedene. For eksempelet ovenfor kan du bare overføre avdelingsnummeret og avdelingsnavnet til tupler med location=”New York” fra sted 2 til sted 1 og utføre sammenføyningen på sted 1 og overføre den endelige relasjonen tilbake til sted 3.

Hva er Bloom Join?

Som nevnt tidligere, er bloom join en annen metode som brukes for å unngå overføring av unødvendige data mellom nettsteder når du utfører spørringer i et distribuert databasemiljø. I bloom join, i stedet for å overføre selve sammenføyningskolonnen, overføres en kompakt representasjon av sammenføyningskolonnen mellom stedene. Bloom join bruker et bloom-filter som bruker en bitvektor for å utføre medlemsforespørsler. Først bygges et blomstringsfilter ved hjelp av sammenføyningskolonnen og det overføres mellom stedene og deretter utføres sammenføyningsoperasjonene.

Hva er forskjellen mellom Semi Join og Bloom Join?

Selv om både semi join og bloom join-metoder brukes for å minimere mengden data som overføres mellom nettstedene ved utføring av spørringer i et distribuert databasemiljø, reduserer bloom join mengden data (antall tuples) som overføres sammenlignet med semi join ved å bruke konseptet med blomstringsfiltre, som bruker en bitvektor for å bestemme sett medlemskap. Derfor vil bruk av bloom join være mer effektivt enn å bruke semi join.

Anbefalt: