Я пытаюсь сделать некоторые соединения, группировки... более эффективными с помощью pyspark, пытаясь избежать ненужных обменов. У меня есть ситуация, когда сначала мне нужно объединить фрейм данных по столбцам (a, b, c), а затем еще раз объединить по столбцам (a, b, d).
Я хочу сегмент по кадру данных по первым двум столбцам, так что обмен не требуется, но искра всегда принудительно выполняет обмен по трем столбцам перед каждым соединением. Как мне избежать этого дополнительного обмена?
Кажется, что за эту функцию велся пиар, но они не были объединены:
https:/ /issues.apache.org/jira/browse/SPARK-18067
https://github.com/apache/spark/pull/29655
Вопрос по теме: Как я могу убедить искру не совершать обмен, если ключ соединения является супернабором ключа BucketBy?
На данный момент единственный обходной путь, который я видел, что более или менее работает, так это выполнить соединение с помощью хака >= и
Подробнее здесь: https://stackoverflow.com/questions/790 ... en-joining