Sparklyr, spark_read_csv, нам нужно каждый раз повторно импортировать данные?

я использую sparklyr для чтения данных на моей локальной машине.

Что я сделал

spark_install()


config <- spark_config()
spark_dir = "C:/spark"

config$`sparklyr.shell.driver-java-options` <- paste0("-Djava.io.tmpdir=", spark_dir)
config$`sparklyr.shell.driver-memory` <- "4G"
config$`sparklyr.shell.executor-memory` <- "4G"
config$`spark.yarn.executor.memoryOverhead` <- "1g"

sc = spark_connect(master = "local", config = config)

my_data = spark_read_csv(sc, name = "my_data", path = "my_data.csv", memory = FALSE)

После завершения в папке C:/Spark я нашел файл с именем liblz4-java8352426675436067796.so

Что это за файл?

Если я отключу соединение Spark, этот файл все еще будет там. В следующий раз, если я снова захочу работать над my_data.csv, нужно ли мне перезапускать spark_read_csv? Только чтение данных занимает много времени.

Или есть способ напрямую использовать этот файл liblz4-java8352426675436067796.so


person tickly potato    schedule 05.10.2018    source источник


Ответы (1)


После его завершения в папке C:/Spark я нашел файл с именем liblz4-java8352426675436067796.so.

Что это за файл?

Файл представляет собой общую библиотеку привязок Java для liblz4. Это не связано с вашими данными.

Если я отключу соединение Spark, этот файл все еще будет там. В следующий раз, если я захочу снова работать с my_data.csv, нужно ли мне повторно запускать spark_read_csv?

Да, вам придется повторно импортировать данные. spark_read_csv создает только временные привязки, которые не могут пережить соответствующие SparkSession.

Если вы хотите сохранить данные, вам следует создать постоянную таблицу с помощью хранилища метаданных Hive.

person user10462512    schedule 05.10.2018