У pandas нет единственного физического алгоритма для всех join. Реализация зависит от типов ключей, уникальности и сортировки; часто используются факторизация ключей и специализированные индексаторы.
А в pandas какой вид join используется на физическом уровне?
У pandas нет единственного физического алгоритма для всех join. Реализация зависит от типов ключей, уникальности и сортировки; часто используются факторизация ключей и специализированные индексаторы.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
У pandas нет единственного физического алгоритма для всех join. Реализация зависит от типов ключей, уникальности и сортировки; часто используются факторизация ключей и специализированные индексаторы.
Параметры inner/left/outer описывают результат, а не выбор hash join или merge join. В реализации merge есть разные пути, включая хеширование для подходящих ключей и работу с упорядоченными индексами. Поэтому ответ «pandas всегда использует hash join» слишком категоричен. Для конкретного случая смотрят версию, код merge и измеряют время и память на характерных данных.
Источник: github.com.