Semi Join vs Bloom Rewing
Semi Join et Bloom joint sont deux méthodes de jointure utilisées dans le traitement des requêtes pour les bases de données distribuées. Lors du traitement des requêtes dans des bases de données distribuées, les données doivent être transférées entre des bases de données situées dans différents sites. Cela pourrait être une opération coûteuse en fonction de la quantité de données qui doivent être transférées. Par conséquent, lors du traitement des requêtes dans un environnement de base de données distribué, il est important d'optimiser les requêtes pour minimiser la quantité de données transférées entre les sites. Semi Join et Bloom Join sont deux méthodes qui peuvent être utilisées pour réduire la quantité de transfert de données et effectuer un traitement de requête efficace.
Qu'est-ce que semi-rejoindre?
Semi Join est une méthode utilisée pour un traitement efficace des requêtes dans les environnements de base de données distribués. Envisagez une situation dans laquelle une base de données des employés (contenant des informations telles que le nom de l'employé, le numéro de département pour lequel elle travaille, etc.) situé sur le site 1 et une base de données du département (contenant des informations telles que le numéro de département, le nom du département, l'emplacement, etc.) situé sur le site 2. Par exemple, si nous voulons obtenir le nom et le nom du département de l'employé pour lesquels elle travaille (uniquement des départements situés dans «New York»), en exécutant une requête dans un processeur de requête situé sur le site 3, il existe plusieurs façons dont les données pourraient être transféré entre les trois sites pour atteindre cette tâche. Mais lors du transfert de données, il est important de noter qu'il n'est pas nécessaire de transférer toute la base de données entre les sites. Seuls certains des attributs (ou tuples) requis pour le jointure doivent être transférés entre les sites pour exécuter la requête efficacement. Semi Join est une méthode qui peut être utilisée pour réduire la quantité de données expédiées entre les sites. En semi-jointure, seule la colonne de jointure est transférée d'un site à l'autre, puis cette colonne transférée est utilisée pour réduire la taille des relations expédiées entre les autres sites. Pour l'exemple ci-dessus, vous pouvez simplement transférer le numéro de département et le nom du département des tuples avec emplacement = "New York" du site 2 au site 1 et effectuer la jonction sur le site 1 et transférer la relation finale au site 3.
Qu'est-ce que Bloom rejoigne?
Comme mentionné précédemment, Bloom Join est une autre méthode utilisée pour éviter de transférer des données inutiles entre les sites lors de l'exécution de requêtes dans un environnement de base de données distribué. Dans Bloom Join, plutôt que de transférer la colonne de jointure elle-même, une représentation compacte de la colonne de jointure est transférée entre les sites. Bloom Join utilise un filtre Bloom qui utilise un peu de vecteur pour exécuter les requêtes d'adhésion. Tout d'abord, un filtre Bloom est construit à l'aide de la colonne de jointure et il est transféré entre les sites, puis les opérations de jointure sont effectuées.
Quelle est la différence entre semi-jointure et join?
Même si les méthodes de jointure semi-jointure et de floraison sont utilisées pour minimiser la quantité de données transférées entre les sites lors de l'exécution de requêtes dans un environnement de base de données distribué, la jonction de Bloom réduit la quantité de données (nombre de tuples) transférées par rapport à semi-jointure en utilisant le Concept de filtres Bloom, qui utilisent un peu de vecteur pour déterminer les abonnements définis. Par conséquent, l'utilisation de Bloom Join sera plus efficace que l'utilisation de semi-jointure.