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

简介: 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



相关文章
|
SQL 存储 分布式计算
Hive数据仓库设计与优化策略:面试经验与必备知识点解析
本文深入探讨了Hive数据仓库设计原则(分区、分桶、存储格式选择)与优化策略(SQL优化、内置优化器、统计信息、配置参数调整),并分享了面试经验及常见问题,如Hive与RDBMS的区别、实际项目应用和与其他组件的集成。通过代码样例,帮助读者掌握Hive核心技术,为面试做好充分准备。
1158 0
|
SQL 缓存 关系型数据库
ClickHouse(19)ClickHouse集成Hive表引擎详细解析
Hive引擎允许对HDFS Hive表执行 `SELECT` 查询。目前它支持如下输入格式: -文本:只支持简单的标量列类型,除了 `Binary` - ORC:支持简单的标量列类型,除了`char`; 只支持 `array` 这样的复杂类型 - Parquet:支持所有简单标量列类型;只支持 `array` 这样的复杂类型
402 1
|
SQL 存储 JSON
Hive 解析 JSON 字符串数据的实现方式
Hive 提供 `get_json_object` 函数解析 JSON 字符串,如 `{"database":"maxwell"}`。`path` 参数使用 `$`、`.`、`[]` 和 `*` 来提取数据。示例中展示了如何解析复杂 JSON 并存储到表中。此外,Hive 3.0.0及以上版本内置 `JsonSerDe` 支持直接处理 JSON 文件,无需手动解析。创建表时指定 `JsonSerDe` 序列化器,并在 HDFS 上存放 JSON 文件,可以直接查询字段内容,方便快捷。
808 3
|
SQL 存储 Java
Hive 拉链表详解及实例
拉链表是一种数据仓库技术,用于处理持续增长且存在时间范围内的重复数据,以节省空间。它在Hive中通过列式存储ORC实现,适用于大规模数据场景,尤其当数据在有限时间内有多种状态变化。配置涉及事务管理和表合并选项。示例中展示了如何从原始订单表创建拉链表,通过聚合操作和动态分区减少数据冗余。增量数据可通过追加到原始表然后更新拉链表来处理。提供的Java代码用于生成模拟的订单增量数据,以演示拉链表的工作流程。
598 3
|
SQL HIVE
Hive全量表和增量表互相转换
Hive全量表和增量表互相转换
431 1
|
SQL 存储 关系型数据库
大数据Hive拉链表的设计与实现
大数据Hive拉链表的设计与实现
413 2
|
SQL 大数据 Java
大数据Hive URL解析函数及侧视图
大数据Hive URL解析函数及侧视图
318 0
|
SQL 数据采集 数据挖掘
大数据行业应用之Hive数据分析航班线路相关的各项指标
大数据行业应用之Hive数据分析航班线路相关的各项指标
338 1
|
4月前
|
SQL 分布式计算 大数据
大数据新视界 --大数据大厂之Hive与大数据融合:构建强大数据仓库实战指南
本文深入介绍 Hive 与大数据融合构建强大数据仓库的实战指南。涵盖 Hive 简介、优势、安装配置、数据处理、性能优化及安全管理等内容,并通过互联网广告和物流行业案例分析,展示其实际应用。具有专业性、可操作性和参考价值。
大数据新视界 --大数据大厂之Hive与大数据融合:构建强大数据仓库实战指南
|
11月前
|
SQL 分布式计算 Java
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
219 0

热门文章

最新文章

推荐镜像

更多
  • DNS