სხვაობა Semi Join-სა და Bloom Join-ს შორის

სხვაობა Semi Join-სა და Bloom Join-ს შორის
სხვაობა Semi Join-სა და Bloom Join-ს შორის

ვიდეო: სხვაობა Semi Join-სა და Bloom Join-ს შორის

ვიდეო: სხვაობა Semi Join-სა და Bloom Join-ს შორის
ვიდეო: ცხიმისმწველი სუპის დიეტა//მაიოს კლინიკის დიეტა//ერთკვირიანი დიეტა მინუს 4-7 კგ. 2024, ივლისი
Anonim

Semi Join vs Bloom Join

ნახევრად შეერთება და Bloom შეერთება არის ორი შეერთების მეთოდი, რომელიც გამოიყენება შეკითხვის დამუშავებისას განაწილებული მონაცემთა ბაზებისთვის. განაწილებულ მონაცემთა ბაზებში მოთხოვნების დამუშავებისას საჭიროა მონაცემთა გადაცემა სხვადასხვა საიტებზე მდებარე მონაცემთა ბაზებს შორის. ეს შეიძლება იყოს ძვირადღირებული ოპერაცია, რაც დამოკიდებულია მონაცემთა გადაცემის რაოდენობაზე. ამიტომ, მონაცემთა განაწილებულ გარემოში მოთხოვნების დამუშავებისას, მნიშვნელოვანია მოთხოვნების ოპტიმიზაცია, რათა მინიმუმამდე დაიყვანოთ საიტებს შორის გადაცემული მონაცემების რაოდენობა. ნახევრად შეერთება და აყვავებული შეერთება არის ორი მეთოდი, რომელიც შეიძლება გამოყენებულ იქნას მონაცემთა გადაცემის რაოდენობის შესამცირებლად და შეკითხვის ეფექტური დამუშავების შესასრულებლად.

რა არის Semi Join?

ნახევრად შეერთება არის მეთოდი, რომელიც გამოიყენება შეკითხვის ეფექტური დამუშავებისთვის განაწილებულ მონაცემთა ბაზაში. განვიხილოთ სიტუაცია, როდესაც თანამშრომლების მონაცემთა ბაზა (ინახავს ინფორმაციას, როგორიცაა თანამშრომლის სახელი, განყოფილების ნომერი, რომელშიც ის მუშაობს და ა.შ.) განთავსებულია საიტზე 1 და დეპარტამენტის მონაცემთა ბაზა (ინახავს ინფორმაციას, როგორიცაა დეპარტამენტის ნომერი, დეპარტამენტის სახელი, მდებარეობა და ა.შ.) განთავსებული საიტზე. 2. მაგალითად, თუ გვსურს მივიღოთ თანამშრომლის სახელი და განყოფილების სახელი, რომელზედაც ის მუშაობს (მხოლოდ "ნიუ-იორკში" მდებარე განყოფილებებში), შეკითხვის შესრულებით შეკითხვის პროცესორზე, რომელიც მდებარეობს საიტზე 3, არსებობს რამდენიმე გზა. ამ ამოცანის მისაღწევად მონაცემები შეიძლება გადაეცეს სამ საიტს შორის. მაგრამ მონაცემთა გადაცემისას მნიშვნელოვანია აღინიშნოს, რომ არ არის საჭირო მთელი მონაცემთა ბაზის გადატანა საიტებს შორის. მხოლოდ ზოგიერთი ატრიბუტი (ან ტოპები), რომლებიც საჭიროა შეერთებისთვის, უნდა გადავიდეს საიტებს შორის, რათა შესრულდეს მოთხოვნა ეფექტურად.ნახევრად შეერთება არის მეთოდი, რომელიც შეიძლება გამოყენებულ იქნას საიტებს შორის გაგზავნილი მონაცემების რაოდენობის შესამცირებლად. ნახევრად შეერთებისას, მხოლოდ შეერთების სვეტი გადადის ერთი საიტიდან მეორეზე და შემდეგ ეს გადაცემული სვეტი გამოიყენება სხვა საიტებს შორის გაგზავნილი ურთიერთობების ზომის შესამცირებლად. ზემოთ მოყვანილი მაგალითისთვის, თქვენ შეგიძლიათ უბრალოდ გადაიტანოთ განყოფილების ნომერი და განყოფილების დასახელება ტოპების მდებარეობით=”New York” საიტიდან 2-ში 1-ში და შეასრულოთ შეერთება საიტზე 1 და გადაიტანოთ საბოლოო კავშირი საიტზე 3.

რა არის Bloom Join?

როგორც უკვე აღვნიშნეთ, Bloom Join არის კიდევ ერთი მეთოდი, რომელიც გამოიყენება საიტებს შორის არასაჭირო მონაცემების გადაცემის თავიდან ასაცილებლად მონაცემთა განაწილებულ გარემოში მოთხოვნების შესრულებისას. Bloom Join-ში, ვიდრე თავად შეერთების სვეტის გადატანა, შეერთების სვეტის კომპაქტური წარმოდგენა გადადის საიტებს შორის. Bloom Join იყენებს ბლუმის ფილტრს, რომელიც იყენებს ბიტის ვექტორს წევრობის მოთხოვნების შესასრულებლად. პირველ რიგში, აყვავების ფილტრი შენდება შეერთების სვეტის გამოყენებით და ის გადადის უბნებს შორის და შემდეგ შეერთების ოპერაციები ხორციელდება.

რა განსხვავებაა Semi Join-სა და Bloom Join-ს შორის?

მიუხედავად იმისა, რომ ორივე ნახევრად შეერთების და აყვავებული შეერთების მეთოდები გამოიყენება საიტებს შორის გადაცემული მონაცემების მინიმიზაციისთვის, მოთხოვნების შესრულებისას მონაცემთა ბაზის განაწილებულ გარემოში, Bloom Join ამცირებს გადაცემულ მონაცემთა რაოდენობას (ტოპების რაოდენობა) ნახევრად შეერთება აყვავების ფილტრების კონცეფციის გამოყენებით, რომლებიც იყენებენ ბიტის ვექტორს ნაკრები წევრობების დასადგენად. ამიტომ ბლუმ შეერთების გამოყენება უფრო ეფექტური იქნება, ვიდრე ნახევრად შეერთების გამოყენება.

გირჩევთ: