深度解析国内首个云原生数据库POLARDB的“王者荣耀”
随着移动互联网、电子商务的高速发展,被使用最多的企业级开源数据系统MySQL面临着巨大挑战——为迎接“双11"的高并发要提前做好分库分表;用户不断激增要将读写分离才能应对每天上亿次的访问,但读写分离后会导致数据同步延时严重、分布式事务复杂且效率低下、数据库可用性下降、MySQL的3T容量瓶颈等一系列问题都困扰着CTO和架构师们。
“要解决这些问题,阿里巴巴2008年就开始研发自主可控的数据系统,2014年基于MySQL的国内首个云原生数据库POLARDB开始孵化,到今天已累计超过PB的数据迁移至 POLARDB”阿里云研究员吕漫漪这样告诉记者。
荣耀一:超大容量 弹性扩展
虽然POLARDB是基于MySQL研发的关系型数据库,但存储容量完全不受到限制,存储容量最高可达100TB,单库最多可扩展到 16 个节点,性能提升是MySQL的6倍,并且完全兼容MySQL。
"由于MySQL 和POLARDB 百分之百兼容,有两种办法可以实现快速迁移,:一是直接做个备份,就可以从MySQL迁移到POLARDB,这种方式非常简单,还可以通过我们提供的DTS在线工具进行迁移。“吕漫漪表示:”对于一个完全基于云环境的数据库,利用云的弹性扩展是个基本项,用Serverless方式自动扩容,存储空间无需手动配置,根据数据量自动伸缩,用户只需为实际使用容量付费。”
当应对完一次“大促“释放数据资源、节点资源非常简单,POLARDB三分钟就可生效。“不同于MySQL的‘一主多从’POLARDB则采用‘一写多读共享同一份数据’的方式,无需额外建立多个从库。在几分钟内就可以增加一个只读节点并启动服务。采用物理日志(RedoLog)代替逻辑日志(Binlog)极大程度的减少的主备延迟和磁盘IO,使得主备延迟控制在毫秒级,并可根据实际情况修改为主备强同步。”
荣耀二:运维简单 安全可靠
操作简单一直是降低差错、提高可用性的不二法则。吕漫漪表示:“POLARDB的大容量、高性能简化了构架师对数据库的操作,不用去做分库分表、不用做冷热分离,同时有对查询的加速接口,可以直接通过调用智能接入层的一个接口就可完成复杂的查询。”
同时,数据越来越成为企业的重要资产,甚至是企业的生命线。“我们在数据库安全方面对POLARDB也做了很多改进。POLARDB共享分布式存储的设计彻底解决了MySQL Master-Slave异步复制所带来的备库数据非强一致的缺陷,使得整个数据库集群在应对任何单点故障时,可以保证数据 0 丢失。采用Active-Active的高可用集群架构,可读写的主节点和只读节点之间进行Failover切换,与传统的Active-Standby相比,用同样成本带来了更好的系统访问性能。“
POLARDB也加强了数据安全方面的措施,包括采用白名单、VPC网络、SSL加密、数据多副本存储等全方位的手段,对数据库数据访问、存储、管理等各个环节提供安全保障。“在实际场景中我们发现,误删除等低级错误时有发生造成的损失巨大,为此我们未来在新版本中还会提供‘回收站’的功能,能很快地将删除的数据库表进行恢复,此外,还利用POLARDB共享分布式存储的特点,可以快速将数据库恢复到某一个指定时间点,通过快照的功能通过快照和物理日志将数据库恢复到一个指定的时间点来提高数据库的高可用性。“
荣耀三:平滑演进 面向未来
对于POLARDB的演进方向,吕漫漪表示,“首先就是在靠可用性上下功夫。企业及客户对高可用性和数据库的安全要求特别高,所以我们会在高可用上加大投入。此外在性能上的提高,把更多的功能下推到存储层来做。在当今大数据的时代,企业级用户在功能上也有了新的要求,要求数据库既要是事务性数据库又要是分析性数据库,我们今后把这两个需求结合在一起,今后将推出并行查询、大幅提高大表查询、复杂查询的性能,这些都是我们的前进方向。
当前数据种类繁多,除了大家熟知的关系型数据库,图数据库、文件数据库、流数据库等非关系数据库也在崛起。吕漫漪认为,数据库的发展现在是百花齐放,由于应用场景的不同,用户可以选择不同的数据库,但我们可以看到MySQL数据库也发生了很多改变,它从一个纯关系型的数据库也开始支持文件存储,5.7版开始支持文件存储,关系型数据库的演变和MySQL的演变也开始支持更多的存储模式,我们可以给客户提供更多的选择。”
阿里云数据库事业部总经理鸣嵩认为:“十年时间,阿里云数据库团队从技术创造新商业到推动中国数据库技术变革。”从AliSQL到RDS,再到首个自研云原生数据库POLARDB,如今,阿里巴巴数据库技术得到了极大的提升,领跑数据时代。前不久,Gartner公布了2018全球数据库魔力象限,阿里云以国内云厂商第一成为首个入选的中国企业,分析师更是认为POLARDB云原生数据库在使用场景的应用值得期待。相信作为国产数据库的领跑者,阿里云将一直在为使命而努力奋斗,让我们拭目以待。
转载于:https://blog.51cto.com/14031893/2326040
深度解析国内首个云原生数据库POLARDB的“王者荣耀”的更多相关文章
- 比MySQL快6倍 深度解析国内首个云原生数据库POLARDB的“王者荣耀”
随着移动互联网.电子商务的高速发展,被使用最多的企业级开源数据系统MySQL面临着巨大挑战——为迎接“双11"的高并发要提前做好分库分表;用户不断激增要将读写分离才能应对每天上亿次的访问,但 ...
- 云栖干货回顾 | 云原生数据库POLARDB专场“硬核”解析
POLARDB是阿里巴巴自主研发的云原生关系型数据库,目前兼容三种数据库引擎:MySQL.PostgreSQL.Oracle.POLARDB的计算能力最高可扩展至1000核以上,存储容量可达100TB ...
- 开放融合 | “引擎级”深度对接!POLARDB与SuperMap联合构建首个云原生时空平台
阿里巴巴新一代自研云数据库POLARDB与超图软件SuperMap GIS实现 “引擎级”深度对接,构建了自治.弹性.高可用的云原生时空数据管理平台联合解决方案,推出了业界首个“云原生数据库+云原生G ...
- 云原生数据库崛起,阿里云POLARDB当选世界互联网领先科技成果!
第六届世界互联网大会来了!千年水乡古镇乌镇又一次吸引了全世界的目光. 刚刚,阿里云自研数据库POLARDB在会上当选世界互联网领先科技成果.POLARDB解决了企业在云时代的数据库难题,帮助企业在数小 ...
- 为什么CynosDB叫真正的云原生数据库?
本文由腾讯云数据库发表 注:本文摘自2018年11月22日腾讯云数据库CynosDB新品发布会的演讲实录.随着互联网信息的发展,大家也对云这个词汇也不是特别陌生了,作为全球首选的云服务厂商之一的腾讯云 ...
- 国内首篇云厂商 Serverless 论文入选全球顶会:突发流量下,如何加速容器启动?
作者 | 王骜 来源 | Serverless 公众号 导读 USENIX ATC (USENIX Annual Technical Conference) 学术会议是计算机系统领域的顶级会议,入 ...
- 拥抱云原生 2.0 时代,Tapdata 入选阿里云首期云原生加速器!
3月9日,阿里云首期云原生加速器官宣,Tapdata 突出重围,成功入选31 强,将与多家行业知名企业,携手阿里云共建云原生行业新生态,加速拥抱云原生新时代的无限潜能. 2021年,阿里云正式 ...
- 云原生数据库 TDSQL-C 产品概述、产品优势、应用场景
云原生数据库 TDSQL-C(Cloud Native Database TDSQL-C,TDSQL-C)是腾讯云自研的新一代高性能高可用的企业级分布式云数据库.融合了传统数据库.云计算与新硬件技术的 ...
- 再测云原生数据库性能:PolarDB依旧最强,TDSQL-C、GaussDB变化不大
1.摘要 近期,腾讯云数据库在文章「腾讯云TDSQL-C重磅升级,性能全面领跑云原生数据库市场」中提到,某些场景下性能有非常大的提升,且超过国内某橙色云厂商.恰好,在5月份,我们对各个厂商的云原生数据 ...
随机推荐
- Vue学习(1)---Vue介绍
Vue是什么 官方定义:Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层 ...
- 1041 Be Unique (20分)(水)
Being unique is so important to people on Mars that even their lottery is designed in a unique way. ...
- java对于目录下的相关文件的单词操作
写入文件的目录.代码通过找目录下的文件,进行相关函数的操作.如果目录下面包含子目录.代码设有调用递归的方法,在寻找子目录下的文件 在进行相关的函数操作.函数主要是按用户输入的个数要求输出文件中出现次数 ...
- Flask 入门 (十一)
上篇文章讲的是一对多,这篇文章应该说多对多了 但是多对多无法用两张表来实现,因为外键......,你懂,哈哈哈!,所以中间需要加一张表来实现 承接上文,修改main.py中的代码如下: #encodi ...
- MySQL InnoDB存储引擎体系架构 —— 索引高级
转载地址:https://mp.weixin.qq.com/s/HNnzAgUtBoDhhJpsA0fjKQ 世界上只两件东西能震撼人们的心灵:一件是我们心中崇高的道德标准:另一件是我们头顶上灿烂的星 ...
- 30.5 Map遍历方法
package day30_2_Map; import java.util.HashMap; import java.util.Map; import java.util.Set; /* 方法一.用e ...
- 22.3 Extends 构造方法的执行顺序
/** 1.有子父类继承关系的类中,创建父类对象未调用,执行父类无参构造* 2.有子父类继承关系的类中,创建子类对象未调用,执行顺序:默认先调用 父类无参构造---子类无参构造* 在子类的构造方法的第 ...
- android学习笔记——使用QuickContactBadge关联联系人
本文大部分内容来自<疯狂android讲义>. QuickContactBadge继承了ImageView,因此它的本质也是图片,也可以通过android:src属性指定它显示的图片.Qu ...
- mysql优化之分区
mysql分区类型 日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表.这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,性能低下,如果涉及联合查询的情况,性能会 ...
- C++基础的一些代码和笔记 stl乱炖
STL: 标准模板库.各种函数的模板和类的模板几个概念:容器:可容纳各种数据类型的通用数据结构,是类模板.迭代器:可用于依次存取容器中的元素,类似于指针,用iterator来进行对一个容器中单个元素的 ...