先给结论:不要按“字段新旧”决定去留,而要按“字段是否仍在支撑一个可验证的业务动作”决定。旧系统里能迁出的字段,如果在新站没有任何页面、表单、筛选或通知会读取它,就应进入弃用清单;反之,即使它只在一个边缘流程里被用到,也要先保留映射关系,再决定是否合并展示。舟山网站开发常遇到旧库字段多、新站模型少的情况,真正难的不是技术导入,而是判断哪些字段还承担业务含义。
矛盾往往出现在试迁阶段:挑几条记录导入,字段看起来都能对上,团队便认为迁移方案可行。但放大到全量后,例外开始出现——空值、重复值、历史编码、同一含义多种写法,都会让原本简单的映射失效。此时有两种解释。
解释一:字段本身已经废弃,只是旧系统没有清理,例外属于历史噪声。解释二:字段仍在某个环节被使用,只是使用频率低、入口隐蔽,试迁样本恰好没覆盖到。两者对应的处理完全不同:前者可以弃用,后者必须保留或转换。
要区分它们,不能只看字段有没有值,而要看这个值被谁读取、读取后触发什么。建议对每个存疑字段做一次读取链路排查:
如果一条链路都找不到,字段大概率只是历史残留;如果能找到至少一条仍在运行的动作,就不能仅凭“新站没有对应位置”而删除。
确定要保留后,还要决定保留到什么程度。可以分三级处理:
分级的依据是动作频率和不可逆程度,而不是字段看起来是否重要。一个每月只用一次但对账必须的字段,应进入归档保留;一个每天展示但可由其他字段推导的字段,可以考虑合并。
假设旧系统有“客户来源渠道”和“首次咨询方式”两个字段,新站只规划了一个“来源”字段。试迁时发现多数记录两者一致,于是打算只留一个。全量排查后发现,部分老记录中“首次咨询方式”被用于区分电话回访和线上跟进,而新站的通知规则会读取这个区别。此时正确做法不是二选一,而是保留两个字段并在新站做映射:来源用于展示,首次咨询方式用于触发通知。如果排查后确认没有任何通知或报表读取它,才可以合并并归档旧值。
做出保留或弃用决定后,先选一小批包含空值、重复值和历史编码的记录做回填验证,观察页面展示、筛选结果、导出文件和通知触发是否与预期一致。如果验证中发现某个被弃用字段仍被间接读取,就把它移回保留清单;如果保留字段在新站没有任何实际读取,就降级为归档。这个动作的结果会直接影响下一步:只有验证通过的字段才进入正式迁移脚本,未通过的字段先冻结,不继续扩大迁移范围。
舟山网站开发面对旧系统字段不完整时,最稳妥的路径不是追求字段一一对应,而是让每个保留项都能回答“谁在什么动作里读取它”。回答不了,就归档或弃用;回答得了,就按动作频率决定保留级别,再用小批回填验证修正判断。