JoinAlgorithm.Type
Определение
Указывает алгоритм соединения, используемый в операции соединения.
Допустимые значения
Имя | Ценность | Описание |
---|---|---|
JoinAlgorithm.Dynamic | 0 | Автоматически выбирает алгоритм соединения на основе проверки начальных строк и метаданных обеих таблиц. |
JoinAlgorithm.PairwiseHash | 1 | Буферизирует строки левой и правой таблиц, пока одна из таблиц не буферизуется полностью, а затем выполняет LeftHash или RightHash в зависимости от того, какая таблица была полностью буферизована. Этот алгоритм рекомендуется использовать только для небольших таблиц. |
JoinAlgorithm.SortMerge | 2 | Выполняет потоковое объединение, исходя из предположения, что обе таблицы отсортированы по ключам соединения. Хотя и эффективно, он вернет неверные результаты, если таблицы не отсортированы должным образом. |
JoinAlgorithm.LeftHash | 3 | Буферизует левые строки в таблице подстановки и передает правые строки. Для каждой строки справа соответствующие строки слева находятся с помощью буферной таблицы поиска. Этот алгоритм рекомендуется, если левая таблица невелика, и большинство строк из правой таблицы должны соответствовать левой строке. |
JoinAlgorithm.RightHash | 4 | Буферизирует правые строки в таблицу подстановки и выполняет потоковую передачу левых строк. Для каждой левой строки соответствующие правые строки находятся с помощью буферной таблицы поиска. Этот алгоритм рекомендуется, если справа таблица небольшая, и большинство строк из левой таблицы, как ожидается, совпадают с правой строкой. |
JoinAlgorithm.LeftIndex | 5 | В пакетах использует ключи из левой таблицы для выполнения запросов на основе предиката в правой таблице. Этот алгоритм рекомендуется использовать, когда правая таблица велика, поддерживает свертывание Table.SelectRowsи содержит несколько строк, которые, предположительно, совпадут с левой строкой. |
JoinAlgorithm.RightIndex | 6 | В пакетах ключи из правой таблицы используются для выполнения запросов на основе предиката в левой таблице. Этот алгоритм рекомендуется, если левая таблица велика, поддерживает свертывание Table.SelectRowsи содержит несколько строк, которые, как ожидается, соответствуют правой строке. |