云数据库POLARDB优势解读系列文章之②——高性价比

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS PostgreSQL Serverless,0.5-4RCU 50GB 3个月
推荐场景:
对影评进行热评分析
简介: 现在做任何事情都要看投入产出比,对应到数据库上其实就是性价比。POLARDB作为一款阿里自研数据库,经常被问的问题是:性能怎么样?能不能支撑我的业务?价格贵不贵?很显然,在早期调研阶段,对稳定性、可靠性很难有量化的指标时,性能的好快就成了一个非常关键的决策因子。

现在做任何事情都要看投入产出比,对应到数据库上其实就是性价比。POLARDB作为一款阿里自研数据库,经常被问的问题是:性能怎么样?能不能支撑我的业务?价格贵不贵?很显然,在早期调研阶段,对稳定性、可靠性很难有量化的指标时,性能的好快就成了一个非常关键的决策因子。

POLARDB在一开始设计时就把性能作为一项关键的需求指标列入产品需求说明书,从架构设计到新硬件选型,再到代码实现,从驱动到分布式块存储,再到分布式文件系统和数据库引擎,打通整个技术栈做协同优化,最终才能保证性能上有数量级的提升。

高性能背后的技术

image.png | left | 827x469

在2018杭州云栖大会上分享的这张架构图展示了POLARDB的内部细节。自下而上来看,POLARDB由__共享分布式存储PolarStore__,__分布式文件系统PolarFS__,__多节点的数据库集群PolarDB__和__提供统一入口的代理PolarProxy__这四部分组成。

PolarFS

PolarFS设计中采用了如下技术以充分发挥I/O性能:

  • PolarFS采用了绑定CPU的单线程有限状态机的方式处理I/O,避免了多线程I/O pipeline方式的上下文切换开销。
  • PolarFS优化了内存的分配,采用MemoryPool减少内存对象构造和析构的开销,采用巨页来降低分页和TLB更新的开销。
  • PolarFS通过中心加局部自治的结构,所有元数据均缓存在系统各部件的内存中,基本完全避免了额外的元数据I/O。
  • PolarFS采用了全用户空间I/O栈,包括RDMA和SPDK,避免了内核网络栈和存储栈的开销。

在相同硬件环境下的对比测试,PolarFS中数据块3副本写入性能接近于单副本本地SSD的延迟性能。从而在保障数据可靠性的同时,极大地提升POLARDB的单实例TPS性能。

PolarDB

在数据库PolarDB中开创性地引入了物理日志(Redo Log)代替了传统的逻辑日志,不仅极大地提升了复制的效率和准确性,还节省了50%的 I/O 操作,对于有频繁写入或更新的数据库,性能可提升50%以上。

image.png | left | 827x292

PolarProxy

PolarProxy存在的意义是可以把底层的多个计算节点的资源整合到一起,提供一个统一的入口,让应用程序访问,极大地降低了应用程序使用数据库的成本,也方便了从老系统到POLARDB的迁移和切换。本质上,PolarProxy是一个容量自适应的分布式无状态数据库代理集群,动态的横向扩展能力,可以将POLARDB快速增减读节点的优势发挥到极致,提升整个数据库集群的吞吐,访问它的ECS越多,并发越高,优势越明显。

关于成本

抛开成本谈性能,都是耍流氓。

首先,POLARDB存储与计算分离的架构,可以让CPU、内存和磁盘摆脱互相制约的困扰,让计算和存储作为单独的资源池进行管理和分配,大幅降低资源碎片,提升整体的资源利用率。计算和存储的机型不同,我们还可以更有针对性地做定制和优化,降低单位资源的成本。

通用意义上,规模效应带来的边际成本递减这件事,会一直发生。在阿里巴巴超大规模的基础设施的基础上,我们可以持续不断地从全球供应链、低能耗数据中心、服务器研发等多个维度来降低我们的成本。

性价比

不管技术上有多先进,成本上有多低,最终还是需要用户认可。

所以,我们从用户角度来看,最关心的其实还是性价比,即同样的费用,是否可以获取更好的性能。

我们简单算笔账,来看一下POLARDB和自建MySQL的性价比。

公平起见,我们使用同样的数据库配置,测试数据集和测试方法,然后分别计算出二者的价格和性能。

其中,

  • 数据库配置采用生产环境常见的『8核 32G ,500G存储』的配置
  • 数据集和测试方法采用通用的sysbench OLTP测试用例(--oltp-tables-count=10 --oltp-table-size=500000)
  • 性能指标我们取QPS(Query per Second 每秒钟处理请求数)和TPS( Transaction per Second 每秒钟处理事务数)

此外,不管是自建MySQL还是POLARDB,都具备了通过增加只读节点来达到横向扩展读(Scale out)的能力,不同的是,POLARDB随着节点数的增加,并不需要额外的存储费用,因此,我们需要多对比几种架构,从1个读节点到3个读节点,具体如下:

集群架构 POLARDB 月价(计算规格+存储) 自建MySQL 月价 POLARDB比RDS贵 POLARDB 性能(QPS) 自建MySQL性能(QPS) POLARDB性能提升 千元性能指标(RDS vs. POLARDB)
1主1备 2000*2 +1575=5575 4100+400=4500 +24% 53879.46 18625.49 +190% 4139 vs. 9664
1主2备 2000*3+1575=7575 (4100+400)+(5.13+0.001*400)*24*30=8481 -10% 66626.63 26357.94 +150% 3107 vs. 8795
1主3备 2000*4+1575=9575 (4100+400)+(5.13+0.001400)24302=12463 -23% 80268.27 43087.33 +86% 3457 vs. 8383

表中的一些基础价格(以2018.11.8 当天价格为例):

  • POLARDB存储月价:1575元/月 = 500GB * 3.5元/GB/月
  • POLARDB 1个节点的月价是2000元
  • MySQL高可用版实例(双节点)的月价是4100元
  • MySQL高可用版实例存储月价:400元/月 = 500GB * 0.8元/GB/月
  • MySQL只读实例小时价:5.13元/小时
  • MySQL只读实例存储小时价:0.001元/GB/小时

相关文章:

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
1月前
|
关系型数据库 MySQL 分布式数据库
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶!
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶,邀请好友完成更有机会获得​小米Watch S3、小米体重称​等诸多好礼!
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶!
|
2月前
|
关系型数据库 MySQL Serverless
探索PolarDB MySQL版:Serverless数据库的灵活性与性能
本文介绍了个人开发者对阿里云PolarDB MySQL版,特别是其Serverless特性的详细评测体验。评测涵盖了产品初体验、性能观测、Serverless特性深度评测及成本效益分析等方面。尽管试用过程中遇到一些小问题,但总体而言,PolarDB MySQL版表现出色,提供了高性能、高可用性和灵活的资源管理,是个人开发者和企业用户的优秀选择。
|
3月前
|
关系型数据库 MySQL 分布式数据库
PolarDB 与传统数据库的性能对比分析
【8月更文第27天】随着云计算技术的发展,越来越多的企业开始将数据管理和存储迁移到云端。阿里云的 PolarDB 作为一款兼容 MySQL 和 PostgreSQL 的关系型数据库服务,提供了高性能、高可用和弹性伸缩的能力。本文将从不同角度对比 PolarDB 与本地部署的传统数据库(如 MySQL、PostgreSQL)在性能上的差异。
225 1
|
2月前
|
存储 SQL 关系型数据库
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
MySQL如何进行分库分表、数据迁移?从相关概念、使用场景、拆分方式、分表字段选择、数据一致性校验等角度阐述MySQL数据库的分库分表方案。
397 15
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
|
13天前
|
关系型数据库 分布式数据库 数据库
锦鲤附体 | PolarDB数据库创新设计赛,好礼不停!
锦鲤附体 | PolarDB数据库创新设计赛,好礼不停!
|
1月前
|
SQL 数据管理 数据库
文章初学者指南:SQL新建数据库详细步骤与最佳实践
引言:在当今数字化的世界,数据库管理已经成为信息技术领域中不可或缺的一部分。作为广泛使用的数据库管理系统,SQL已经成为数据管理和信息检索的标准语言。本文将详细介绍如何使用SQL新建数据库,包括准备工作、具体步骤和最佳实践,帮助初学者快速上手。一、准备工作在开始新建数据库之前,你需要做好以下准备工作
117 3
|
1月前
|
关系型数据库 分布式数据库 数据库
PolarDB 开源:推动数据库技术新变革
在数字化时代,数据成为核心资产,数据库的性能和可靠性至关重要。阿里云的PolarDB作为新一代云原生数据库,凭借卓越性能和创新技术脱颖而出。其开源不仅让开发者深入了解内部架构,还促进了数据库生态共建,提升了稳定性与可靠性。PolarDB采用云原生架构,支持快速弹性扩展和高并发访问,具备强大的事务处理能力及数据一致性保证,并且与多种应用无缝兼容。开源PolarDB为国内数据库产业注入新活力,打破国外垄断,推动国产数据库崛起,降低企业成本与风险。未来,PolarDB将在生态建设中持续壮大,助力企业数字化转型。
84 2
|
2月前
|
关系型数据库 分布式数据库 数据库
2024年全国大学生计算机系统能力大赛PolarDB数据库创新设计赛(天池杯)等你来战!
2024年全国大学生计算机系统能力大赛PolarDB数据库创新设计赛(天池杯)等你来战!
2024年全国大学生计算机系统能力大赛PolarDB数据库创新设计赛(天池杯)等你来战!
|
2月前
|
关系型数据库 分布式数据库 数据库
来!跟通义灵码一起参加PolarDB 数据库创新设计赛,突破传统,探索人机协作
无论你是数据库新手,还是技术大咖,通义灵码邀请你参加2024 年全国大学生计算机系统能力大赛 PolarDB 数据库创新设计赛(天池杯),新参赛模式启动,挑战极限!
109 11
|
2月前
|
关系型数据库 MySQL 分布式数据库
PolarDB MySQL数据库场景体验与测评
本文介绍如何在PolarDB上部署数据库,包括登录控制台、配置账号与数据库管理、执行SQL查询及调整Serverless配置等内容。通过创建测试表和数据操作演示了基本数据库管理功能,并展示了如何设置资源弹性扩缩、监控及备份数据。此外,还提供了关于节点切换、压测、加速复杂SQL查询、弹性并行查询及高可用性的详细场景体验说明,全方位展示了PolarDB的强大功能。

相关产品

  • 云原生数据库 PolarDB
  • 云数据库 RDS