【Hive-优化】Hive的优化方式二(分桶优化)
1)为什么使用分桶表
1.1.数据采样
在真实的开发环境中,表中的数据量比较大,如果用原有的表,我们开发和自测的过程会比较慢,严重影响系统的开发进度。
因此可以采用分桶表的方式进行采样,但是分桶表进行采样的结果并不是真正准确的结果,而是一个比较具有代表性的结果。
语法:
select * from table tablesample(bucket x out of y on column)
x:从哪个桶开始采样
Y:用表中抽样的比例,用建表时的总桶数÷y=抽取多少个桶的数据
x的值必须小于等于y的值,不然会报异常
例如:
table总bucket数为6,tablesampl

文章介绍了Hive中使用分桶表进行数据采样和优化查询效率的方法,包括MapJoin、Bucket-MapJoin和SMB-Join三种JOIN优化策略,以及相应的配置设置。MapJoin适用于大小表JOIN,Bucket-MapJoin要求小表是大表的桶数倍,SMB-Join则用于大表间的JOIN,减少shuffle数据量。
最低0.47元/天 解锁文章
538

被折叠的 条评论
为什么被折叠?



