尝试使用不支持这些操作的事务管理器进行更新或删除

时间:2015-12-10 09:41:52

标签: hadoop hive cloudera-quickstart-vm

在Cloudera Quickstart VM中尝试更新Hive表中的数据时,我收到此错误。

  

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

我在hive-site.xml文件中添加了一些更改,并重新启动了hive和cloudera。这些是我在Hive-site.xml中所做的更改

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

1 个答案:

答案 0 :(得分:9)

我已尝试使用您在hortonworks沙箱中提供的配置,并且我能够在桌面上执行ACID操作,并且我认为它也适用于Cloudera环境。虽然有一些事情需要提及:

  • 确保配置单元具有您提供的属性(您可以使用SET命令在Hive CLI中验证它们)
  • 与您合作的表格必须打包,声明为ORC格式并且包含在其中的表格属性' transactional' =' true' (hive仅支持ORC格式和事务表的ACID操作)。正确表的一个例子是这样的:

    release

您可以关注此example