2026/2/12 21:55:08
网站建设
项目流程
网站专业制作公司,用局域网建设网站,如何开发一个网站,项目可行性研究报告本文是《复杂电商业务梳理实战指南》的补充篇#xff0c;我们将深入解析除商品模块外的八大核心业务模块#xff0c;详细定义每个模块的业务实体、生命周期和关键状态节点。这是构建企业级数据仓库的核心元数据基础。 为什么需要清晰的业务实体定义#xff1f;
在数据仓库设…本文是《复杂电商业务梳理实战指南》的补充篇我们将深入解析除商品模块外的八大核心业务模块详细定义每个模块的业务实体、生命周期和关键状态节点。这是构建企业级数据仓库的核心元数据基础。为什么需要清晰的业务实体定义在数据仓库设计中业务实体Business Entity是数据模型的基石。每个实体对应业务世界中的一个事物而生命周期和状态节点则描述了这些事物如何随时间变化。清晰的实体定义带来三大价值统一语言业务、产品、技术团队对同一概念有相同理解指导建模实体对应维度表或事实表状态变化对应事实表支撑分析基于实体的状态变化构建完整的分析链路下面我们逐一解析九大模块。模块一商品与供应链中心业务实体SPUStandard Product Unit标准产品单元定义一组具有相同属性如品牌、型号、规格的商品集合代表一个产品示例iPhone 15不考虑颜色、存储容量SKUStock Keeping Unit库存保有单位定义具体到颜色、尺寸、配置等的最小库存单位是库存管理和交易的基础示例iPhone 15 黑色 256GB类目Category定义商品的分类体系通常是树状结构层级一级类目如数码、二级类目如手机、三级类目如智能手机品牌Brand定义商品的品牌信息属性品牌名称、Logo、品牌故事、所属公司供应商Supplier定义提供商品的供应商或生产商关系一个供应商可供应多个SPU一个SPU可由多个供应商供应采购订单Purchase Order定义向供应商采购商品的订单状态待审核、已审核、已下单、部分到货、已完成、已取消商品属性Product Attribute定义描述商品特征的信息分为关键属性和销售属性关键属性类目、品牌、型号等销售属性颜色、尺寸、容量等用于生成SKU生命周期以SKU为例商品开发市场调研 → SPU创建定义产品 → SKU生成确定销售属性 → 采购/生产 → 商品上架可销售 → 销售中可能有调价、促销 → 商品下架停止销售 → 清仓处理库存清理 → 商品淘汰删除或归档关键状态节点商品上下架状态ON_SALE在售可被用户搜索和购买OFF_SALE下架不可购买但已售订单需继续履约DELETED删除逻辑删除不可恢复价格变更记录销售价面向消费者的价格可能随时变动成本价采购或生产成本用于计算毛利价格保护降价时对近期购买用户补差价库存状态与库存中心联动IN_STOCK有库存库存数量大于0OUT_OF_STOCK缺货库存为0PRE_ORDER预售库存为0但可接受预定商品审核状态特别是平台模式PENDING_REVIEW待审核APPROVED审核通过REJECTED审核驳回商品评价状态评价分数根据用户评价计算评价数量总评价数好评率好评占比模块二库存与仓储中心业务实体库存记录Inventory Record定义特定SKU在特定仓库/位置的具体数量粒度(sku_id, warehouse_id, location_code, batch_no, quality_status)仓库Warehouse定义物理或逻辑的存储单元类型中心仓、区域仓、门店仓、前置仓、虚拟仓库存批次Stock Batch定义同一时间、同一供应商、同一质量状态入库的库存单元用途支持先进先出FIFO成本核算库存变更流水Inventory Change Log定义库存数量变动的明细记录关联与订单、采购、调拨等业务单据关联生命周期以库存记录为例库存创建采购入库/生产入库 → 库存锁定订单占用 → 库存扣减出库确认 → 库存释放订单取消/超时 → 库存盘点循环计数 → 库存调整盘盈盘亏 → 库存调拨移库 → 库存冻结质量问题 → 库存报废过期/损坏关键状态节点库存类型状态available_stock可售库存可被订单占用的库存reserved_stock预占库存已被订单锁定但未出库locked_stock锁定库存因活动/促销预留in_transit_stock在途库存采购在途/调拨在途damaged_stock残损库存不可销售库存变动原因-- 示例库存变动类型枚举 ENUM ( PURCHASE_IN, -- 采购入库 SALES_OUT, -- 销售出库 RETURN_IN, -- 退货入库 TRANSFER_OUT, -- 调拨出库 TRANSFER_IN, -- 调拨入库 COUNT_ADJUST, -- 盘点调整 DAMAGE_DEDUCT, -- 报损扣除 PROMOTION_RESERVE -- 活动预留 )库存健康度指标库存天数 当前库存 / 日均销量周转率 销售成本 / 平均库存缺货率 缺货SKU数 / 总SKU数模块三营销与促销中心业务实体营销活动Marketing Campaign定义有明确目标、预算、时间周期的营销计划示例618大促、双11、品牌日促销规则Promotion Rule定义具体的优惠计算规则类型满减、折扣、直降、N件N折、赠品优惠券模板Coupon Template定义优惠券的创建模板定义规则和发放条件属性券类型、面值、使用门槛、适用商品/店铺用户优惠券User Coupon定义发放给具体用户的优惠券实例状态未领取、已领取未使用、已使用、已过期生命周期以营销活动为例活动策划 → 活动创建配置规则/预算 → 活动审批 → 活动预热 → 活动上线用户可见 → 活动进行实时监控调整 → 活动结束 → 活动复盘 → 活动归档关键状态节点活动状态机优惠券状态流CREATED已创建→ISSUED已发放→RECEIVED已领取→LOCKED使用中锁定→USED已使用→EXPIRED已过期预算监控节点预警线预算使用70%发送预警熔断线预算使用95%自动停止发放新优惠ROI监控实时计算投入产出比低于阈值调整策略模块四用户与会员中心业务实体用户账户User Account定义用户在平台的唯一身份标识属性基础信息、认证状态、安全设置会员身份Member Identity定义用户在会员体系中的等级和权益体系免费会员、付费会员如Prime/PLUS用户标签User Tag定义对用户特征的描述性标记分类基础标签、行为标签、偏好标签、预测标签用户权益User Benefit定义用户可享受的具体权益实例示例运费券、折扣券、专属客服、退货免审生命周期以用户账户为例匿名访问 → 注册创建账户 → 实名认证 → 首单转化 → 活跃成长复购/互动 → 沉默预警N天未访问 → 流失风险N天未购买 → 流失确认流失 → 召回成功/流失挽回关键状态节点用户生命周期阶段-- 用户生命周期阶段定义 CASE WHEN reg_days 7 AND order_count 0 THEN 新用户-未转化 WHEN reg_days 30 AND order_count 1 THEN 新用户-已转化 WHEN last_order_days 30 AND order_count 3 THEN 活跃用户 WHEN last_visit_days 7 AND last_order_days 30 THEN 低活跃用户 WHEN last_visit_days 7 AND last_visit_days 30 THEN 沉默预警 WHEN last_visit_days 30 AND last_order_days 90 THEN 流失用户 ELSE 其他 END AS user_lifecycle_stage会员等级变迁升降级规则基于成长值/消费额/活跃度保级机制周期内未达到保级标准则降级升级礼遇升级时赠送权益包标签更新策略实时标签如is_online、current_cart_valueT1标签如yesterday_purchase_amount批量标签如user_lifetime_value每月更新模块五交易与订单中心业务实体订单主表Order Master定义订单的聚合信息一个订单主表对应多个订单明细关键字段订单号、用户ID、订单金额、支付状态订单明细Order Item定义订单中每个商品的具体信息关键字段商品ID、单价、数量、优惠分摊购物车Shopping Cart定义用户暂存的意向商品集合特点临时性可跨会话保存订单操作日志Order Operation Log定义订单状态变化的完整审计追踪生命周期以订单主表为例订单创建待支付 → 订单支付支付中 → 支付成功待发货 → 订单审核风控审核 → 订单下发仓库待拣货 → 订单发货已发货 → 物流在途 → 用户签收待确认 → 订单完成已确认 → 订单关闭取消/退款/售后完结关键状态节点订单状态机简化版-- 订单核心状态及允许的转换 STATE_MACHINE order_status { INITIAL: PENDING_PAYMENT, STATES: [ PENDING_PAYMENT, -- 待支付 PAYMENT_PROCESSING,-- 支付中 PAID, -- 已支付 PENDING_REVIEW, -- 待审核风控 REVIEW_REJECTED, -- 审核拒绝 PENDING_SHIPMENT, -- 待发货 SHIPPED, -- 已发货 DELIVERED, -- 已送达 CONFIRMED, -- 已确认收货 COMPLETED, -- 已完成 CANCELLED, -- 已取消 REFUNDING, -- 退款中 REFUNDED, -- 已退款 CLOSED -- 已关闭 ], TRANSITIONS: [ PENDING_PAYMENT - PAYMENT_PROCESSING, PAYMENT_PROCESSING - PAID, PAID - PENDING_REVIEW, PENDING_REVIEW - PENDING_SHIPMENT, // ... 更多转换规则 ] }支付超时节点创建后30分钟未支付发送支付提醒创建后45分钟未支付系统自动取消订单支付中15分钟支付渠道未返回结果触发查询逆向流程节点申请退款用户提交申请商家审核同意/拒绝24小时内退货物流用户寄回商品仓库收货验货确认商品状态退款执行原路退回或退余额模块六支付与清结算中心业务实体支付流水Payment Flow定义每一笔支付请求的完整记录关联订单号、支付方式、支付渠道退款流水Refund Flow定义每一笔退款请求的完整记录关联原支付流水、退款原因、退款状态结算单Settlement Order定义与商家、服务商进行资金结算的凭证周期T1、T7、按月结算等对账批次Reconciliation Batch定义一次对账任务的执行记录结果平账、差异、差异明细生命周期以支付流水为例支付请求生成 → 支付渠道调用 → 渠道处理中 → 支付结果返回 → 支付成功异步通知 → 支付结果确认 → 支付完成 → 后续可能退款 → 支付最终状态关键状态节点支付状态流INIT初始→PROCESSING处理中→SUCCESS成功/FAILED失败→REFUND_PARTIAL部分退款→REFUND_FULL全额退款→CLOSED关闭对账关键节点-- 对账状态机 WITH reconciliation_states AS ( SELECT batch_id, CASE WHEN total_count matched_count THEN BALANCED WHEN total_count matched_count AND diff_amount 0 THEN COUNT_MISMATCH WHEN diff_amount ! 0 THEN AMOUNT_MISMATCH WHEN channel_file_missing 1 THEN FILE_MISSING ELSE PROCESSING END AS reconciliation_status FROM recon_batch )结算周期节点结算单生成周期结束后自动生成商家确认商家核对结算单财务审核财务团队审核通过打款执行实际资金划转打款结果成功/失败失败需重试模块七履约与物流中心业务实体物流订单Shipping Order定义一个包裹的完整物流信息关联订单ID、仓库ID、物流公司运费模板Freight Template定义计算运费的规则集合类型按重量、按件数、按地区、包邮物流轨迹Tracking Info定义包裹运输过程中的状态更新来源物流公司API推送配送区域Delivery Zone定义可配送的地理范围层级国家→省→市→区→街道生命周期以物流订单为例物流单创建 → 电子面单生成 → 仓库交接 → 物流公司揽收 → 运输中多级转运 → 到达目的地网点 → 开始配送 → 配送中 → 签收成功/失败 → 完成/异常处理关键状态节点物流状态枚举-- 物流状态完整枚举 ENUM ( CREATED, -- 已创建 LABEL_GENERATED, -- 面单已生成 PICKED_UP, -- 已揽收 IN_TRANSIT, -- 运输中 ARRIVED_HUB, -- 到达转运中心 DEPARTED_HUB, -- 离开转运中心 OUT_FOR_DELIVERY, -- 派送中 DELIVERY_ATTEMPTED,-- 派送尝试无人签收 DELIVERED, -- 已签收 FAILED, -- 派送失败 RETURN_TO_SENDER, -- 退回发货人 EXCEPTION -- 异常 )时效监控节点承诺时效下单时承诺的送达时间出库时效支付成功到仓库出库的时间在途时效出库到签收的时间超时预警预计超时前X小时预警异常处理流程地址错误联系用户确认更新地址无人签收多次尝试后转自提点包裹破损拍照取证联系售后物流停滞主动联系物流公司查询模块八客服与售后中心业务实体售后单After-sales Order定义用户发起的退款、退货、换货申请类型仅退款、退货退款、换货、补寄客服工单Customer Service Ticket定义用户咨询或投诉的处理记录渠道在线客服、电话、邮件、社交媒体服务评价Service Review定义用户对客服服务的评分和评价对象客服专员、整体服务纠纷案件Dispute Case定义需要平台介入仲裁的买卖双方争议生命周期以售后单为例售后申请提交 → 客服初审 → 商家审核平台模式 → 审核通过 → 用户寄回退货需 → 仓库收货验货 → 质检通过/不通过 → 退款/换货执行 → 售后完成关键状态节点售后状态机客服工单SLA节点首次响应时间用户提交后X分钟内客服响应解决时限不同优先级工单的解决时间要求升级机制超时未解决自动升级到上级满意度评价体系评价触发工单关闭后24小时内邀请评价评价维度服务态度、解决问题能力、响应速度负面评价处理自动创建跟进工单模块九内容与社区中心业务实体内容Content定义用户或官方创建的可消费内容形式图文、短视频、直播、问答、评测互动记录Interaction Record定义用户对内容的互动行为类型点赞、收藏、评论、分享、打赏关注关系Follow Relationship定义用户之间的关注/粉丝关系方向单向关注、双向关注内容合集Content Collection定义内容的聚合组织示例专题、话题、专辑、 playlist生命周期以UGC内容为例内容创作 → 内容提交 → 自动审核机审 → 人工审核需要时 → 审核通过发布/审核拒绝 → 内容展示 → 用户互动 → 内容传播 → 内容下沉时间衰减 → 内容归档关键状态节点内容审核状态DRAFT草稿→SUBMITTED已提交→MACHINE_REVIEW_PASS机审通过→MACHINE_REVIEW_REJECT机审拒绝→MANUAL_REVIEW_PENDING待人工审核→PUBLISHED已发布→DELISTED已下架→DELETED已删除内容质量评分-- 内容质量评分模型示例 CREATE FUNCTION calc_content_score( like_count INT, comment_count INT, share_count INT, avg_view_time FLOAT, creator_credit FLOAT ) RETURNS FLOAT AS $$ BEGIN RETURN like_count * 0.3 comment_count * 0.4 share_count * 0.5 avg_view_time * 0.2 creator_credit * 0.6; END; $$ LANGUAGE plpgsql;推荐权重因子时间衰减新内容权重高随时间衰减互动热度近期点赞、评论、分享加权创作者等级优质创作者内容优先个性化匹配用户兴趣标签匹配度总结九大模块数据建模指导基于以上梳理我们可以为每个模块设计核心数据模型维度表Dimension Tables-- 示例商品维度表 CREATE TABLE dim_product ( product_id BIGINT PRIMARY KEY, spu_id BIGINT, sku_code VARCHAR(50), product_name VARCHAR(200), category_id INT, brand_id INT, -- 更多属性... valid_from DATE, valid_to DATE, is_current BOOLEAN ); -- 类似的维度表还有 -- dim_user用户维度 -- dim_warehouse仓库维度 -- dim_promotion促销维度 -- dim_logistics物流公司维度事实表Fact Tables-- 示例订单事实表交易过程 CREATE TABLE fact_order_transaction ( fact_id BIGINT, order_id BIGINT, user_id BIGINT, product_id BIGINT, order_time TIMESTAMP, payment_time TIMESTAMP, ship_time TIMESTAMP, confirm_time TIMESTAMP, order_amount DECIMAL(12,2), -- 更多度量... dw_insert_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) PARTITION BY DATE(order_time); -- 类似的事实表还有 -- fact_inventory_change库存变动 -- fact_promotion_usage促销使用 -- fact_user_behavior用户行为 -- fact_customer_service客服服务状态快照表Status Snapshot-- 示例每日用户状态快照 CREATE TABLE snapshot_user_status_daily ( dt DATE, user_id BIGINT, is_active BOOLEAN, -- 当日是否活跃 is_purchaser BOOLEAN, -- 当日是否购买 member_level VARCHAR(20), -- 当日会员等级 total_order_count INT, -- 累计订单数 total_order_amount DECIMAL(12,2), -- 累计消费金额 PRIMARY KEY (dt, user_id) ) PARTITION BY dt;最佳实践建议统一状态编码为每个模块的状态建立公司级枚举字典确保跨系统一致性历史状态可查对关键实体采用SCD缓慢变化维类型2保留历史状态事件驱动设计将状态变更作为事件发布支持实时监控和异步处理生命周期可视化为每个核心实体创建状态流转图便于团队理解状态变更审计记录所有状态变更的操作人、时间、原因满足合规要求通过本文的梳理相信你应该已经对电商九大核心模块的业务实体有了系统性的理解。在实际数据仓库设计中这些实体和状态将直接转化为你的维度表和事实表成为支撑整个数据体系的基础。记住好的数据模型不是凭空设计的而是对业务现实世界的精确映射和适度抽象。作者电商数据架构师版权声明原创内容转载请注明出处讨论交流欢迎在评论区分享你的电商数据建模经验