跳到正文

更多文章

数据周刊|BigQuery 开始回流数据库,AI 问数也终于能看 token 账单 上游只改 1 个字段,17 张报表一起报错:先查哪 3 层依赖 财务月结后订单金额少了 12 万:分析师用 5 张对账表定位差异 仓库说缺货,系统却显示还有 800 件:零售分析师先核对哪 4 个库存时间点 供应商文件每天准时到,3 个字段却悄悄变了:数据分析师用 9 条门槛验收外部数据
数据负责人要删 3 年日志,审计和成本各说各话:用 4 个维度定保留期限

周四上午,数据平台的会议桌上摆着两张纸。

左边是存储账单。右边是审计发来的意见,只有一句:“历史日志需满足调查和追溯要求,暂不建议删除。”

平台负责人拿着荧光笔,在“暂不建议”下面划了两遍。他问审计:“具体留多久?”

审计说,要看制度。

他又问财务:“希望降到多少?”

财务说,越低越好。

于是三年份的日志夹在两句正确的话中间。删了,怕将来查不到;不删,热存储每月继续扣钱。会议开了四十分钟,最后决定“再评估一下”。

企业里的许多保留策略,就是这样长出来的。它不像策略,更像一段没有结束日期的犹豫。

真正的问题不是审计和成本谁更有道理。两边说的都对,只是各自回答了一个维度。审计在问证据最低要留到什么时候,平台在问数据多快要能取回,业务在问它还有没有用途,财务在问继续保存到底要花多少钱。

把这四件事压成一个“统一保留 3 年”,当然省事。省下来的主要是讨论,代价则由存储、风险和下一任负责人慢慢支付。

文中的容量、期限和费用只用于演示方法,不构成某个行业的法规结论。具体期限必须由法务、合规、审计、安全与数据所有者结合适用规则确认。

先别问留几年:一条期限其实包含 4 个时间点

很多保留表只有一列:retention_days = 1095

这列看着很干净,却把四种不同决定揉在了一起:

  • 热存储截止点:数据还需要秒级或分钟级查询到什么时候;
  • 在线或低频截止点:可以接受更慢读取,但仍要直接检索到什么时候;
  • 归档截止点:平时不查,遇到调查、争议或重算时仍能恢复到什么时候;
  • 最终到期点:没有例外冻结时,什么时候进入验证删除。

同一份安全日志,可能只需要热存 30 天,却要低频保存更久;一份订单操作记录,可能在合同争议窗口内需要较快取回,窗口外只保留经批准的归档;一张可由原始数据稳定重建的聚合表,保存要求又可能短得多。

所以“保留多久”至少要写成一条时间路径,而不是一个孤零零的天数。

四个维度共同决定热存、低频、归档与最终到期

维度一:法律、合同与制度,决定不能越过的底线

第一维不是“审计说要留”,而是什么对象,依据什么规则,从哪个事件开始,至少留到哪一天

这句话里的每个词都要能落到表里。

对象要具体

“日志”不是一种数据。

登录与权限变更记录、订单操作记录、应用调试日志、数据库慢查询、匿名访问统计,包含的信息、对应的风险和调查价值都不同。若一条规则覆盖整个日志桶,往往说明分类还没做完。

至少先写清:

  • 数据类别与系统来源;
  • 是否包含个人信息、交易信息或敏感业务字段;
  • 是否属于安全、财务、合同或行业审计证据;
  • 是否存在副本、备份、索引和导出文件。

依据要能引用

保留依据可以来自法律法规、监管规则、客户合同、内部制度、安全调查流程或业务恢复要求。它们不能都写成“合规需要”。

例如,涉及个人信息时,长期保留并不天然更安全。《中华人民共和国个人信息保护法》第十九条规定,除法律、行政法规另有规定外,个人信息的保存期限应当为实现处理目的所必要的最短时间。

这不等于工程师可以自己决定一个最短天数。它意味着团队要同时回答两个问题:为什么必须继续保存,以及目的结束后凭什么还不删除。

起算事件要明确

“保留 3 年”最容易漏掉的是从哪一天开始算。

可能的起算事件包括:

  • 记录生成;
  • 账号注销;
  • 合同终止;
  • 订单结案;
  • 审计年度结束;
  • 安全事件关闭。

如果起算事件没有字段,规则就无法自动执行。系统只知道对象创建日期,组织却以合同终止日期为准,两者之间会差出一大截。

例外冻结要独立

调查、诉讼、争议或事故处理中,某批数据可能要暂停自动删除。这个例外不能靠人在群里喊一句“先别删”。

保留表至少要有冻结范围、原因、发起人、批准人、开始时间、复核时间和解除条件。冻结解除后,数据也不应直接消失,而要重新计算到期日并走一次审批。

第一维的产物不是一个年限,而是一条可引用、可起算、可暂停、可复核的底线。

维度二:恢复与调查时效,决定数据放在哪一层

满足保留要求,不等于把所有数据一直放在最快的存储层。

真正决定冷热分层的,是什么时候会用、需要多快拿到、拿到后能不能读

可以把需求拆成三类:

使用场景典型问题需要写清的服务目标
日常排障最近几小时发生了什么查询延迟、可用时间窗
事故与审计某个账号在某日做了什么取回时限、检索范围、访问审批
历史重算原始记录能否重放出明细恢复时间、解析版本、校验方式

PRO 会员专属

本文为 PRO 会员专属内容,成为会员即可阅读全文。

PRO ¥199/年 · Pro 专属文章 + 2300+ 知识文档 + 会员社群

Elazer (石头)
Elazer (石头)

11 年数据老兵,从分析师到架构专家。用真实经历帮数据人少走弯路。

加入免费社群

和数据从业者一起交流成长

了解详情 →

成为会员

解锁全部内容 + 知识库

查看权益 →

1v1 咨询

有具体职业困惑?一小时说清楚

预约咨询 →
← 上一篇 3 年日志占满仓库,没人查询也没人敢删:先问清 4 个问题 下一篇 → 供应商文件每天准时到,3 个字段却悄悄变了:数据分析师用 9 条门槛验收外部数据