2. 追溯对象与数据需求分析
数据库设计的第一步不是画表,而是把“要追什么、追到多细、每个环节留下什么数据”想清楚。追溯对象与数据需求分析的任务,就是把业务现场中真实存在的物品、事件和属性抽象成可建模的实体与字段。本节以乳制品、肉制品、果蔬三类典型品类为例,说明如何识别追溯单元、关键追溯事件与数据属性,并最终产出需求清单和数据字典初稿。
一、先确定追溯单元:追到哪一层决定表结构
追溯单元是追溯系统中可被唯一标识、可独立记录流转的最小对象。常见有三个层级:批次(同一生产条件下产出的一组产品,如某日某条灌装线的一批酸奶)、托盘/周转箱(物流集装单元,如一个码放 60 箱牛奶的托盘)、单品(最小销售包装,如一瓶 250mL 巴氏杀菌乳)。
三个层级并非任选其一,而是往往同时存在并需要建立关联。批次是质量责任的主体,托盘是仓储运输的操作单位,单品是消费者扫码查询的入口。设计时通常以批次为核心,通过“批次—托盘—单品”的关联表实现层级穿透。例如乳制品企业可规定:一个批次对应若干托盘,每个托盘贴 SSCC 物流码,单品包装喷印批次号与序列号,扫码即可由单品反查批次与原料奶来源。
不同品类的追溯粒度要求不同。肉制品因涉及检疫与分割,常需追到“胴体—分割批次—门店”链路;果蔬因易腐、来源分散,常以“采收批次+地块”为基本单元;乳制品则强调“原料奶收储批次—加工批次”的对应关系。粒度越细,标识与采集成本越高,需在召回精度与实施成本间权衡。
二、识别关键追溯事件:把流转过程拆成可记录节点
追溯事件是追溯单元在供应链上发生的、需要留痕的关键动作。典型事件包括生产(原料接收、投料、加工、包装)、仓储(入库、移库、出库)、运输(装车、在途、卸货)、销售(上架、售出)。每个事件都应记录“何时、何地、由谁、对哪个追溯单元、做了什么、结果如何”。
以巴氏杀菌乳为例,可拆出:原料奶接收(牧场、收储时间、酸度、菌落总数)→ 标准化与均质(配方批次)→ 巴氏杀菌(温度 72~75℃、时间 15s、杀菌记录)→ 灌装(线号、批次号)→ 冷藏入库(库温 2~6℃)→ 冷链运输(车厢温度曲线)→ 门店收货与销售。肉制品则增加检疫合格证、分割工序、速冻或冷藏节点;果蔬增加采收地块、农残检测、预冷与分级包装节点。
事件识别要避免两个极端:过粗则无法定位问题环节,过细则采集负担过重。实用做法是围绕“一旦出现质量问题,需要回答哪些问题”来倒推事件清单,例如“这批奶用的是哪个牧场的奶”“运输途中是否断链”“同批次还发往了哪些门店”。
三、数据属性:四类要素与质量指标
每个追溯事件至少要回答四个问题:时间(何时发生、持续多久)、地点(在哪个牧场、车间、库位、门店)、主体(谁操作、谁负责、哪辆车承运)、质量指标(当时的检测值或环境参数)。前三类构成追溯的骨架,质量指标则是判断“是否合格、是否断链”的依据。
质量指标要区分“检测型”和“过程型”。检测型如原料奶酸度(°T)、菌落总数(CFU/mL)、肉制品兽药残留、果蔬农残抑制率,通常有明确限值和判定结论;过程型如杀菌温度、冷藏库温、运输车厢温度,是连续或周期性采集的参数,需要记录时间序列或至少记录最大值、最小值与超限次数。设计字段时应保留“实测值+单位+判定+检测方法/设备”的组合,避免只存一个合格与否的布尔值,否则后续无法做趋势分析。
四、从需求清单到数据字典初稿
需求清单可按“对象—事件—属性—查询场景”四列组织。以乳制品为例,一行可写:对象=加工批次,事件=巴氏杀菌,属性=杀菌温度、保持时间、设备编号、操作人、开始与结束时间,查询场景=按批次查杀菌记录、按时间段查超限批次。肉制品可增加检疫证号、分割间温度;果蔬可增加地块编号、采收日期、预冷终温。
数据字典初稿则把清单落成字段级定义。以下为乳制品“加工批次”核心表的示例片段(字段与取值为教学示例,非实测数据):
字段名 含义 类型 必填 取值/说明
batch_id 加工批次号 VARCHAR(24) 是 如 YL20240518-A01
raw_batch_id 原料奶收储批次 VARCHAR(24) 是 关联原料接收记录
product_code 产品编码 VARCHAR(16) 是 对应品类规格
line_no 灌装线号 VARCHAR(8) 是 L1/L2/L3
pasteur_temp 杀菌温度(℃) DECIMAL(4,1) 是 72.0~75.0
pasteur_time 保持时间(s) INT 是 15
pack_start 灌装开始时间 DATETIME 是 ISO 8601
shelf_life_end 保质期截止 DATE 是 冷藏 7 天示例
qc_result 质量判定 VARCHAR(8) 是 合格/不合格/待检
编写字典时要同步明确主键与外键关系:批次号为主键,原料奶批次、托盘码、门店收货单号作为外键或关联表字段,保证正向(批次→流向哪些门店)与反向(单品→批次→原料奶)两个方向都能查询。字段命名保持全库统一,时间统一采用 ISO 8601 格式并注明时区,地点使用编码而非自由文本,质量指标必须带单位。
完成上述分析后,需求清单与数据字典初稿即构成后续概念模型(E-R 图)和逻辑表设计的直接输入。判断分析是否到位,可用三个问题自检:任一单品能否反查到原料批次与关键工序参数;任一批次能否正向列出全部流向;任一质量指标能否追溯到检测时间、设备与判定人。三者均可回答,说明追溯对象与数据需求已基本闭合。