Всем привет! Появилась задача посчитать длину минимального маршрута по графу, для этого использовал библиотеку networkx(dijkstra_path_length) + подружил это все со спарком (результат нужно получить в отдельном поле в таблице). Я попробовал сделать все через udf и у меня валится с ошибкой недостатка памяти на исполнителе. Исходные данные составляют 30к строк, сам граф 600к строк(успешно работало, когда граф был около 100к строк) , но для такого недостаточно 32ГБ на исполнителях(использовал 10 инстансов, по 6 ядер и 32 ГБ памяти). Я посмотрел так же другие функция работы с графом, которые дружат с pyspark, но они не дают должно результата.
Есть ли у кого то опыт работы с графом и pyspark? Или может можно другими инструментами лучше это реализовать?