删除或更新操作不适用于配置单元0.14

问题描述:

任何人都知道为什么删除/更新操作在配置单元0.14中不起作用(它应该是在开始工作0.14版本),即使我按照步骤/格式创建表并获取:删除或更新操作不适用于配置单元0.14

FAILED:SemanticException [错误10294]:尝试使用不支持这些操作的事务管理器进行更新或删除。

运行时删除操作。请帮助我。

CREATE TABLE STUDENT 
(
STD_ID INT, 
STD_NAME STRING, 
AGE INT, 
ADDRESS STRING 
) 
CLUSTERED BY (ADDRESS) into 3 buckets 
ROW FORMAT DELIMITED 
FIELDS TERMINATED BY ',' 
STORED as orc tblproperties('transactional'='true'); 

从0.14开始删除和更新作品。我能够做到这一点。 您需要在蜂巢

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

设置新的配置参数,然后创建一个表与ACID支持,

 CREATE TABLE STUDENT 
(
STD_ID INT, 
STD_NAME STRING, 
AGE INT, 
ADDRESS STRING 
) 
CLUSTERED BY (ADDRESS) into 3 buckets 
ROW FORMAT DELIMITED 
FIELDS TERMINATED BY ',' 
STORED as orc tblproperties('transactional'='true'); 

,做CURD opertaions。

update STUDENT 
    set AGE = 24 
    where STD_ID = 19; 

请按照以下steps

+0

我不能添加蜂巢我不能添加hive.txn.manager财产。 txn.manager属性,因为它是不稳定的,并与所有这些标志我仍然得到相同的错误 – rawal

+0

感谢它在我跟进你的博客后工作。 – rawal

+0

@raw:很好。如果答案是有用的,请接受答案 –

1.设置在蜂房-site.xml中

2.创建新再次表格下面的属性

3.Load在表

4.Try的数据CRUD操作。它会工作。祝你好运

<property> 
    <name>hive.support.concurrency</name> 
    <value>true</value> 
</property> 

<property> 
    <name>hive.enforce.bucketing</name> 
    <value>true</value> 
</property> 

<property> 
    <name>hive.exec.dynamic.partition.mode</name> 
    <value>nonstrict</value> 
</property> 

<property> 
    <name>hive.txn.manager</name> 
    <value>org.apache.hadoop.hive.ql.lockmgr.DbTxnManager</value> 
</property> 

<property> 
    <name>hive.compactor.initiator.on</name> 
    <value>true</value> 
</property> 

<property> 
    <name>hive.compactor.worker.threads</name> 
    <value>1</value> 
</property> 
+0

因为它不是稳定的,并与所有必需的标志我仍然得到同样的错误 – rawal