кеш таблиц в apache spark sql
От официального представителя Sparkдокумент, это говорит:
Spark SQL может кэшировать таблицы, используя столбчатый формат в памяти, вызывая sqlContext.cacheTable ("tableName") или dataFrame.cache (). Затем Spark SQL будет сканировать только необходимые столбцы и автоматически настроит сжатие, чтобы минимизировать использование памяти и давление ГХ. Вы можете вызвать sqlContext.uncacheTable ("tableName"), чтобы удалить таблицу из памяти.
Что на самом деле означает кэширование таблиц в столбчатом формате в памяти? Поместить всю таблицу в память? Поскольку мы знаем, что кэш также ленив, таблица кэшируется после первого действия в запросе. Имеет ли это какое-то значение для кэшированной таблицы при выборе различных действий или запросов? Я погуглил эту тему кеша несколько раз, но не смог найти некоторые подробные статьи. Буду очень признателен, если кто-нибудь сможет предоставить ссылки или статьи по этой теме.
http://spark.apache.org/docs/latest/sql-programming-guide.html#caching-data-in-memory