在电商平台、SaaS多租户系统中,订单数据作为核心数据之一,承载了关键的运营指标,如销售额、商品售罄率、订单转化等。随着数据量的持续增长,如何在大数据量条件下快速、稳定地获取统计信息,成为系统设计的重点之一。
本文将从查询目标分析入手,结合数据库设计优化与典型查询模式,给出一套兼顾实时性、可维护性与可扩展性的查询解决方案。
一、典型查询目标
我们以“订单分析”为目标,划分以下两个典型业务场景:
1. 销售情况统计(以天为粒度)
查询某时间区间内,系统/店铺的销售数据:
查询维度:店铺、时间(日、周、月)
指标字段:订单数、销售额(pay_amount)、成交用户数、商品总件数等
2. 售罄率统计(商品维度)
售罄率 = 已售数量 / 上架库存数量:
查询维度:商品、店铺
指标字段:库存数量、订单销售数量、售罄率
二、数据结构与索引设计建议
订单表(bs_order
)
字段 | 类型 | 说明 |
---|---|---|
id | BIGINT | 主键 |
store_id | BIGINT |