Я пытаюсь загрузить большие data.table
в Spark, используя sparklyr следующим образом:
copy_to(sc, obj, "name_of_object")
, где sc
- это соединение Spark, а obj
- мой объект. После некоторых копаний я обнаружил, что запись таблиц в Spark выполняется следующим образом (в spark_data_copy()
): файл csv создается на диске с использованием сериализатора spark_serialize_csv_scala
, который использует базу R write.table()
. После записи файла R инструктирует Spark прочитать csv.
Я обнаружил, что это не очень эффективно для моего использования. Кажется, что R зависает, и есть только столько настроек, которые можно выполнить для части csv, написавшей задачу. Существует ли эффективный способ поместить данные, уже находящиеся в памяти R, в Spark?