Semi Join vs Bloom Join
Semi-anslutning och Bloom-anslutning är två sammanfogningsmetoder som används vid frågehantering för distribuerade databaser. När du bearbetar frågor i distribuerade databaser måste data överföras mellan databaser på olika webbplatser. Detta kan vara en dyr operation beroende på mängden data som behöver överföras. Därför är det viktigt att optimera frågorna när du bearbetar frågor i en distribuerad databasmiljö för att minimera mängden data som överförs mellan webbplatser. Semi-koppling och blomkoppling är två metoder som kan användas för att minska mängden dataöverföring och utföra effektiv frågebehandling.
Vad är Semi Join?
Semi-anslutning är en metod som används för effektiv frågebehandling i en distribuerad databasmiljö. Tänk på en situation där en anställdas databas (som innehåller information som anställdas namn, avdelningsnummer hon arbetar för osv.) Finns på plats 1 och en avdelningsdatabas (som innehåller information som avdelningsnummer, avdelningsnamn, plats osv.) På plats 2. Om vi till exempel vill få det anställdas namn och avdelningsnamn som hon arbetar för (endast avdelningar i “New York”), genom att utföra en fråga på en frågeprocessor på plats 3, finns det flera sätt att data kan överföras mellan de tre platserna för att uppnå denna uppgift. Men när du överför data är det viktigt att notera att det inte är nödvändigt att överföra hela databasen mellan webbplatserna. Endast några av attributen (eller tuplerna) som krävs för kopplingen behöver överföras mellan platserna för att utföra frågan effektivt. Semi-anslutning är en metod som kan användas för att minska mängden data som skickas mellan webbplatserna. I semi-koppling överförs endast kopplingskolumnen från en plats till den andra och sedan används den överförda kolumnen för att minska storleken på de levererade relationerna mellan de andra platserna. För exemplet ovan kan du bara överföra avdelningsnummer och avdelningsnamn på tuplar med plats =”New York” från plats 2 till plats 1 och utföra sammanfogningen på plats 1 och överföra den slutliga relationen tillbaka till plats 3.endast kopplingskolumnen överförs från en plats till den andra och sedan används den överförda kolumnen för att minska storleken på de levererade relationerna mellan de andra platserna. För ovanstående exempel kan du bara överföra avdelningsnummer och avdelningsnamn på tuplar med plats =”New York” från plats 2 till plats 1 och utföra sammanfogningen på plats 1 och överföra den slutliga relationen tillbaka till plats 3.endast kopplingskolumnen överförs från en plats till den andra och sedan används den överförda kolumnen för att minska storleken på de levererade relationerna mellan de andra platserna. För ovanstående exempel kan du bara överföra avdelningsnummer och avdelningsnamn på tuplar med plats =”New York” från plats 2 till plats 1 och utföra sammanfogningen på plats 1 och överföra den slutliga relationen tillbaka till plats 3.
Vad är Bloom Join?
Som tidigare nämnts är blomkoppling en annan metod som används för att undvika överföring av onödiga data mellan webbplatser vid körning av frågor i en distribuerad databasmiljö. I blomkoppling snarare än att överföra själva kopplingskolumnen överförs en kompakt representation av kopplingskolumnen mellan platserna. Bloom join använder ett blomfilter som använder lite vektor för att utföra medlemsfrågor. För det första byggs ett blomfilter med hjälp av kopplingskolumnen och det överförs mellan platserna och sedan utförs föreningsoperationerna.
Vad är skillnaden mellan Semi Join och Bloom Join?
Även om både semi-kopplings- och blomkopplingsmetoder används för att minimera mängden data som överförs mellan platserna vid körning av frågor i en distribuerad databasmiljö, minskar blomkoppling mängden data (antal tappar) som överförs jämfört med semi-koppling genom att använda begreppet blommefilter, som använder lite vektor för att bestämma antal medlemskap. Därför kommer det att bli effektivare att använda blomfog än att använda halvfog.