文档

电商行业:从4小时到15分钟,一次分布式数据库的丝滑体验

更新时间:

Highlight

  • 集分一体,性能提升600%。

  • 业务代码零修改。

  • 3AZ部署,提升业务的连续性。

  • 热力分区图,降低运维门槛。

客户简介

识货是虎扑旗下的电商导购平台,致力于为广大用户提供专业的网购决策指导,同时带来及时的运动、潮流、生活、时尚等网购资讯。近年来,电商平台商品信息持续增加,海量商品导致消费者发现和找到商品的效率低下,识货从用户视角出发,不断整合行业渠道供给,降低发现和筛选的成本,帮助用户更高效地购买到最具性价比的产品。识货的活跃用户数突破5000万,GMV已突破100亿,识货在电商导购市场具有广阔的发展前景。

业务挑战

  • 大促期间,数据加工性能难以保证。

    现在各渠道平台大促期间满减、折扣越来越多样,越来越复杂。商品价格变更瞬息万变,为了在第十一时间向消费者推送最及时的价格信息,数据加工的性能就尤为关键,在以往的大促期间,最核心的价格变更的动作就需要数小时完成,导致识货的技术人员需要提前预留足够的时间进行大促准备,虽然也曾尝试通过只读实例,读写分离,模块剥离等一系列举措,但始终得不到有效的解决。

  • 传统读写分离,延迟不可控,稳定性堪忧。

    为了缓解数据加工的压力,我们尝试剥离部分只读业务,通过只读实例实现读写分离,这也是大部分业务都会做的选择。然而识货的情况有些特别,核心数据加工场景的复杂度和并发度都非常高,对数据库的写压力非常大,高峰期单单写的QPS就能突破20万,所以主备延迟是摆在我们面前很严峻的问题,当只读业务长时间读不到准确的数据时,我们又会被迫将其临时搬回主实例,又进一步加剧了主实例的压力,陷入了无穷的死循环当中。同时过高的主备延迟,也给数据库自身的稳定性带来了很大的风险。

  • 商城扩品在即,平台处理能力捉襟见肘。

    识货的GMV已突破百亿,规模持续增长,预计未来几年内商城将扩品3~5倍,对识货整个数据加工平台的存储和计算能力都是很严峻的考验。目前核心业务的数据库已经是最高规格,升无可升,在过去的几年大促里,资源使用率偏高,处理能力急需突破;

解决方案

  • 分布式演进

    image

    渠道、商品、用户是整个识货最核心的板块,是识货对外提供数据服务的基石,通过分布式改造,整体的平台扩展性得到了提升,核心数据处理性能提升了3倍,整体的支撑能力提高了6倍。

  • 集分一体

    image.png

    采用业务垂直维度,进行分布式设计,不同的业务模块拆分到不同的存储节点,将核心的价格变更模块采用多个存储节点进行支撑,既做到了核心模块的分布式改造,同时模块间的数据、访问也实现了隔离,更重要的是保持了单机一致的使用体验,业务完全无感知。

  • 热力分区图

    集分一体给业务设计带来了足够的灵活度,但容易给性能调优,日常维护增加了复杂度。热力分区图可以很好的帮助用户解决这一问题:

    image.png

    通过可视化方式,直观的监测PolarDB-X实例的数据分布和访问分布。通过节点、库、表、分区多个维度实时展示不同节点的数据分布,数据的存储热点可以准确识别。访问测通过不同亮度实时展现某个时间点的访问趋势。从而避免灵活的集分设计给业务运行带来的容量、访问测的不确定性。

用户价值

  • 核心价格变更场景提速3倍,从4-5小时级别缩短为30分钟。

  • 数据加工平台的最大支撑能力提升了6倍。

  • 3AZ部署,mysql半同步升级为paxos强一致协议,业务连续性得到保证,数据永不丢失,RPO=0。

整个数据加工平台的性能、扩展性、稳定性都得到了很大的提升,面对商城扩品、各类大促更加轻松应对。相信借助PolarDB-X分布式的高性能,未来识货会为用户提供更多的购物渠道,更多的商品种类、更实时的价格推送、更丰富的数据服务。

  • 本页导读 (0)