我在 hive 中创建了一个表来测试压缩,
CREATE TABLE part_test(id int, name string, city string) PARTITIONED BY (dept string) clustered by (city) into 5 buckets stored as orc TBLPROPERTIES('transactional'='true');
在屏幕截图中,我们可以看到创建了许多增量目录(大约12个文件)。
压缩会自动启动,但无法运行或无法压缩增量目录。以下是我们在 hive 中设置的属性。
set hive.compactor.initiator.on=true;
set hive.compactor.worker.threads=1;
set hive.compactor.delta.pct.threshold=0.1f;
set hive.compactor.delta.num.threshold=10;
set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.enforce.bucketing=true;
在屏幕截图2中,我们可以看到压缩状态为已启动但未执行超过一天。
我们如何使压实工作?我们还需要设置其他属性吗?
最佳答案
您是否可以检查配置单元站点配置,即“Compactor使用的线程数”的属性
如果为0,则将其更改为大于0(也许为2)。然后使用“显示压缩”检查压缩状态。
关于hadoop - 配置单元压缩不会自动触发-HDP_2.6.5,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59151209/