Hive数据更新同时去重入门

本文介绍了一种在导入数据时进行去重的方法,通过使用row_number()函数结合窗口函数来选取最新记录,有效避免了数据重复导致的问题。此方法虽然会在存储上产生冗余,但在查询时能够快速获取到最新的数据记录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在导入数据时去重

导入数据在查询时去重

就是导入重复的数据,在查询时用row_number取最新的值,缺点就是有冗余存储,另外,查询会耗时较多

with a as (
    select id,
           update_time,
           state,
           password,
           username,
           row_number() over (distribute by id sort by update_time) `rn`
    from t1
)
select id,
       update_time,
       state,
       password,
       username
from a
where a.rn = 1;

参考

大数据,数据仓库,hive不能使用update更新操作解决方案 - 简书

拉链表(一) - 知乎

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鸭梨山大哎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值