3、需求预测数据模型:预测数据结构与字段规范
需求预测数据模型是供应链计划系统的核心数据资产,它定义了预测数据在系统中的存储结构、维度关系与字段标准。本章将深入解析预测数据的三维结构(时间序列、SKU层级、地点维度),并建立完整的数据字典与字段规范,为后续的接口调试与数据传输奠定数据基础。
3.1 预测数据的三维核心结构
需求预测数据在供应链计划系统中通常采用三维数据模型进行组织,三个核心维度分别是:时间序列(Time Series)、SKU层级(SKU Hierarchy)和地点维度(Location Dimension)。这三个维度共同构成了预测数据的立体空间,每一个预测值都可以通过这三个维度的坐标唯一确定。
核心概念: 预测数据的三维模型确保了数据的一致性与可追溯性。任何一次预测调整,都必须明确是在哪个时间点、针对哪个SKU、在哪个地点发生的。
3.2 时间序列维度详解
时间序列是预测数据中最基础的维度,它定义了预测值在时间轴上的位置与粒度。在供应链计划系统中,时间序列维度需要明确以下关键属性:
| 属性名称 | 字段标识 | 数据类型 | 说明 |
|---|---|---|---|
| 预测周期 | forecast_period | DATE | 预测值对应的具体日期或周期起始日 |
| 时间粒度 | time_granularity | STRING | 枚举值:DAY / WEEK / MONTH / QUARTER |
| 预测版本 | forecast_version | STRING | 标识预测的生成批次,如 "2025-03-01-V1" |
| 时间偏移量 | time_offset | INT | 相对于基准日期的偏移天数/周数/月数 |
实践建议: 在接口设计中,时间序列字段建议统一使用 ISO 8601 格式(YYYY-MM-DD)进行传输,避免因日期格式不一致导致的数据解析错误。
3.3 SKU层级维度详解
SKU层级维度定义了预测对象在产品结构中的位置。供应链计划系统通常支持多级SKU聚合与下钻,常见的SKU层级包括:
- 产品族(Product Family): 最高层级,如"饮料类"
- 产品类别(Product Category): 中间层级,如"碳酸饮料"
- SKU(Stock Keeping Unit): 标准库存单位,如"可乐330ml罐装"
- SKU变体(SKU Variant): 最细粒度,如"可乐330ml罐装-促销装"
| 层级名称 | 字段标识 | 示例值 | 数据长度 |
|---|---|---|---|
| 产品族 | product_family | BEV | VARCHAR(20) |
| 产品类别 | product_category | CARBONATED | VARCHAR(30) |
| SKU | sku_code | COLA-330-CAN | VARCHAR(50) |
| SKU变体 | sku_variant | COLA-330-CAN-PROMO | VARCHAR(60) |
3.4 地点维度详解
地点维度定义了预测值在供应链网络中的物理位置。根据企业的供应链布局,地点维度通常包含以下层级:
- 区域(Region): 地理大区,如"华东区"
- 配送中心(Distribution Center): 中央仓库,如"上海DC"
- 仓库(Warehouse): 本地仓库,如"上海浦东仓"
- 门店(Store): 终端零售点,如"上海南京路店"
注意: 地点维度的层级深度直接影响预测数据的存储量与查询性能。建议在系统设计时,根据业务需求合理设置地点层级,避免过度细化导致数据膨胀。
3.5 数据字典与字段规范
数据字典是预测数据模型的标准化文档,它定义了所有字段的名称、类型、长度、约束与业务含义。以下是需求预测数据模型的核心数据字典:
| 字段名称 | 字段标识 | 数据类型 | 长度 | 主键 | 必填 | 业务说明 |
|---|---|---|---|---|---|---|
| 预测ID | forecast_id | BIGINT | 20 | 是 | 是 | 全局唯一预测记录标识 |
| SKU代码 | sku_code | VARCHAR | 50 | 是 | 是 | 产品SKU唯一编码 |
| 地点代码 | location_code | VARCHAR | 30 | 是 | 是 | 仓库或门店唯一编码 |
| 预测日期 | forecast_date | DATE | - | 是 | 是 | 预测值对应的日期 |
| 预测数量 | forecast_qty | DECIMAL | 18,2 | 否 | 是 | 预测的需求数量 |
| 预测单位 | forecast_uom | VARCHAR | 10 | 否 | 是 | 计量单位,如PCS、KG、L |
| 预测版本 | forecast_version | VARCHAR | 30 | 否 | 是 | 预测数据版本标识 |
| 创建时间 | created_at | DATETIME | - | 否 | 是 | 记录创建时间戳 |
| 更新时间 | updated_at | DATETIME | - | 否 | 是 | 记录最后更新时间戳 |
3.6 字段规范与约束
为确保数据质量与接口兼容性,所有预测数据字段必须遵循以下规范:
- 命名规范: 字段标识统一使用小写字母与下划线(snake_case),禁止使用空格或特殊字符
- 编码规范: SKU代码与地点代码必须使用统一的编码体系,禁止混用不同编码规则
- 精度规范: 预测数量字段统一保留两位小数,单位字段必须使用标准计量单位代码
- 版本规范: 预测版本号格式为 "YYYY-MM-DD-Vn",其中 n 为当日版本序号
- 时间规范: 所有时间字段统一使用 UTC 时间,日期字段不包含时间部分
3.7 数据模型示例
以下是一个符合上述规范的需求预测数据JSON示例,展示了完整的数据结构:
{
"forecast_id": 202503010001,
"sku_code": "COLA-330-CAN",
"location_code": "DC-SH-PUDONG",
"forecast_date": "2025-03-15",
"forecast_qty": 15000.00,
"forecast_uom": "PCS",
"forecast_version": "2025-03-01-V1",
"product_family": "BEV",
"product_category": "CARBONATED",
"region": "EAST_CHINA",
"time_granularity": "DAY",
"created_at": "2025-03-01T08:00:00Z",
"updated_at": "2025-03-01T08:00:00Z"
}
关键要点: 上述示例中的字段命名、数据类型、编码规则均严格遵循数据字典规范。在实际接口调试中,建议使用此结构作为数据交换的标准模板,确保上下游系统之间的数据一致性。