У меня есть RDD
из 50000 JSON-файлов, которые мне нужно записать в смонтированный каталог в Spark (Databricks). Подключенный путь выглядит примерно так: /mnt/myblob/mydata
(используется Azure). Я попробовал следующее, но оказалось, что я не могу использовать dbutils
внутри задания Spark.
def write_json(output_path, json_data):
dbutils.fs.put(output_path, json_data)
В настоящее время я должен доставить данные локально (в драйвер), а затем вызвать метод write_json
.
records = my_rdd.collect()
for r in records:
write_json(r['path'], r['json'])
Этот подход работает, но для его завершения требуется вечность. Есть ли более быстрый способ?