hive2.1.insert、update、delete操作测试

这篇博客介绍了如何在Hive 2.1中启用并执行INSERT、UPDATE和DELETE操作,包括必要的配置参数设置,如'hive.support.concurrency'和'hive.txn.manager'。通过示例展示了创建事务性表、插入数据和删除数据的语句。然而,由于性能问题,Hive的这些操作可能需要进一步优化或在未来的版本中改进。
摘要由CSDN通过智能技术生成

hive2.1.insert、update、delete操作测试

在HIve缺省配置设置中,转换管理器不支持update跟delete操作。

若要Hive支持update操作跟delete操作,必须额外再配置一些东西,详细见:

https://cwiki.apache.org/confluence/display/Hive/Hive+Transactions

Configuration

Minimally, these configuration parameters must be set appropriately to turn on transaction support in Hive:

Client Side

Hive表的DML(Data Manipulation Language)操作包括对数据的增加(INSERT)、查询(SELECT)、更新(UPDATE)和删除(DELETE)。以下是每种操作的基本介绍: 1. INSERT操作Hive提供了向表中插入数据的方法,可以将数据插入到新表中或者追加数据到现有表中。 ```sql INSERT OVERWRITE TABLE 新表 [PARTITION (分区列 = '分区值')] SELECT 列1, 列2 FROM 原表 WHERE ...; INSERT INTO TABLE 现有表 [PARTITION (分区列 = '分区值')] SELECT 列1, 列2 FROM 原表 WHERE ...; ``` Hive 0.14版本之后支持更新(UPDATE)和删除(DELETE操作。 2. SELECT操作: SELECT语句用于从表中选择数据。这是最常用的查询语句,可以使用各种聚合函数、条件判断等来进行复杂查询。 ```sql SELECT 列名 FROM 表名 WHERE 条件; ``` 3. UPDATE操作UPDATE用于更新表中已经存在的数据,但只能更新最后一个分区的数据。 ```sql UPDATE 表名 SET 列名 = 新值 WHERE 条件; ``` 4. DELETE操作DELETE用于从表中删除数据,同样只支持删除最后一个分区的数据。 ```sql DELETE FROM 表名 WHERE 条件; ``` Hive中的DML操作通常使用MapReduce进行执行,因此操作性能相较于传统关系型数据库要慢一些。需要注意的是,由于Hive的表本质上是存储在HDFS上的数据,因此在执行更新或删除操作时,实际上是在原有数据的基础上进行标记或添加新的数据版本,而不是直接修改原数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值