Pyspark: применить функцию для сопоставления разделов нескольких фреймов данных - PullRequest
0 голосов
/ 04 июля 2019

У меня есть два Spark DataFrames с соответствующими парами разделов. Я хотел бы отправить каждую пару разделов другому исполнителю и выполнить на них функцию Python.

Если бы у меня был только один DataFrame, я мог бы использовать mapPartitions, но тогда я не смог бы получить доступ к другому. Я пытался транслировать второй, но он слишком большой, чтобы уместиться на моих исполнителях без разбиения.

Я думаю, что мне, вероятно, нужно использовать функцию из pyspark.rdd.RDD , но я не уверен, какая именно. Некоторые параметры, такие как groupByKey и cogroup, могут показаться актуальными, но я не понимаю, как их можно применить к объекту DataFrame.

Заранее спасибо за помощь!

Вот мои входные данные (каждый цвет является разделом):

input data

И вот что я хотел бы сделать:

mapping over matching pairs of partitions

...