Hive 全量表、增量表、拉链表 解析

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: Hive 全量表、增量表、拉链表 解析

1.全量表

(1)全量表,有无变化,都要报

(2)每次上报的数据都是所有的数据(变化的 + 没有变化的)

 (3)  每天抽取

第一次:

id name money time
1 a 10 2020-05-18 00:01:01
2 b 20 2020-05-18 10:00:00

第二次:

id name money time
1 a 20 2020-05-19 00:01:01
2 b 20 2020-05-18 10:00:00
3 c 10 2020-05-19 00:01:01

分别抽数两次对应全量表

id name money time dt
1 a 10 2020-05-18 00:01:01 2020-05-18
2 b 20 2020-05-18 10:00:00 2020-05-18
id name money time dt
1 a 20 2020-05-19 00:01:01 2020-05-19
2 b 20 2020-05-18 10:00:00 2020-05-19
3 c 10 2020-05-19 00:01:01 2020-05-19

2.增量表:只要更新(新增、修改)就同步

第一次:

id name money time
1 a 10 2020-05-18 00:01:01
2 b 20 2020-05-18 10:00:00

第二次:

id name money time
1 a 20 2020-05-19 00:01:01
2 b 20 2020-05-18 10:00:00
3 c 10 2020-05-19 00:01:01

对应两次抽数增量表(需要监控表的改变)

id name money time dt
1 a 10 2020-05-18 00:01:01 2020-05-18
2 b 20 2020-05-18 10:00:00 2020-05-18
id name money time dt
1 a 20 2020-05-19 00:01:01 2020-05-19
3 c 10 2020-05-19 00:01:01 2020-05-19

3.拉链表:

(1)不需要像全量表,每天抽取所有数据(节省空间)

(2)可以查看某条记录的历史状态

第一次:

id name money time
1 a 10 2020-05-18 00:01:01
2 b 20 2020-05-18 10:00:00

第二次:

id name money time
1 a 20 2020-05-19 00:01:01
2 b 20 2020-05-18 10:00:00
3 c 10 2020-05-19 00:01:01

 

对应的拉链表

id name money time t_start t_end
1 a 10 2020-05-18 00:01:01 2020-05-18 9999-12-31
2 b 20 2020-05-18 10:00:00 2020-05-18 9999-12-31 
id name money time t_start t_end
1 a 10 2020-05-18 00:01:01 2020-05-18 2020-05-18
1 a 20 2020-05-19 00:01:01 2020-05-19 9999-12-31
2 b 20 2020-05-18 10:00:00 2020-05-18 9999-12-31
3 c 10 2020-05-19 00:01:01 2020-05-19 9999-12-31



相关文章
|
7月前
|
SQL 存储 分布式计算
Hive数据仓库设计与优化策略:面试经验与必备知识点解析
本文深入探讨了Hive数据仓库设计原则(分区、分桶、存储格式选择)与优化策略(SQL优化、内置优化器、统计信息、配置参数调整),并分享了面试经验及常见问题,如Hive与RDBMS的区别、实际项目应用和与其他组件的集成。通过代码样例,帮助读者掌握Hive核心技术,为面试做好充分准备。
670 0
|
6月前
|
SQL 缓存 关系型数据库
ClickHouse(19)ClickHouse集成Hive表引擎详细解析
Hive引擎允许对HDFS Hive表执行 `SELECT` 查询。目前它支持如下输入格式: -文本:只支持简单的标量列类型,除了 `Binary` - ORC:支持简单的标量列类型,除了`char`; 只支持 `array` 这样的复杂类型 - Parquet:支持所有简单标量列类型;只支持 `array` 这样的复杂类型
231 1
|
7月前
|
SQL 存储 JSON
Hive 解析 JSON 字符串数据的实现方式
Hive 提供 `get_json_object` 函数解析 JSON 字符串,如 `{"database":"maxwell"}`。`path` 参数使用 `$`、`.`、`[]` 和 `*` 来提取数据。示例中展示了如何解析复杂 JSON 并存储到表中。此外,Hive 3.0.0及以上版本内置 `JsonSerDe` 支持直接处理 JSON 文件,无需手动解析。创建表时指定 `JsonSerDe` 序列化器,并在 HDFS 上存放 JSON 文件,可以直接查询字段内容,方便快捷。
394 3
|
7月前
|
SQL 存储 Java
Hive 拉链表详解及实例
拉链表是一种数据仓库技术,用于处理持续增长且存在时间范围内的重复数据,以节省空间。它在Hive中通过列式存储ORC实现,适用于大规模数据场景,尤其当数据在有限时间内有多种状态变化。配置涉及事务管理和表合并选项。示例中展示了如何从原始订单表创建拉链表,通过聚合操作和动态分区减少数据冗余。增量数据可通过追加到原始表然后更新拉链表来处理。提供的Java代码用于生成模拟的订单增量数据,以演示拉链表的工作流程。
314 3
|
7月前
|
SQL HIVE
Hive全量表和增量表互相转换
Hive全量表和增量表互相转换
263 1
|
SQL 存储 关系型数据库
大数据Hive拉链表的设计与实现
大数据Hive拉链表的设计与实现
239 2
|
SQL 大数据 Java
大数据Hive URL解析函数及侧视图
大数据Hive URL解析函数及侧视图
210 0
|
7月前
|
SQL 数据采集 数据挖掘
大数据行业应用之Hive数据分析航班线路相关的各项指标
大数据行业应用之Hive数据分析航班线路相关的各项指标
211 1
|
2月前
|
SQL 分布式计算 Java
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
67 0
|
5月前
|
SQL 分布式计算 大数据
大数据处理平台Hive详解
【7月更文挑战第15天】Hive作为基于Hadoop的数据仓库工具,在大数据处理和分析领域发挥着重要作用。通过提供类SQL的查询语言,Hive降低了数据处理的门槛,使得具有SQL背景的开发者可以轻松地处理大规模数据。然而,Hive也存在查询延迟高、表达能力有限等缺点,需要在实际应用中根据具体场景和需求进行选择和优化。

热门文章

最新文章

推荐镜像

更多