文档产品文档
数据归档与清理策略
数据一直增长,系统会越来越慢。本文说明哪些数据可以归档、归档方式与保留策略的制定方法。
百百华产品团队2026-08-19阅读 115有用 19
为什么需要归档
MES 是高频写入系统。一个中等规模的工厂,每天可能产生:
- 报工记录数千条
- 采集数据数十万条
- 日志数万条
一年下来,单表可能上亿行。查询会越来越慢,备份越来越久,磁盘越来越紧张。
归档与删除的区别
| 操作 | 说明 | 是否可恢复 |
|---|---|---|
| 归档 | 移到历史库/归档表 | 可查、可恢复 |
| 删除 | 真正删除 | 不可恢复 |
优先用归档,不要直接删除。
数据分类与保留策略
| 数据类型 | 特性 | 建议保留 | 归档方式 |
|---|---|---|---|
| 基础数据 | 变化少,需长期保留 | 永久 | 不归档 |
| 工单 | 需追溯 | 3-5 年 | 按年归档 |
| 报工记录 | 量大,需追溯 | 3-5 年 | 按年归档 |
| 采集数据(明细) | 量极大 | 3-12 个月 | 按季度归档/压缩 |
| 采集数据(汇总) | 量小 | 永久 | 不归档 |
| 检验记录 | 需追溯(法规) | 按行业要求 | 按年归档 |
| 操作日志 | 审计需要 | 1-3 年 | 按年归档 |
| 系统日志 | 排查用 | 3-6 个月 | 直接清理 |
| 消息通知 | 时效性强 | 3-6 个月 | 直接清理 |
采集数据的处理最关键:明细数据量最大,但价值随时间快速衰减。常见做法是保留近期明细,把老数据聚合到小时级/天级汇总表。
归档方式
| 方式 | 说明 | 优点 | 缺点 |
|---|---|---|---|
| 归档表 | 同库不同表 | 查询方便 | 不减少库大小 |
| 历史库 | 独立数据库 | 减轻主库压力 | 跨库查询麻烦 |
| 冷存储 | 文件/对象存储 | 成本低 | 查询不便 |
| 分区表 | 数据库分区 | 管理方便、查询透明 | 需要数据库支持 |
分区表是最优雅的方案:按时间分区,查询时数据库自动只扫相关分区,清理时直接 drop 分区(秒级完成)。
如果数据库支持,强烈建议用分区表。
归档的实施
原则
- 先汇总,后归档:明细归档前,先把汇总数据算好存下来
- 保留索引信息:归档数据要有能关联回主数据的键
- 可查询:归档不是"消失",需要时能查到
- 可恢复:极端情况下能恢复到主库
- 过程留痕:归档动作本身要记录
归档流程
- 确定归档范围(时间、表)
- 备份(归档前必须备份)
- 计算并保存汇总数据
- 移动数据到归档存储
- 校验(条数、关键数据)
- 从主表删除
- 更新统计信息
- 记录归档日志
"先备份再归档"是硬要求。归档过程出错可能丢数据。
归档时机的选择
- 业务低峰期(凌晨)
- 分批进行(不要一次性归档几年数据)
- 避开月末/年末(业务繁忙)
汇总数据的保留
明细归档后,汇总数据要保留,用于长期趋势分析:
| 汇总粒度 | 保留期 |
|---|---|
| 小时级 | 1 年 |
| 日级 | 5 年 |
| 月级 | 永久 |
有了汇总数据,即使明细归档了,也能看到历史趋势。
关键配置项
| 配置 | 说明 |
|---|---|
| 保留期 | 各类型数据的保留时长 |
| 归档频率 | 多久归档一次 |
| 汇总规则 | 归档时生成哪些汇总 |
| 归档目标 | 归档到哪里 |
常见问题
| 问题 | 原因与处理 |
|---|---|
| 系统越来越慢 | 检查是否有大表未归档 |
| 备份时间过长 | 数据量太大,需要归档 |
| 磁盘空间不足 | 清理或归档历史数据 |
| 归档后查不到历史 | 归档查询功能未提供 |
实施建议
- 上线时就规划:不要等到系统慢了才想归档
- 保留策略要合规:涉及法规要求的数据不能随意清理,咨询合规部门
- 先小范围试验:先归档一年的数据,验证流程和影响
- 监控表大小:建立表大小的监控,超阈值预警
- 定期评估:每年回顾一次保留策略是否合适
"保留期不是越长越好"。保留太久会拖慢系统,且增加合规风险(历史数据也可能被要求提供)。
数据保留策略与归档工具,[待补充:产品团队补齐]。
这篇内容对你有帮助吗?
当前为游客态,投票按设备去重