数据表的生命周期
历史数据等级划分
等级 | 定义 |
---|---|
P0 | 非常重要的主题域数据和非常重要的应用数据,具有不可恢复性。这些数据对业务至关重要,一旦丢失或损坏,可能会导致重大影响,如交易、日志、集团 KPI 数据、IPO 关联表等。 |
Pl | 重要的业务数据和重要的应用数据,具有不可恢复性。这些数据也对业务非常重要,虽然不像 P0 等级那么关键,但仍然需要保证其完整性和及时性,如重要的业务产品数据。 |
P2 | 重要的业务数据和重要的应用数据,具有可恢复性。这些数据也对业务有影响,但相对于 P0 和 Pl 等级的数据,其重要性稍低,且具有可恢复性,如交易线 ETL 产生的中间过程数据。 |
P3 | 不重要的业务数据和不重要的应用数据,具有可恢复性。这些数据对业务影响较小,即使丢失或损坏,对业务的影响较小,如某些 SNS 产品报表。 |
通过这样的等级划分,可以在数据仓库中更好地管理数据,优先保护对业务至关重要的数据,合理安排数据的保留周期,确保数据的完整性和可用性。同时,根据不同等级的数据,可以灵活选择合适的数据处理策略和存储方案,实现数据的有效管理与利用。
表类型划分
表类型 | 历史数据等级 | 保留周期 | 示例表名 | 说明 |
---|---|---|---|---|
事件型流水表 | P0 | 永久保留 | 日志表 | 存储交易日志等非常重要的主题域数据 |
Pl | 3年 | |||
P2 | 1年 | |||
P3 | 180天 | |||
事件型镜像表 | P0 | 永久保留 | 交易表 | 存储交易的状态和时间等非常重要的应用数据 |
Pl | 3年 | |||
P2 | 1年 | |||
P3 | 180天 | |||
维表 | P0 | 长期历史数据 | 用户表、商品表 | 存储非常重要的业务数据和应用数据,如用户、商品数据 |
Merge 全量表 | P0 | 长期历史数据 | 用户表、交易表 | 存储交易和用户等重要的业务数据,保留历史状态 |
ETL 临时表 | P2 | 最多7天 | 临时表 | ETL处理过程中产生的中间过程数据 |
普通全量表 | P3 | 根据业务需求 | 产品数据表 | 存储不重要的业务数据和应用数据,可根据需求决定保留周期 |
请注意,以上保留周期只是示意,实际应用中可以根据业务需求和数据大小进行具体的设置。对于每种表类型,可以根据其重要性和数据增长情况选择合适的历史数据等级,并相应地确定保留周期。例如,对于非常重要的主题域数据和应用数据,应该选择 P0 等级,并且保留周期要较短,以确保数据的完整性和及时性。对于不重要的业务数据和应用数据,可以选择 P3 等级,并根据业务需求决定是否保留和保留多长时间。
事件型镜像表(增量表): 事件型镜像表(增量表)指业务过程性数据,有主键,但是对于同样主键的属性会发生缓慢变化,如交易、订单状态与时间会根据业务发生变更。
事件型流水表(增量表): 事件型流水表(增量表)指数据无重复或者无主键数据,如日志。
Merge 全量表: Merge 全量表包括业务过程性数据或者维表数据。由于数据本身有新增的或者发生状态变更,对于同样主键的数据可能会保留多份,因此可以对这些数据根据主键进行 Merge 操作,主键对应的属性只会保留最新状态,历史状态保留在前一天分区 中。例如,用户表、交易表等都可以进行 Merge 操作。
普通全量表: 很多小业务数据或者产品数据,BI一般是直接全量拉取,这种方式效率快,对存储压力也不是很大,而且表保留很长时间,可以根据历史数据等级确定保留策略。
数据仓库分层表生命周期Demo
下面只是一个例子,具体情况根据实际来定,好的数据生命周期管理可以节约很多的成本。
表类型 | 层级 | 生命周期保留策略 | 示例表名 | 说明 |
---|---|---|---|---|
事件型流水表 | ODS | 保留永久,最近3年,最近1年的数据 | 订单日志表 | 存储原始订单日志数据,保留近期数据用于后续处理 |
事件型镜像表 | ODS | 保留永久,最近3年,最近1年的数据 | 交易明细表 | 存储经过清洗和修正后的交易明细数据,保留半年内数据用于分析 |
DWD表 | DWD | 保留最近3年,最近1年的数据 | 订单明细宽表 | 存储经过清洗和修正后的订单明细数据,保留一年内数据用于分析 |
DIM表 | DIM | 保留永久,最近3年,最近1年的数据 | 用户维度表 | 存储用户维度信息,长期保存供维度分析和关联使用 |
DWM表 | DWM | 保留最近3年,最近1年的数据 | 每月订单汇总宽表 | 存储按月汇总的订单数据,保留两年内数据用于月度分析 |
DWS表 | DWS | 保留最近3年,最近1年的数据 | 每周订单汇总宽表 | 存储按周汇总的订单数据,保留半年内数据用于周度分析 |
APP表 | APP | 保留最近3年,最近1年的数据 | 销售报表 | 存储生成的销售报表数据,保留近期数据用于展示和实时分析 |
以上表格中给出了每种表类型的层级,生命周期保留策略以及示例表名。不同类型的表根据其数据的特点和业务需求,选择不同的保留周期以满足业务分析和查询的需求。同时,随着数据的增长,可能需要定期清理历史数据,以释放存储资源和提高系统性能。请注意,上述的生命周期保留策略只是示意,实际应用中应根据业务需求、数据增长情况和存储资源进行具体调整。