Вопрос, касающийся таблиц и баз данных Spark sql

#apache-spark #pyspark #apache-spark-sql

Вопрос:

Я новичок в Spark и смущен по поводу нижеприведенного пункта:

Когда мы создаем новые базы данных и глобальные таблицы для нашего собственного анализа(используя API фреймов данных или spark sql), где они создаются/хранятся? Хранятся ли они в памяти Spark или во внешнем хранилище(может быть Hive/HDFS/СУБД и т. Д.), Откуда Spark считывает данные? Создаются ли временные представления/локальные таблицы только в памяти Spark?

Спасибо!

Ответ №1:

Когда мы создаем новые базы данных и глобальные таблицы для нашего собственного анализа(используя API фреймов данных или spark sql), где они создаются/хранятся?

Это зависит от вашей инфраструктуры. Например:

  • Если вы находитесь в среде on-prem, базовые данные находятся в HDFS
  • Если вы находитесь в базе данных Azure, базовые данные находятся в хранилище данных Azure
  • Если вы находитесь в облаке Databricks, базовые данные находятся в Amazon S3

Хранятся ли они в памяти Spark или во внешнем хранилище(может быть Hive/HDFS/СУБД и т. Д.), Откуда Spark считывает данные?

Эти данные загружаются в память только при вызове df.cache()

Создаются ли временные представления/локальные таблицы только в памяти Spark?

ДА