Спарк амнезия паркетных перегородок при кэшировании в памяти (собственный искровой кеш) - PullRequest
0 голосов
/ 03 апреля 2019

Я работаю над некоторой пакетной обработкой в ​​Spark, читая данные из многораздельного файла паркета, размер которого составляет около 2 ТБ.Прямо сейчас я кеширую весь файл в памяти, так как мне нужно ограничить чтение одного и того же файла паркета несколько раз (учитывая способ, которым мы анализируем данные).

До некоторого времениназад код работает нормально.Недавно мы добавили варианты использования, которые должны работать на некоторых выборочных разделах (например, среднее значение показателя за последние 2 года, когда полные данные появляются через 6+ лет).

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

Итак, мой вопрос в том, будет ли кэширование Spark в памяти учитывать разделы файла Parquet, т. Е. Будет ли искра хранить информацию о разделах даже после кэширования данных в памяти?

Примечание. Поскольку этодействительно общий вопрос о стиле обработки Spark, я не добавил ни метрики, ни кода.

...