簡體   English   中英

無法更新Hive交易表

[英]Unable to update Hive Transactional table

我正在嘗試更新Hive Transactional表,但它給出以下錯誤:

失敗:SemanticException [錯誤10290]:在分析重寫的合並/更新或刪除查詢時遇到解析錯誤。

下面是我的表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。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM