2020 年,海底捞全面实现“云上捞”,将所有核心业务系统上云,全面推进企业数字化进程。而随着海底捞业务的不断增长,加上数智化转型构建全新的线上智慧服务,原有 IT 系统架构已经逐渐无法有效“驾驭”海量数据与突发流量洪峰,亟需更强有力的数据库进行底层支撑。
每年七夕、双旦,都是海底捞最繁忙的时候。节日期间,不断涌入的顾客、高频的点餐需求、大量的菜品选配……各个环节产生的数据如潮水般涌来,极大地增加了数据库的运行负荷。海底捞原有的会员系统面临非常大的挑战,一旦出现故障将会严重影响门店会员的就餐体验,甚至发生过高峰期因数据库缓慢导致业务受到影响的情况。
这种潜在风险的问题根源在于数据库。海底捞原有数据库方案采用传统分库分表架构,在扩展性和稳定性上遇到瓶颈,难以应对数据井喷情况。OB Cloud 是 OceanBase 的云数据库产品,具备租户级、机器规格级、机器数量级的多级弹性伸缩能力,业务可以按需调整资源,数据库内部的均衡自动进行且业务无感。这就能够彻底解决海底捞对数据库扩展性、服务连续性的核心诉求。数据洪峰带来的压力也就迎刃而解。
2022 年 6 月,基于 OB Cloud 海底捞实现了新一代分布式会员系统升级。在当年的七夕节,从线上排号到点餐就餐,海底捞秒杀高峰稳定度过,用户体验如丝般顺滑。这也是海底捞多年来第一次在流量最高的七夕节中所有系统零故障。
与此同时,新的会员系统的智慧化程度更高,每一位会员在打开海底捞 APP 时看到的都是定制化内容,菜品推荐、促销信息、达人分享等内容都贴合个人兴趣,真正让顾客感觉海底捞的服务像老朋友一般。而这背后也是数据库强大的实时分析能力在进行支撑,搭载 OB Cloud 的会员系统,实时分析算力提升了 30%。
在会员系统稳定运行 1 年后,今年海底捞与 OceanBase 的合作又拓展到另一个重要板块——进销存系统。进销存系统又称进货、销售和库存管理系统,用于管理企业库存流程,主要通过跟踪物料销售和库存的实时变化,控制库存成本,提高服务质量和销售效率。
这对像海底捞这类餐饮零售企业的重要性不言而喻,以 2021 年上半年为例,海底捞仅在瓜果蔬肉类的采购总金额就超过了 28 亿元,覆盖新疆、贵州、云南等 29 个省市,数据体量异常巨大,丝滑的数据处理关系着食材品质和及时供应。但随着业务快速增长,使用传统数据库的进销存系统却面临越来越多的挑战。
第一, 数据一致性和业务连续性亟需提升
进销存系统的数据一致性和连续性非常关键。例如,门店销售单中的物料变动必须与库存模块的数量保持一致,如果不一致可能会导致产品过度销售或缺货。再例如,订单状态不明确,会导致客户服务不到位,影响客户满意度等。
传统数据库理论上存在主备切换时,丢数据和业务影响时间过长的弊病,实际运行过程中也出现过因主备切换异常,导致业务长时间受损的情况。
第二, 海量数据存储难运维,单行并发能力弱
进销存系统对接 POS 系统的所有销售订单,加之处理物料出库的全流程,例如销售、领用、废弃、调拨等,数据量处于各业务系统之首,个别流水表已达百亿级别。应对百亿大表的存储和 DDL 变更,以及单行高并发诉求,传统数据库力不从心。
如此规模的数据量已经逼近原数据库存储空间的上限。数据存储为一方面,更难应对的是如此大表的 DDL 变更,每一次变更可谓惊心动魄。不仅如此,库存场景的单行并发也面临极大挑战,由于个别热销商品库存变化非常快,单条数据需支持秒级 4000 次的最高变动频次,必须能做到实时分析汇总商品数量变化情况,以及时备货供应。
第三, 数据分析的实时性难以保证
进销存系统的报表和分析模块,负责对数据进行深入查询与分析,生成各种财务和业务报告,帮助门店理解业务情况,以及时调整经营策略,做出最符合市场变化的决策。
在数据库升级前,数据分析与在线业务使用异构数据库隔离,在线业务使用 MySQL 库,分析使用实时数仓,数据同步依赖 DTS。这就导致架构复杂运维难度高,海底捞需要维护两种异构数据库和同步链路,存在实时性风险,如果同步链路异常或者延迟,下游系统读到的统计数据就会不准确。
得益于双方在会员等系统的成功合作和出色体验,海底捞在数据量处于各业务系统之首的进销存系统上,同样坚定选择使用 OceanBase 的公有云产品 OB Cloud 进行数据库升级。
OceanBase 自研的一体化架构,兼顾分布式架构的扩展性与集中式架构的性能优势,用一套引擎同时支持 TP 和 AP 的混合负载。在单行高并发和复杂分析 AP 场景下,OceanBase 相比集中式数据库如 MySQL,性能提升数倍。升级至 OB Cloud 后,海底捞进销存系统面临的多重挑战迎刃而解。
第一、 基于 Paxos 协议的强一致特性,保障每一笔物料数据不丢失,单节点宕机后 30 秒内快速完成选举,服务连续性大幅提升。
第二、 基于分区表的高可扩展性,通过简单的加节点形式即可提升存储容量,千亿级别的大表轻松存储,不再受限于单台机器的容量瓶颈。秒级无感 DDL 使得 DDL 运维难度不再区分于表的数据量,分区表和无感 DDL 解决了海量数据的存储与难运维问题。OceanBase 的提前解行锁(ELR)能力不改变事务应答机制,通过提前释放行锁机制提升单行并发度,发生节点宕机重启、Leader 切换仍然可以保证事务一致性,成为海底捞解决单行高并发痛点的最佳拍档。
第三、 基于全自研的 HTAP 分布式计算引擎,并结合多副本能力,一份数据上既能支持在线交易,又能支持复杂分析能力,让海底捞的架构得到简化的同时,成本也大幅下降。
随着海底捞又一关键业务系统进销存搭载 OB Cloud 全新出发,加上会员系统等,海底捞核心业务系统实现了分布式架构的全面升级,在获得稳定性、高扩展性、简化架构的同时,业务发展也不再受限于基础数据服务。
数套承载海底捞海量数据的核心业务系统上线 OB Cloud,也让海底捞的系统实时分析算力提升 45%,数据库整体成本节省 50%,显著降本增效的同时,实现更从容丝滑地应对流量洪峰。
未来,海底捞将继续与 OB Cloud 在云场景中合作,更多业务系统会跟进升级。相信海底捞与 OB Cloud 的组合,将为更多美食爱好者带去更新鲜可口的食材,让每一笔「热辣」都算数。