分桶与分区的区别:
1)分区和分桶最大的区别就是分桶随机分割数据库,分区是非随机分割数据库。
分区是表的部分列的集合,可以为频繁使用的数据建立分区,
这样查找分区中的数据时就不需要扫描全表,这对于提高查找效率很有帮助,水平划分
2)分桶是垂直划分,桶是通过对指定列进行哈希计算来实现的,通过哈希值将一个列名下的数据切分为一组桶,
并使每个桶对应于该列名下的一个存储文件,
hive使用对分桶所用的值进行hash,并用hash结果除以桶的个数做取余运算的方式来分桶,
保证了每个桶中都有数据,但每个桶中的数据条数不一定相等。
分桶是存储在文件中,分区是存放在文件夹中,分桶要比分区查询效率高。
hive数据模型
最新推荐文章于 2024-09-10 09:48:47 发布