Интересно, поддерживает ли Spark SQL результат кэширования для запроса, определенного в предложении WITH.Запрос Spark SQL выглядит примерно так:
with base_view as
(
select some_columns from some_table
WHERE
expensive_udf(some_column) = true
)
... multiple query join based on this view
Хотя этот запрос работает с Spark SQL, я заметил, что UDF были применены к одному и тому же набору данных несколько раз.В этом случае UDF очень дорогой.Поэтому я хотел бы кэшировать результат запроса base_view, чтобы последующие запросы извлекли выгоду из кэшированного результата.
PS Я знаю, что вы можете создать и кэшировать таблицу с данным запросом, а затем ссылаться на нее в подзапросах.,Однако в этом конкретном случае я не могу создавать таблицы или представления.