桶表也是一种用于优化查询而设计的表类型。

创建桶表时,需指定桶的个数、分桶的依据字段,hive会自动将数据分桶存储。

查询时,只需要遍历一个桶里的数据,或者遍历部分桶,就可以提高查询效率。

--创建线索表
create table dealer_leads
(
  leads_id string,
  dealer_id string,
  user_id string,
  user_phone string,
  user_name string,
  create_time string
)
clustered by (dealer_id) sorted by (leads_id) into 10 buckets
row format delimited fields terminated by '\t'
stored as textfile;
  • clustered by:根据dealer_id的值进行哈希后模除分桶个数,确保相同dealer_id数据放入同一个桶中

  • sorted by:指定桶中的数据以哪个字段进行排序

  • into 10 buckets:指定分桶个数

results matching ""

    No results matching ""