Semi Join vs Bloom Join
Semi join a Bloom join jsou dvě metody spojení používané při zpracování dotazů pro distribuované databáze. Při zpracování dotazů v distribuovaných databázích je třeba přenášet data mezi databázemi umístěnými na různých místech. To může být nákladná operace v závislosti na množství dat, které je třeba přenést. Při zpracování dotazů v prostředí distribuované databáze je proto důležité optimalizovat dotazy, aby se minimalizovalo množství dat přenášených mezi lokalitami. Semi join a Bloom join jsou dvě metody, které lze použít ke snížení objemu přenosu dat a provádění efektivního zpracování dotazů.
Co je Semi Join?
Semi join je metoda používaná pro efektivní zpracování dotazů v prostředí distribuované databáze. Zvažte situaci, kdy databáze zaměstnanců (obsahující informace, jako je jméno zaměstnance, číslo oddělení, pro které pracuje, atd.) umístěná na pracovišti 1, a databáze oddělení (obsahující informace, jako je číslo oddělení, název oddělení, umístění atd.) umístěná na pracovišti. 2. Chceme-li například získat jméno zaměstnance a název oddělení, pro které pracuje (pouze z oddělení umístěných v „New Yorku“), provedením dotazu v procesoru dotazů umístěného na webu 3, existuje několik způsobů, jak data by mohla být přenášena mezi třemi místy k dosažení tohoto úkolu. Ale při přenosu dat je důležité si uvědomit, že není nutné přenášet celou databázi mezi weby. Pouze některé atributy (nebo n-tice), které jsou vyžadovány pro spojení, je třeba přenést mezi weby, aby byl dotaz efektivně proveden. Semi join je metoda, kterou lze použít ke snížení množství dat přenášených mezi weby. Při semi spojení se z jednoho webu na druhý přenese pouze sloupec spojení a poté se tento přenesený sloupec použije ke zmenšení velikosti dodaných vztahů mezi ostatními weby. Ve výše uvedeném příkladu stačí přenést číslo oddělení a název oddělení n-tic s umístěním=”New York” z místa 2 na místo 1 a provést spojení na místě 1 a přenést konečný vztah zpět na místo 3.
Co je Bloom Join?
Jak již bylo zmíněno, Bloom join je další metodou používanou k zamezení přenosu zbytečných dat mezi lokalitami při provádění dotazů v prostředí distribuované databáze. V režimu Bloom join se místo přenosu samotného sloupce spojení přenáší kompaktní reprezentace sloupce spojení mezi lokalitami. Bloom join používá Bloomův filtr, který využívá bitový vektor k provádění dotazů na členství. Nejprve se pomocí spojovacího sloupce sestaví Bloomův filtr a ten se přenese mezi místy a poté se provedou spojovací operace.
Jaký je rozdíl mezi Semi Join a Bloom Join?
I když se metody semi join i bloom join používají k minimalizaci množství dat přenášených mezi lokalitami při provádění dotazů v prostředí distribuované databáze, Bloom join snižuje množství dat (počet n-tic) přenesených ve srovnání s semi join využitím konceptu Bloomových filtrů, které používají bitový vektor k určení členství v sadě. Proto použití Bloom join bude efektivnější než použití semi join.