常见问题

bucketId out of range: -1错误

当在Hive中创建事务表时,数据将被写入事务性目录,该目录是使用ACID(原子性、一致性、隔离性、持久性)属性进行管理。而使用concat_ws函数查询时,如果表没有正确分桶,则会出现bucketId out of range: -1的错误,这是因为concat_ws函数需要分区信息来确定表的数据分布。而当设置了transactional_propertiesinsert_only时,Hive将使用默认的bucketing和sorting策略,这可以确保插入的新行具有与已有行一致的分区信息,因此可以避免出现bucketId out of range: -1的错误。

tez的资源使用计算

Hive on Tez 任务运行时使用的资源计算如下:

使用的内存大小为:

Container 数量hive.tez.container.size + 1*tez.am.resource.memory.mb

使用的cpu数量为:

Container 数量* hive.tez.cpu.vcores +1*tez.am.resource.cpu.vcores

Last updated