Pergunta

I have a hive table bucketed on userId, My select query contains userId in where clause but hive is doing full table scan. hive.enforce.bucketing is true Why don't hive take advantage of bucketing in such cases, is there any config to enable it??

Table Structure

userId int,
name int,
address String,
cell int,
......
......
......
......
CLUSTERED BY  (userId) SORTED BY (userId) INTO 20 BUCKETS

Select query

select cell from <table> where userId=<userId>
Foi útil?

Solução

select cell from <table> TABLESAMPLE(BUCKET <n> OUT OF 20 ON userId) usertable where userId = <userId>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top