首页 > 其他分享 >时点表、快照表

时点表、快照表

时间:2024-12-20 21:19:36浏览次数:2  
标签:12 快照 2024 库存 全量 时点表

在数据仓库中,时点表(Snapshot Table) 是一种用于记录某个特定时间点数据快照的表。它通常用于反映数据在某个时间点的状态,便于进行历史数据分析或业务状态追踪。

时点表的定义

时点表是将数据按照某个时间点或周期进行全量备份或截取的表,用于记录在某一时刻的数据状态。它和事实表不同,事实表通常是记录事务行为,而时点表更多是用于保存某一时刻的静态状态。

时点表的场景和用途

    1.    业务状态快照
    •    用于记录业务实体(如订单、客户、库存等)在某个特定时间的状态。
    •    例如:每天结束时记录所有客户的账户余额。
    2.    历史数据追踪
    •    用于分析某段时间内数据变化的趋势。
    •    例如:月末时记录库存状态,用于分析库存周转。
    3.    报表生成
    •    支持生成特定时间点的报表(如月报、季报)。
    4.    审计和合规
    •    记录历史状态以满足审计和合规需求。

时点表的设计

时点表通常需要以下字段:

字段名称    数据类型    描述
主键ID    主键    唯一标识记录的主键(可能是业务主键)。
时间戳    日期/时间    表示快照的时间点。
维度字段    各种类型    描述业务对象的维度信息。
指标字段    数值类型    描述在该时点的统计值(如余额、数量)。
其他字段    可选    存储其他与业务相关的信息。

时点表的示例

示例:每日客户账户余额时点表

客户ID    账户类型    余额    快照时间
10001    储蓄账户    5,000.00    2024-12-01
10002    支票账户    2,300.00    2024-12-01
10001    储蓄账户    6,000.00    2024-12-02

示例:月末库存状态时点表

商品ID    仓库ID    库存数量    快照时间
A001    W001    500    2024-11-30
A002    W002    300    2024-11-30
A001    W001    450    2024-12-31

时点表与其他表的区别

类型    时点表    事实表
数据粒度    特定时间点的全量快照    记录事务行为(增量或全量)。
用途    监控状态、历史追踪    分析行为、计算指标。
记录时间    具体的快照时间点    事务发生的时间戳。
更新方式    定期全量插入或覆盖    插入新事务,通常不覆盖历史记录。

时点表的维护

    1.    全量快照
    •    每次执行快照时将全量数据插入时点表。
    •    适用于数据量较小的场景。
    2.    增量快照
    •    仅记录相对于上次快照的变化数据。
    •    适用于数据量较大的场景。
    3.    自动化调度
    •    使用调度工具(如Airflow、Azkaban)按周期生成快照。

查询示例

查询某一时点的全量数据

SELECT *
FROM snapshot_table
WHERE 快照时间 = '2024-12-01';

比较两个时点之间的差异

SELECT A.商品ID,
       A.库存数量 AS 时点1库存,
       B.库存数量 AS 时点2库存,
       (B.库存数量 - A.库存数量) AS 库存变化
FROM snapshot_table A
JOIN snapshot_table B
  ON A.商品ID = B.商品ID
WHERE A.快照时间 = '2024-11-30'
  AND B.快照时间 = '2024-12-31';

总结
时点表是数据仓库中非常重要的一种数据存储形式,适用于需要记录历史状态、支持时序分析和生成固定时间点报表的场景。在设计时,要根据具体业务需求选择合适的数据粒度和更新策略。

标签:12,快照,2024,库存,全量,时点表
From: https://www.cnblogs.com/mengbin0546/p/18619992

相关文章

  • PbootCMS快照被劫持教你快速处理所有页面URL带参数地址转404
    当PbootCMS网站快照被劫持,导致所有页面URL带参数地址转到非法网站时,可以按照以下步骤进行紧急处理:第一步:找出根本原因排除DNS被劫持:检查DNS设置是否正确。使用第三方DNS查询工具(如 nslookup 或 dig)确认DNS解析是否正常。检查PbootCMS源码是否被植入后......
  • 【openGauss】WDR快照无法生成或执行生成不报错,但是snapshot.snapshot为空的问题
    问题情况开启enable_wdr_snapshot后再snapshot.snapshot中差不多任何快照信息手动创建快照也还是查不到问题原因检查pg_log日志(/opt/software/log为自己的日志路径)vi/opt/software/log/omm/pg_log/dn_6001/postgresql-2024-03-06_144308.log可以发现报错信息为......
  • 1146. 快照数组
    题目链接1146.快照数组思路哈希+二分法题解链接记录修改历史:哈希表+二分查找(Python/Java/C++/Go/JS/Rust)关键点理解题意:查询时要找到<=snap_id的最后一次修改记录时间复杂度\(O(\logn)\)空间复杂度\(O(n)\)代码实现:classSnapshotArray:de......
  • 虚拟化数据恢复—EXSI虚拟机误还原快照的数据恢复案例
    虚拟化技术原理是将硬件虚拟化供不同的虚拟机使用,一台物理机上可以有多台虚拟机。人为误操作或者物理机故障会导致上层虚拟机不可用,甚至虚拟机里的重要数据丢失。下面给大家分享一个vmware虚拟化误操作还原快照的数据恢复案例。虚拟化数据恢复环境:一台由物理机迁移到EXSI上面的虚......
  • Linux shell编程学习笔记77:tar命令——快照 & 备份(下)
     0 前言在Linuxshell编程学习笔记76:tar命令——快照&备份(上)中我们研究了 tar命令 的功能、格式、选项说明。现在我们来实践一下。1 应用实例1.1 创建演示文件和目录我们使用echo 命令和输出重定向创建文件f1 和f2,使用mkdir命令创建目录d1[purpleendurer@bash~]e......
  • Linux shell编程学习笔记76:tar命令——快照 & 备份(上)
    0 前言提取系统快照和备份文件都是我们的日常工作。在Windows中,我们可以创建系统还原点,在需要的时候可以把系统还原回去。在Linux中,我们可以使用tar命令来实现。1tar命令的功能,帮助信息,格式,选项和参数说明1.1 tar命令的功能tar名字来自"tapearchive"(磁带归档),最初用于将文件......
  • 记一次阿里云搭建K8S在恢复镜像快照之后etcd一个节点无法启动问题
    环境查看系统环境#cat/etc/redhat-releaseCentOSLinuxrelease7.9.2009(Core)#uname-aLinuxCentOS7K8SMaster010051013.10.0-1160.114.2.el7.x86_64#1SMPWedMar2015:54:52UTC2024x86_64x86_64x86_64GNU/Linux软件环境#kubectlversionClientVe......
  • pom.xml里配置私服发布地址并总是取最新快照版本
    在工程pom.xml下配置:<distributionManagement><snapshotRepository><id>maven-snapshots</id><url>http://your_host:port/repository/maven-snapshots/</url><snapshots>......
  • kvm主机快照
    #默认是以时间戳命名快照,没有备注我们不好区别virshsnapshot-createdomain-name查看快照[root@kafka-1ssh]#virshsnapshot-listauto-clone2-bridge-vmNameCreationTimeState----------------------------------------------------......
  • rdb快照持久化
    rdb快照持久化简介持久化:把数据存储于断电后不会丢失的设备中,通常是硬盘常见的持久化方式主从:通过从服务器保存和持久化,如mongoDB和replicationsets配置日志:操作生成相关日志,并通过日志恢复couchDB对于数据内容不修改,只追加,则文件本身就是日志,不会丢失数据###r......