先给结论:决定保留哪些旧字段,不要按“字段新旧”或“数据量大小”排序,而要按“是否有下游用途、是否无法重建、迁移后是否仍可维护”三项逐一过筛。凡是能用新系统重新生成、或没有任何前台与后台流程消费的字段,即使数据量很大也可以放弃;凡是牵动对账、历史凭证或客户识别、且丢失后无法从别处还原的字段,哪怕只有少量非空值,也应优先保留并单独设计承接方式。
下面用一个假设情境串起整个过程。假设资阳某企业要把一套运行多年的旧内容系统迁到新站,旧库里有约六十个字段,新系统只提供二十个标准字段位,其余需要自定义或外挂存储。这个情境只用于说明判断方法,不代表任何具体系统的实际能力。
把旧字段逐条归入三类,比笼统讨论“重要不重要”更可操作。
分类完成后,先处理第三类,能直接砍掉相当一部分字段,剩下的才需要进入下一轮判断。
对剩下的每个字段,依次问三个问题,任何一个答“否”就可以考虑放弃。
这里有一个容易踩的坑:某个字段在旧系统里长期为空,不代表它没用,可能只是旧后台没人填。判断依据应该是“业务上是否需要”,而不是“当前有多少非空值”。反过来,某个字段非空率很高,也可能只是旧系统默认写入的占位值,需要抽样看几条真实记录再定。
继续上面的假设。假设分类后剩下二十四个候选字段,按三个问题过筛:
对争议字段,动作是:先找实际使用它的人确认使用频率和用途,再决定是迁入新系统、导出成静态文件留存,还是随旧系统一起下线。这个确认动作的结果会直接改变下一步——如果确认仍在用,就要在新系统里补一个录入或同步入口;如果确认已停用,就可以从保留清单里划掉,减少迁移和后续维护的工作量。
当字段确实重要但新系统装不下时,通常有三条路,选择取决于字段的使用方式。
三种方式可以混用。例如凭证类走只读归档,仍在用的等级字段走自定义字段,量大的日志类字段走外挂存储。关键是每个字段都要明确归到一种方式,不能出现“先迁过去再说”的模糊状态。
单个样本成立的做法,放大到全量时经常失效。假设先拿一百条记录试迁,发现某字段全部有值、格式统一,于是决定保留;但全量数据里可能存在早期手工录入的异常格式、空值、超长文本,迁入时触发截断或报错。所以试点通过不等于全量通过,还要专门抽查最早、最旧、最少被访问的那批记录。
另一个边界是字段之间的依赖。单独看每个字段都能放弃,但两个字段组合起来才构成唯一识别信息,拆开迁就会丢失对应关系。遇到这种情况,应以组合为单位决定去留,而不是逐个字段判断。
最后提醒一点:迁移过程中出现的抓取异常、请求量波动或某类记录暂时查不到,都不能单独作为“处理正确”的证据,它们也可能来自缓存、权限或索引重建。判断保留项是否合理,最终还是要回到业务是否还能正常运转、历史数据是否还能被查到这两件事上。