Спарк SQL не удалось распознать столбцы раздела куста - PullRequest
1 голос
/ 08 мая 2019

У меня есть секционированная таблица event_fact.Столбцы разделов dt, type.А потом я создаю представление поверх этой таблицы.

create view event_fact_view as select 
dt, type, columnA, columnB, collect_list(columnC) 
from event_fact 
group by dt, type, columnA, columnB;

И когда я выполню запрос ниже, spark-sql выполнит полное сканирование таблицы по event_fact независимо от столбцов раздела.Однако, если я запускаю тот же sql на кусте, он может это распознать.

select * from event_fact_view where dt='20190501' and type='A';

Как я уже определил, проблема связана с UDF collect_list, если я удаляю «collect_list», спарк sql может фильтровать сначала, а затем группировать по.Это известная проблема, чтобы зажечь sql?Я не мог найти какую-либо документацию или JIRA, связанные с этим.Есть ли другой способ collect_list?

...