Хранит ли Spark DataFrame в памяти при загрузке из файла? - PullRequest
0 голосов
/ 25 октября 2019

Если я создаю Dataframe следующим образом:

val usersDF = spark.read.csv("examples/src/main/resources/users.csv")

Действительно ли Spark загружает (/ копирует) данные (из файла csv) в память или в базовую файловую систему как распределенный набор данных?

Я спрашиваю, потому что после загрузки df любое изменение данных базового файла не отражается в запросах к фрейму данных. (Если, конечно, фрейм данных снова загружается заново, вызывая приведенную выше строку кода.

Я использую интерактивные запросы в записных книжках Databricks.

1 Ответ

1 голос
/ 26 октября 2019

Пока вы не выполните действие с этим файлом, файл не будет загружен в память, и вы увидите все содержимое файла до того момента, пока он не будет загружен в память, когда действие произойдет в плане выполнения.

И если к файлу уже было выполнено действие, в ходе которого к файлу были внесены какие-либо изменения, вы увидите кэшированный результат первого выполнения, если он может поместиться в ПАМЯТЬ.

...