У меня есть два Spark DataFrames с соответствующими парами разделов. Я хотел бы отправить каждую пару разделов другому исполнителю и выполнить на них функцию Python.
Если бы у меня был только один DataFrame, я мог бы использовать mapPartitions
, но тогда я не смог бы получить доступ к другому. Я пытался транслировать второй, но он слишком большой, чтобы уместиться на моих исполнителях без разбиения.
Я думаю, что мне, вероятно, нужно использовать функцию из pyspark.rdd.RDD , но я не уверен, какая именно. Некоторые параметры, такие как groupByKey
и cogroup
, могут показаться актуальными, но я не понимаю, как их можно применить к объекту DataFrame.
Заранее спасибо за помощь!
Вот мои входные данные (каждый цвет является разделом):
![input data](https://i.stack.imgur.com/yOJ03.png)
И вот что я хотел бы сделать:
![mapping over matching pairs of partitions](https://i.stack.imgur.com/IHMKk.png)