阿里云POLARDB如何帮助百胜软件应对数据库的“巅峰时刻”

POLARDB是阿里云自研的下一代关系型云数据库,100%兼容MySQL,存储容量最高可达100TB,性能最高提高至MySQL的6倍,适用于企业多样化的数据库应用场景。POLARDB采用存储和计算分离的架构,全部计算节点共享一份数据,提供分钟级的配置升降级、秒级的故障恢复、全局数据一致性和免费的数据备份容灾服务。本文就介绍了百胜软件的阿里云数据库最佳实践,为你们分享POLARDB如何帮助百胜应对数据库的“巅峰时刻”。数据库

百胜软件的业务
上海百胜软件股份有限公司成立于2000年,是国内知名的全渠道新零售解决方案服务商,为鞋服、运动、家居、日化、美妆、珠宝、食品等品牌企业提供管理咨询和信息化解决方案,业务涵盖全渠道中台、零售分销、供应链、电子商务、移动应用、大数据等领域。安全

目前,百胜软件与旗下22家分子公司及全国100多家星联服务机构,为客户提供专业及时的服务支持,安全保障30多万家实体门店和2万多家网上商店的平常运营。新零售时代百胜软件致力于为中国零售企业提供全渠道新零售解决方案,帮助客户实现零售转型和商业创新,成就智慧品牌,创造非凡价值。服务器

图片描述

百胜iSHOP在线商城是以移动互联网时代消费者驱动业务为核心,充分知足企业在不一样触点场景下实现互动、体验、便捷交易的统一及业务成长的中高端电子商务销售平台。网络

图片描述

百胜iSHOP在线零售商城架构

百胜软件面临的挑战
百胜目前服务30多万家实体POS门店与2万多家网上商店,随着业务量增加与业务波动传统的关系型数据库难以知足业务增加需求。具体而言,百胜所面对的业务挑战主要有如下两点:并发

挑战1:高峰时刻交易延迟激增
在使用阿里云数据库以前,百胜软件采用的是自建数据库。当时规模最大的零售终端业务在节假日的高峰时期常常会出现卡顿,平时2秒内可完成的交易激增到10到15秒才可以完成,甚至会出现交易失败,须要从新交易现象。负载均衡

挑战2:数据库容量接近极限,业务被迫延缓
在使用阿里云数据库以前,百胜软件的自建数据库容量已经接近极限,业务扩展被迫所以延缓。当时出现的状况是:只有当历史数据被归档和清理以后,才能接入新业务。分布式

为什么选择阿里云POLARDB
首先,阿里云POLARDB简单易用,它100%兼容MySQL,原有的使用MySQL数据库的应用程序代码无需更改,就能够在POLARDB上运行。其次,阿里云POLARDB具备极致性能,其针对数据库内核进行深度优化,读性能最高能达到MySQL的6倍。再次,POLARDB采用分布式块存储设计和文件系统,使得存储容量不限制于单节点的规格,可以轻松扩展,应对上百TB级别的数据规模。此外,阿里云POLARDB还有高可用和高可靠保障,而且具备较高的数据安全性。高并发

其实,百胜最为看重的就是阿里云POLARDB所具备的快速弹性能力,不管是增删节点仍是升降级配置,都可以在3分钟内生效,这使得百胜可以在业务高峰期快速扩展只读实例。而在快速扩展能力的背后则是由于阿里云POLARDB由多个节点构成的数据库集群,该集群具备一个主节点,还能够扩展出多个读节点。其对外默认提供了两个地址,一个是集群地址,一个是主地址,通常而言推荐使用集群地址,由于它具有读写分离功能能够把全部节点的资源整合到一块儿对外提供服务。
图片描述
阿里云POLARDB集群架构工具

POLARDB读写分离的会话读一致性助力全渠道迈向新零售
在百胜软件所最为看重的POLARDB快速扩展只读实例能力的背后,其核心技术实际上是POLARDB读写分离的会话读一致性。传统数据库解决方案的读写分离都只提供最终一致性的保证,主从复制延迟会致使从不一样节点查询到的结果不一样。POLARDB采用的是读写分离的架构,而为了解决这种状况下查询结果不肯定的问题,而传统解决方案每每会增长应用开发的负担,还会增大主库的压力,影响读写分离的效果。为了应对上述挑战,POLARDB提供了会话一致性的保证。会话一致性也就是保证在同一个会话内,后面的请求必定可以看到此前更新所产生版本的数据或者比这个版本更新的数据,保证单调性。其实现原理以下所示:
图片描述

POLARDB读写分离会话读一致性的实现原理

在POLARDB的链路中间层作读写分离的同时,会跟踪各个节点的redolog位点,也就是LSN。每次更新时会记录这次更新的位点为Session LSN, 当有新请求到来时则会比较Session LSN和当前各个节点的LSN,仅将请求发往LSN >= Session LSN的节点,从而保证了会话一致性。由于POLARDB采用了物理复制方式,速度极快,所以并不会对于主库形成太大压力。另外一方面,因为大多数应用场景都是读多写少,经过经验也验证了该机制可以保证会话一致性,同时也保证了读写分离负载均衡的效果。

在阿里云的帮助下,百胜软件将自身在线零售商城后台的MySQL数据库改成阿里云的POLARDB数据库,借助POLARDB强大的读写分离能力,百胜软件可以在业务压力增加时经过增长只读实例来轻松应对,而在业务高峰期事后,又能够轻松地删除只读实例或下降配置来综合控制成本。阿里云POLARDB的弹性扩容、在线升级、数据安全可靠、高可用保障,以及零成本上云迁移的优秀特性极大地助力了百胜在全渠道上迈向新零售。

图片描述

百胜iSHOP基于阿里云的数据库解决方案

阿里云POLARDB采用容器虚拟化技术和共享的分布式块存储技术,使得数据库服务器的CPU、内存可以轻松实现扩容,而且帮助百胜软件在2到3分钟内完成增长只读节点的操做。此外,对于数据库存储容量的扩容也能在线完成,而无需中断业务,在很大的程度上解决了硬件性能的瓶颈问题。

阿里云POLARDB采用白名单、VPC网络、SSL加密、数据多副本存储等全方位手段,帮助百胜软件在数据库数据访问、存储、管理等各个环节提供安全保障。POLARDB采用了Active-Active的高可用集群架构,直接经过可读写的主节点和只读的Replica节点之间进行Failover切换,与传统的Active-Standby相比,用一样成本为百胜带来了更好的系统访问性能。

除此以外,阿里云POLARDB可以100%兼容MySQL,所以借助上云迁移工具DTS,百胜能够将已有数据库无需改造直接很是平滑低迁移到POLARDB。与此同时,这也使得百胜软件的客户以更低的成本享受到商业数据库的性能和可靠性。

使用阿里云数据库解决方案为百胜带来的收益
借助于阿里云的数据库解决方案,百胜的iSHOP在线零售商城系统即使是在业务的高峰时刻也能够保持在1秒内完成交易,有效地保障了各种促销活动的顺利开展。而新的数据库容许在线上保存90天内的交易数据,而无需归档和清理,也为后续BI进一步分析业务变化和趋势提供了大量的数据。

在世界杯期间,百胜软件的客户投放了大量广告,而借助阿里云POLARDB的强大能力,百胜成功应对了数亿次的总曝光量,以及高并发的需求。百胜借助阿里云POLARDB强大的计算能力、Active-Active高可用集群架构、极速扩展增长只读实例的机制,顺利度过了世界杯活动期间的数次高峰,极大地提高了用户体验,顺利完成了为客户活动的保驾护航。

相关文章
相关标签/搜索