业务挑战
在美团,基于 MySQL 构建的传统关系型数据库服务已经难以支撑公司业务的爆发式增长,促使美团探索更合理的数据存储方案和实践新的运维方式。随着近年来分布式数据库大放异彩,美团 DBA 团队联合架构存储团队,于 2018 年初启动了分布式数据库项目。
在对比了大量方案后,考虑到技术架构的前瞻性、发展潜力、社区活跃度、以及服务本身与 MySQL 的兼容性,美团最终决定选择基于 TiDB 数据库进行二次开发的整体方案,并与 PingCAP 官方和开源社区进行深入合作的开发模式。
解决方案
美团业务线众多、业务体量大,业务对在线存储的服务质量要求也非常高。根据业务特点及重要程度,美团逐步推进上线了数百个 TiDB 集群,1700 多个物理节点。单集群最大 40 多个节点,单表记录最大上千亿条。目前均已稳定服务于配送、出行、闪付、酒旅等业务。
过去在使用 MySQL 时,为了应对快速上涨的数据容量和性能瓶颈,美团只能分库分表。但分库分表带来了成本指数级增长,计算资源不足等问题。特别是在互联网高速发展的时代,一旦业务爆发式增长,分库分表无法做到及时应对。
TiDB 采用了计算存储分离的分布式架构,在存储方面,TiDB 内存主要负责 SQL 解析以及 SQL 引擎的执行,PD 主要提供元数据信息及分布式数据库的时间戳功能,TiKV 则提供无限扩展的分布式存储。TiDB 与 TiKV 集群之间可以互相独立地进行扩缩容,完全不影响其他组件。同时,TiDB 还通过 Multi-Raft 协议提供了金融级数据强一致特性,解决了 MySQL 无法保证事务整体一致性的问题。
此外,随着 5G、物联网的兴起,数据量爆炸式增长,美团有很多场景要求在同一个系统里同时实现 OLTP 和 OLAP 的 T+0 分析需求,如大促活动中针对优惠券发放结果进行计算评估活动效果,仅仅依赖 T+1 的报表是很难实现的。TiDB 的 HTAP 可以帮助美团在线上传数据,直接提供给市场进行计算分析,降低了试错成本及营销成本。
业务收益
客户简介
行业:生活服务
美团是中国领先的生活服务电子商务平台,服务涵盖餐饮、外卖、生鲜零售、打车、共享单车、酒店旅游、电影、休闲娱乐等 200 多个品类,业务覆盖全国 2800 个县区市。