营销数据模型依赖的营销和交易以及权益投放最常用的表
营销圈品表
营销圈品说明
一个商品从被设置优惠到交易享受优惠主要分为以下两个阶段:
设置端:商家首先①创建营销活动;②创建券模板(同时创建 UMP 券模板)③在商家选择完圈品规则和元素之后,根据商家选择的规则生成 ump 分组表达式 group_express;④最后将元素按照对应的对接参数写入 ump 分组元素表中。

C 端交易链路:UMP 交易链路传 sellerId、商品 itemId、门店 poiId、类目categoryId 等参数给到 ump,判断下单商品是否能享受优惠,下图是 UMP 优惠计算流程。

圈品逻辑看的是 market_detail 表或 market_coupon_detail 表的 participate_type
取值映射:
● 1: ITEM : participate_id 值是 itemId, 对应的商品能使用
● 3: SELLER : participate_id 值是 sellerId, 该 sellerId 下的商品能使用, 注意seller_id=9223372036854775807 表示平台
● 4: SKU : participate_id 值是 skuId, 对应的商品能使用, 此时 ext_participate_id 是 item_id
● 9: RANGE_GROUP : 这个时候要去查 marketing_range_element 表, participate_id=该表 group_id
● 10: PAYMENT_CHANNEL : participate_id 值对应的支付渠道能使用
● 11: PAYMENT_METHOD : participate_id 值对应的支付方式能使 用 marketing_range_element 的信息,看 participate_type 列,取值的映射关系:
● 3:SELLER 指定卖家 : participate_id 值是 sellerId, 该 sellerId 下的商品能使用, 注意 seller_id=9223372036854775807 表示平台
● 4:SKU 指定商品 skuId : participate_id 值是 skuId, 对应的商品能使用
● 5:CATEGORY 指定类目 : participate_id 值是目录, 该目录树下对应的商品能使用
● 10:SELLER_ITEM_TAG 指定 skuTag : participate_id 值是 skuTag, 对应的商品能使用
● 14:PROMOTION_CODE 指定优惠码 : participate_id 是优惠码, 跟 sellerId 绑定
● 16:BRAND 指定品牌 : participate_id 是 Brand ID, 对应的商品能使用
● 17:BU 指定 BU : participate_id 是 BU ID,对应的商品能使用 另外还有黑名单的信息存储在 marketing_detail_extension, 用 seller_id, activity_id 关联, 然后分析 black_list 信息, 如果圈品、黑名单都配置了,黑名单优先禁止了商品享用优惠 离线时 从 market_detail 关联marketing_range_element 比较的简单,只需要 participate_id=group_id; 但线上数据库是基于 seller_id 分表,所以只用 market_detail.participate_id 找不到具体的分库,需要加上 market_detail.seller_id;但还有一个特殊情况:平台小二给特定卖家创建活动,此时 market_detail.seller_id != marketing_range_element.seller_id,真实的 seller_id 在 feature.lzd_sellerIDs,所以用:market_detail.participate_id = participate_id=group_id and
market_detail.feature.lzd_sellerIDs = marketing_range_element.seller_id
营销系统是下单链路,是用商家、商品、买家的信息来查找优惠活动,并不是用优惠 活动查找商品

交易表
交易域作为买家链路的核心域,与上下游的系统依赖多、透传数据多,同时订单数据又作为下游支付、逆向、履约和结算的依据,所以保障交易域资金安全至关重要。
1. 正向订单
一个订单在创建的时候, 一般会有以下步骤:
1.查询库存
2.价格计算: 优惠扣减,服务费,税费
3.校验: 优惠限购校验, 重复下单校验,订单创建最终校验, 安全校验
4.确认配送方式
5.订单超时设置,包含未支付、发货、确认收货及相关的提醒
6.下单完成
订单创建时间:
订单创建时间, 就是订单完成上述的订单创建步骤, 订单数据落到数据库里的时间。
订单履约时间:
什么是履约?当订单创建完成之后, 用户一般会有两种选择, 一种是在线支付, 一种是货到付款。
如果用户支付完成了, 那么这个订单就生效了, 如果用户选择货到付款, 那么不需要先付款,货品就可以开始运输。
所以履约就是当用户提交的订单已经生效, 平台开始履行将货品送达到客户手上的合约的过程。
履约时间, 或者说履约开始时间, 指的就是订单正式生效的时间。
2. 逆向订单
订单逆向流程,是为了解决在订单流程中出现的退货退款的业务流程, 包括 换货,退货,退款,取消。
发起逆向的对象可能是买家,卖家, 也可以是平台发起的。
常见的有如下情况:
用户改变主意了, 或者想修改订单信息
订单送货时间过长
货品库存不足, 无法开始履约
商品质量问题, 货物送达的时候已经破损,或者不符合客户预期, 甚至货品丢失
商品违规,订单违规等
正向指的是货品到客户, 逆向指的是货品回到仓库;
GMV
什么是 GMV,GMV 的全称是 Gross Merchandise Value , 也就是商品价值, 常用于衡量一个电商平台一段时间内的交易活跃程度. GMV 越大,说明该平台的市场越大, 盈利能力越强
GMV 的计算逻辑:
商品价值(GMV)主要由几部分构成:
买家支付的商品金额 + 买家支付的运费 + 平台支付的商品补贴 + 平台支付的运费补贴
不计入 GMV 的订单
以下为不计入 GMV 的订单对应的场景:
1. 订单未开始履约
没有开始履约的订单, 我们认为是一个无效的订单
2. 礼品卡订单
用户购买礼品卡的时候, 真正的商品交易还没产生, 我们会在用户用礼品卡购买商品的时候, 才计算 GMV, 避免一个 GMV 计算两次
3. One Dollar Game/一元购
由于一元购的单量较大, 金额较小, 但是会影响分析师观测平台的订单量,平均订单金额等指标, 所以会剔除掉
4. 大订单/B2B(Business to Business)
对于特别大的订单, 我们也会进行剔除, 因为其不确定性会导致各类指标突增或突减
下列订单会被剔除:
用户是公司采购用户, 且一次下单超过 10000 USD
用户是公司采购用户, 一天之内购买某一个 sku 的数量超过 5 个, 包含该 sku 的订单都是 B2B 订单
用户一天之内购买某一个 sku 的数量超过 100 个, 包含该 sku 的订单都是 B2B 订单
用户一天之内购买某一个 sku 的数量超过 6 个, 金额超过 10000 USD, 包含该 sku 的订单都是 B2B 订单
用户一次下单金额超过 20000 USD
这些规则在某种程度上也可以减少刷单对数据统计的影响
5. 测试订单
有一些订单是用于测试平台功能的,买家是测试账号,卖家是测试账号,SKU 是测试用的,手动写入的测试订单
6. POD(Pay On Delivery)/PayLater
目前有部分订单是纯粹的一个支付功能, 没有涉及到商品交易。例如分期付款, 用户到了付款日需要支付之前的账单。由于之前的商品交易的 GMV 已经被统计了, 所以支付贷款的这个订单我们不计入 GMV 1 为 is_fulfilled,2~ 6 为 is_revenue
交易域核心表
订单子表
订单表
营销领取表
营销预算规则表
营销预算实例表
权益投放
核心表:权益领取表