Есть некоторые сомнения по поводу action and transformation
в Spark.
Я использую API-интерфейс spark из последних двух месяцев. (Learned
) Spark api обладает способностью, которая говорит о том, что он не будет загружать какие-либо данные в память до тех пор, пока не будут предприняты какие-либо действия для сохранения где-либо окончательно преобразованных данных. Это правильное понимание?
Более уточненное определение:
Spark создаст DAG (Directed Acycli c Graph), используя applied operation, source RDD and function used for transformation
. И он будет продолжать строить этот граф, используя ссылки, пока вы не примените какую-либо операцию к последнему выстроенному RDD. Вот почему преобразования в Spark являются ленивыми.
В тот момент, когда запускается действие (например, запись в файл), данные начинают загружаться в память из источника, а затем преобразуются и, наконец, записываются в файл. Это правильное значение action
? ИЛИ Действие - это что-то, когда программа драйвера отправляет transformation and action graph
мастеру, а затем мастер отправляет уважаемые data and code
различным рабочим узлам для выполнения? Какой из них является правильным пониманием?
Прочитал онлайн-сообщения, но не очищен.