推特 阿里云技术文档正文

Ping++_金融&支付_客户案例_分布式关系型数据库 DRDS

admin 阿里云技术文档 2020-02-11 199 0
阿里云服务器优惠

Ping++

Ping++_金融&支付_客户案例_分布式关系型数据库 DRDS 阿里云技术文档 第1张

客户介绍

Ping++ 始于 2014 年,伴随着中国移动支付大爆炸而生,是上海简米网络科技有限公司旗下的聚合支付品牌。

Ping++是每一家企业内部的虚拟支付团队,帮助企业快速高效地搭建自己的支付系统。无论企业是否已经对接支付渠道,都可以使用 Ping++ 的产品和服务。Ping++ 是「交易的管道」,更是「交易的引擎」。

Ping++通过 3 大核心产品「实现所有主流支付渠道收付款」的聚合支付、「实现账户余额充值打赏」的会员系统以及「实现多层级商户分润管理」的多级商户系统为近 30000 余家不同商业形态的企业提供了服务。

Ping++致力于用最简单的代码,最方便的管理平台,最专业的咨询服务,最强大的数据分析能力,成为企业的重要支付合作伙伴。

业务痛点及诉求

  • Ping++支付业务数据量大,并发高,已有RDS for MySQL实例无法满足性能及扩展需求。
  • 交易、订单表数据量巨大,单表数据量10亿级,需要拆库拆表以缓解数据库压力。
  • 历史存量数据存在 RDS for MySQL 之上,希望迁移后的分布式数据库语法兼容MySQL,迁移成本低。

技术选型

  • 主动在阿里云了解到DRDS
  • 此前对比过开源产品Mycat
  • Mycat前期人力成高、后期需要部署维护,问题解决成本高、时间长
  • DRDS商务成本相对可接受,产品化能力丰富,运维便捷,最后选型阿里云DRDS

解决方案

Ping++业务早期均构建于RDS for MySQL之上,数据体量从2016年1个亿至2017年5个亿发展到2018年10个亿,业务规模发展迅速,急需对数据库进行拆库分表。

目前Ping++目前采用两个DRDS实例,每个DRDS实例挂载4个RDS for MySQL。

其中交易表使用订单号按hash进行拆分,每个DRDS实例8个分库,每个分库按tbpartition 16拆分为16张物理分表。

在线交易业务轻量OLAP类业务场景,使用DRDS分析型只读实例,避免此前将OLTP业务数据通过ETL等方式同步至异构分析数据源,降低业务架构的链路复杂度,以节省运维及预算成本。

通过DRDS分库分表,将数据库水平拆分有效解决了支付订单的存储瓶颈及高并发压力。

使用DRDS升配及平滑扩容满足了业务高速发展过程中DRDS数据库平滑扩展的诉求。

业务架构

Ping++_金融&支付_客户案例_分布式关系型数据库 DRDS 阿里云技术文档 第2张

建议及诉求

因存在历史数据,期望可以将几年前的冷数据进行归档,期望DRDS提供数据冷热存储的能力。

后续规划

  • 后续其他核心业务及产品线也将使用DRDS。

  • 在Ping++业务高速发展的发展过程中,支付核心交易系统商户订单的数据量很大,同时具有高并发访问的特点。后续将通过DRDS映射规则、热点迁移能力将部分大商户迁移至单独的RDS存储中,解决热点数据问题。

客户价值

Ping++自成立以来一直专注帮助企业快速高效搭建支付系统,2016 年底因业务的发展部分核心业务数据并发写及存储面临瓶颈,需要通过拆分解决这两个痛点,主要考虑到性能、平滑扩容、易维护等需求,经过选型和测试后选择DRDS,期间通过简单的操作很方便地解决我们数据库水平扩展的需求。

—— Ping++技术总监 叶波光

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论

-----