8

Можно ли кэшировать фрейм данных, а затем ссылаться (запрос) в другом скрипте ... Моя цель заключается в следующем:Как кэшировать кадр искры данных и ссылаться на нее в другом сценарии

  1. В сценарии 1, создать фрейм данных (Df)
  2. Выполнить сценарий 1 и кэш ф.р.
  3. В сценарии 2, данные запроса в ДФ

ответ

4

Это не представляется возможным с помощью стандартных Spark, исполняемые файлы. Spark DataFrame привязан к конкретному SQLContext, который использовался для его создания и недоступен за его пределами.

Есть инструменты, такие как Apache Zeppelin или Databricks, которые используют общий контекст, вводимый в разные сеансы. Таким образом вы можете обмениваться временными таблицами между разными сеансами или гостевыми языками.

Существуют и другие платформы, в том числе spark-jobserver и Apache Ignite, которые предоставляют альтернативные способы совместного использования распределенных структур данных. Вы также можете посмотреть на Livy server.

Смотрите также: Share SparkContext between Java and R Apps under the same Master

0

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