Как запустить независимые преобразования параллельно с помощью PySpark?

Я пытаюсь запустить 2 функции, делая полностью независимые преобразования на одном RDD параллельно, используя PySpark. Какими методами можно сделать то же самое?

def doXTransforms(sampleRDD):
    (X transforms)

def doYTransforms(sampleRDD):
    (Y Transforms)

if __name__ == "__main__":
    sc = SparkContext(appName="parallelTransforms")
    sqlContext = SQLContext(sc)
    hive_context = HiveContext(sc)

    rows_rdd = hive_context.sql("select * from tables.X_table")

    p1 = Process(target=doXTransforms , args=(rows_rdd,))
    p1.start()
    p2 = Process(target=doYTransforms, args=(rows_rdd,))  
    p2.start()
    p1.join()
    p2.join()
    sc.stop()

Это не работает, и теперь я понимаю, что это не будет работать. Но есть ли альтернативный способ сделать эту работу? В частности, есть ли какие-либо конкретные решения для Python-Spark?

Ответы на вопрос(1)

Ваш ответ на вопрос