使用存储处理程序和Hive更新JDBC数据库表

时间:2017-07-14 05:07:38

标签: hadoop hive hiveql hadoop2 hive-udf

我已经阅读过使用Hive JDBC存储处理程序 (https://github.com/qubole/Hive-JDBC-Storage-Handler), Hive中的外部表可以在不同的数据库(MySQL,Oracle,DB2)上创建,用户可以使用Hive使用此处理程序读取和写入JDBC数据库。 我的问题在于更新。 如果我们使用hive.14支持Hive更新/删除并使用存储处理程序将外部表指向JDBC数据库表,它是否允许我们在从Hive端触发更新查询时更新数据库表? / p>

1 个答案:

答案 0 :(得分:0)

  

您无法在配置单元中更新外部表。

在配置单元中,只有转换表支持ACID属性。默认情况下,事务配置为关闭。因此,要创建事务表,您需要在create语句中添加'TBLPROPERTIES('transactional'='true')'

它有很多限制。其中一个是你不能将外部表作为ACID表,因为外部表不受hive压缩器的控制。

要了解详情,请点击here