Atšķirība Starp Semi Join Un Bloom Join

Atšķirība Starp Semi Join Un Bloom Join
Atšķirība Starp Semi Join Un Bloom Join

Video: Atšķirība Starp Semi Join Un Bloom Join

Video: Atšķirība Starp Semi Join Un Bloom Join
Video: 1 Relational Algebra Semijoin 2024, Maijs
Anonim

Semi Join vs Bloom Join

Semi join un Bloom join ir divas apvienošanas metodes, kas tiek izmantotas vaicājumu apstrādē izplatītām datu bāzēm. Apstrādājot vaicājumus sadalītās datu bāzēs, dati ir jāpārsūta starp datu bāzēm, kas atrodas dažādās vietnēs. Tā var būt dārga darbība atkarībā no datu apjoma, kas jāpārsūta. Tādēļ, apstrādājot vaicājumus izplatītās datu bāzes vidē, ir svarīgi optimizēt vaicājumus, lai samazinātu datu daudzumu, kas tiek pārsūtīts starp vietnēm. Semi join un bloom join ir divas metodes, kuras var izmantot, lai samazinātu datu pārsūtīšanas apjomu un veiktu efektīvu vaicājumu apstrādi.

Kas ir Semi Join?

Semi join ir metode, ko izmanto efektīvai vaicājumu apstrādei izplatītās datu bāzes vidēs. Apsveriet situāciju, kad 1. vietā atrodas darbinieku datu bāze (kurā glabājas tāda informācija kā darbinieka vārds, nodaļas numurs, pie kuras viņa strādā, utt.) Un nodaļas datu bāze (kurā ir informācija, piemēram, nodaļas numurs, nodaļas nosaukums, atrašanās vieta utt.) 2. Piemēram, ja mēs vēlamies iegūt darbinieka vārdu un nodaļas nosaukumu, kurā viņa strādā (tikai departamentiem, kas atrodas “Ņujorkā”), izpildot vaicājumu vaicājumu procesorā, kas atrodas 3. vietā, ir vairāki veidi, kā datus varētu pārsūtīt starp trim vietām, lai sasniegtu šo uzdevumu. Bet, pārsūtot datus, ir svarīgi atzīmēt, ka nav nepieciešams visu datu bāzi pārsūtīt starp vietnēm. Tikai daži no atribūtiem (vai kopām), kas nepieciešami savienošanai, jāpārvieto starp vietnēm, lai efektīvi izpildītu vaicājumu. Daļēja pievienošanās ir metode, kuru var izmantot, lai samazinātu starp vietnēm nosūtīto datu apjomu. Daļēji savienojot, tikai savienošanas kolonna tiek pārvietota no vienas vietnes uz otru, un pēc tam šī pārsūtītā kolonna tiek izmantota, lai samazinātu nosūtīto attiecību lielumu starp citām vietnēm. Iepriekš minētajā piemērā varat vienkārši pārsūtīt nodaļas numuru un nodaļas nosaukumu ar atrašanās vietu = “Ņujorka” no 2. vietnes uz 1. vietni un veikt savienošanu 1. vietā un pārsūtīt galīgo saistību atpakaļ uz 3. vietni.tikai pievienošanas kolonna tiek pārsūtīta no vienas vietnes uz otru, un pēc tam šī pārsūtītā kolonna tiek izmantota, lai samazinātu nosūtīto attiecību lielumu starp citām vietnēm. Iepriekš minētajā piemērā varat vienkārši pārsūtīt nodaļas numuru un nodaļas nosaukumu ar atrašanās vietu = “Ņujorka” no 2. vietnes uz 1. vietni un veikt savienošanu 1. vietā un pārsūtīt galīgo saistību atpakaļ uz 3. vietni.tikai pievienošanas kolonna tiek pārsūtīta no vienas vietnes uz otru, un pēc tam šī pārsūtītā kolonna tiek izmantota, lai samazinātu nosūtīto attiecību lielumu starp citām vietnēm. Iepriekš minētajā piemērā varat vienkārši pārsūtīt nodaļas numuru un nodaļas nosaukumu ar atrašanās vietu = “Ņujorka” no 2. vietnes uz 1. vietni un veikt savienošanu 1. vietā un pārsūtīt galīgo saistību atpakaļ uz 3. vietni.

Kas ir Bloom Join?

Kā minēts iepriekš, ziedu savienošana ir vēl viena metode, ko izmanto, lai izvairītos no nevajadzīgu datu pārsūtīšanas starp vietnēm, izpildot vaicājumus izplatītās datu bāzes vidēs. Ziedēšanas savienojums, nevis pašas savienojuma kolonnas pārvietošana, starp vietām tiek pārsūtīts kompakts savienojuma kolonnas attēlojums. Bloom join izmanto ziedēšanas filtru, kas izmanto mazliet vektoru, lai izpildītu dalības vaicājumus. Pirmkārt, izmantojot savienojuma kolonnu, tiek izveidots ziedēšanas filtrs, un tas tiek pārvietots starp vietām un pēc tam tiek veiktas savienošanas darbības.

Kāda ir atšķirība starp Semi Join un Bloom Join?

Lai gan, veicot vaicājumus izplatītās datu bāzes vidē, tiek izmantotas gan daļēji savienošanas, gan apvienošanās metodes, lai samazinātu datu daudzumu, kas tiek pārsūtīts starp vietnēm, apvienošana apvienojumā samazina pārsūtīto datu daudzumu (kopu skaitu), salīdzinot ar daļēju savienojumu, izmantojot ziedēšanas filtru koncepcija, kas izmanto bitu vektoru, lai noteiktu kopīgo dalību. Tāpēc ziedēšanas savienojuma izmantošana būs efektīvāka nekā daļēja savienojuma izmantošana.

Ieteicams: