Как сохранить панду DataFrame в Hive в рамках `forearchPartition` (PySpark) - PullRequest
0 голосов
/ 07 мая 2018

У меня есть PySpark DataFrame. Я хочу выполнить некоторую функцию forearchPartition и затем сохранить каждый результат в Hive. Результатом является кадр данных Pandas (внутри каждого раздела). Каков наилучший способ сделать это?

Я безуспешно пробовал следующее (выдает ошибку сериализации):

def processData(x):
    #do something
    spark_df = spark.createDataFrame(pandas_df)
    spark_df.write.mode("append").format("parquet").saveAsTable(db.table_name)

original_spark_df.rdd.forearchPartition(processData)

Полагаю, одним из решений было бы превратить панд в СДР и вернуть их (используя mapPartitions вместо forearchPartition), а затем использовать rdd.toDF() и saveAsTable().

Есть ли какое-нибудь решение спасти панд в Улей в forearchPartition?

...