Semi Join против Bloom Join
Полусоединение и соединение Блума - это два метода соединения, используемые при обработке запросов для распределенных баз данных. При обработке запросов в распределенных базах данных необходимо передавать данные между базами данных, расположенными на разных сайтах. Это может быть дорогостоящей операцией в зависимости от объема данных, которые необходимо передать. Поэтому при обработке запросов в среде распределенной базы данных важно оптимизировать запросы, чтобы свести к минимуму объем данных, передаваемых между сайтами. Полусоединение и соединение Блума - это два метода, которые можно использовать для уменьшения объема передаваемых данных и выполнения эффективной обработки запросов.
Что такое Semi Join?
Полусоединение - это метод, используемый для эффективной обработки запросов в средах распределенных баз данных. Рассмотрим ситуацию, когда база данных сотрудников (содержащая такую информацию, как имя сотрудника, номер отдела, в котором она работает и т. д.) расположена на сайте 1, а база данных отдела (содержащая информацию, такую как номер отдела, название отдела, местоположение и т. д.), расположенная на сайте 2. Например, если мы хотим получить имя сотрудницы и название отдела, в котором она работает (только для отделов, расположенных в «Нью-Йорке»), выполнив запрос в обработчике запросов, расположенном на сайте 3, есть несколько способов, которыми это можно сделать. данные могут быть переданы между тремя сайтами для выполнения этой задачи. Но при переносе данных важно учитывать, что не обязательно переносить всю базу данных между площадками. Только некоторые атрибуты (или кортежи), необходимые для соединения, должны передаваться между сайтами для эффективного выполнения запроса. Полусоединение - это метод, который можно использовать для уменьшения объема данных, передаваемых между сайтами. При полусоединении с одного сайта на другой передается только столбец соединения, а затем этот переданный столбец используется для уменьшения размера отправленных отношений между другими сайтами. В приведенном выше примере вы можете просто перенести номер отдела и название отдела кортежей с location="New York" с сайта 2 на сайт 1, выполнить соединение на сайте 1 и передать окончательное отношение обратно на сайт 3.
Что такое Bloom Join?
Как упоминалось ранее, Bloom Join - это еще один метод, используемый для предотвращения передачи ненужных данных между сайтами при выполнении запросов в средах распределенных баз данных. При блум-соединении вместо передачи самого столбца соединения между сайтами передается компактное представление столбца соединения. Соединение Блума использует фильтр Блума, который использует битовый вектор для выполнения запросов на членство. Во-первых, фильтр Блума строится с использованием столбца соединения и передается между сайтами, а затем выполняются операции соединения.
В чем разница между Semi Join и Bloom Join?
Несмотря на то, что для минимизации объема данных, передаваемых между сайтами при выполнении запросов в среде распределенной базы данных, используются методы полусоединения и соединения цветения, соединение цветения уменьшает объем данных (количество кортежей), передаваемых по сравнению с полусоединение, используя концепцию фильтров Блума, которые используют битовый вектор для определения членства в наборе. Следовательно, использование цветного соединения будет более эффективным, чем полусоединение.