gpt4 book ai didi

hadoop - 无法更新 Hive 事务表

转载 作者:可可西里 更新时间:2023-11-01 15:55:05 24 4
gpt4 key购买 nike

我正在尝试更新 Hive Transactional 表,但出现以下错误:

FAILED: SemanticException [Error 10290]: Encountered parse error while parsing rewritten merge/update or delete query.

下面是我的表 DDL:

CREATE TABLE bucketed_poc(
Col1 Int,
Col2 Int
)
CLUSTERED BY (Col2) INTO 10 BUCKETS
STORED AS ORC TBLPROPERTIES("transactional"="true","orc.compress"="ZLIB");

以下是我为 ACID 表设置的属性:

set hive.enforce.bucketing = true;
set hive.support.concurrency = true;
set hive.exec.dynamic.partition.mode = nonstrict;
set hive.txn.manager = org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
set hive.compactor.initiator.on = true;
set hive.compactor.worker.threads = 1;

我可以删除数据,但无法更新。我正在运行下面提到的更新查询:

Update bucketed_poc set col2 = 1 where `col1=877639`; 

最佳答案

在配置单元事务表中,您不能更新分桶列。在您的情况下,分桶是在 col2 列上完成的,因此您无法更新 col2。

关于hadoop - 无法更新 Hive 事务表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45183206/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com