2017-07-19 21 views
1
私はハイブトランザクションテーブルを更新しようとしていますが、そのエラーの下に与え

:以下 更新できませんハイブのトランザクションテーブル

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`; 

答えて

0

ハイブトランザクションテーブルでは、バケット列を更新できません。あなたのケースでは、col2列でバケット化が行われるため、col2は更新できません。

関連する問題