随着移动互联网、电子商务的高速发展,被使用最多的企业级开源数据系统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云原生数据库在使用场景的应用值得期待。相信作为国产数据库的领跑者,阿里云将一直在为使命而努力奋斗,让我们拭目以待。

原文链接
本文为云栖社区原创内容,未经允许不得转载。

比MySQL快6倍 深度解析国内首个云原生数据库POLARDB的“王者荣耀”的更多相关文章

  1. 深度解析国内首个云原生数据库POLARDB的“王者荣耀”

    随着移动互联网.电子商务的高速发展,被使用最多的企业级开源数据系统MySQL面临着巨大挑战--为迎接"双11"的高并发要提前做好分库分表;用户不断激增要将读写分离才能应对每天上亿次 ...

  2. 云栖干货回顾 | 云原生数据库POLARDB专场“硬核”解析

    POLARDB是阿里巴巴自主研发的云原生关系型数据库,目前兼容三种数据库引擎:MySQL.PostgreSQL.Oracle.POLARDB的计算能力最高可扩展至1000核以上,存储容量可达100TB ...

  3. 开放融合 | “引擎级”深度对接!POLARDB与SuperMap联合构建首个云原生时空平台

    阿里巴巴新一代自研云数据库POLARDB与超图软件SuperMap GIS实现 “引擎级”深度对接,构建了自治.弹性.高可用的云原生时空数据管理平台联合解决方案,推出了业界首个“云原生数据库+云原生G ...

  4. 国内首篇云厂商 Serverless 论文入选全球顶会:突发流量下,如何加速容器启动?

    作者 | 王骜 来源 | Serverless 公众号 导读 ​ USENIX ATC (USENIX Annual Technical Conference) 学术会议是计算机系统领域的顶级会议,入 ...

  5. 云原生数据库mysql对共享存储分布式文件系统的接口需求分析

    1. 引言 云原生数据库跟分布式mpp数据库是有差异的,虽然两者都是计算与存储分离,但是在资源的占用上有所不同.云原生数据库是shard everything架构,其依赖的存储资源.内存资源.事务资源 ...

  6. 搜索 比MySQL快10倍?这可能是目前AWS Aurora最详解读!

    作者介绍 朱阅岸,中国人民大学博士,现供职于腾讯云数据库团队.研究方向主要为数据库系统理论与实现.新硬件平台下的数据库系统以及TP+AP型混合系统.   编者按 Aurora作为AWS云上的关系数据库 ...

  7. 深度解析国内O2O模式

    今日在网上发现这篇文章很棒,详细的分析了当前BAT矩阵下的o2o 的模式.所以转载过来与大家一起分享. 文章来自于:http://www.siilu.com/20151214/158917.shtml ...

  8. Mysql学习笔记-InnoDB深度解析

    前言 我们在上一篇博客聊了Mysql的整体架构分布,连接层.核心层.存储引擎层和文件系统层,其中存储引擎层作为Mysql Server中最重要的一部分,为我们sql交互提供了数据基础支持.存储引擎和文 ...

  9. 程序员收藏必看系列:深度解析MySQL优化(二)

    程序员收藏必看系列:深度解析MySQL优化(一) 性能优化建议 下面会从3个不同方面给出一些优化建议.但请等等,还有一句忠告要先送给你:不要听信你看到的关于优化的“绝对真理”,包括本文所讨论的内容,而 ...

随机推荐

  1. Codeforces 837 简要题解

    文章目录 A题 B题 C题 D题 E题 F题 G题 传送门 并没有找到难度评级但感觉是div3div3div3场. A题 题意:一个单词的价值是里面大写字母的个数,一篇文章的价值是里面所有单词的价值的 ...

  2. BJOI2018 简要题解

    二进制 序列上线段树维护DDP好题. 题解可以看这篇 代码: #include<bits/stdc++.h> #define ri register int using namespace ...

  3. Vue控制路由滚动行为

    跳转路由时,要求跳转到指定路由的某个地方,可以使用scrollBehavior方法控制. 用法: scrollBehavior(to,from,savedPosition){   } scrollBe ...

  4. 使用idea搭建maven-web项目

    使用idea搭建maven-web项目 1.用idea搭建项目:File--new--project 2.选择jdk版本,选择Maven-archetype-webapp来创建maven-web项目如 ...

  5. 学以致用三十三-----django生命周期

    听了讲解django的视频后,受益匪浅,每个知识点老师都会总结整理.学会总结,存为己用. django生命周期弄明白后,对于整个django的框架会有一个清晰的了解.先上图 1.客户端发送请求,在dj ...

  6. php中的冒泡排序和选择排序d

    //冒泡算法 //定义一个数组  $arr=arr{2,5,1155,3,8}; $len=count($arr); for($i=0;$i<$len-1;$i++) //定义以下需要宣传的次数 ...

  7. kubernetes CRD学习笔记

    前言 最近在极客时间订阅了kubernetes的专栏,这篇文章是想记录一下自己学习CRD(custom resource definition)的过程,加深一下记忆. 准备工作 首先安装一下我们用的g ...

  8. poj 3159

    差分约束 我也忘了谁说的了,反正我记得有人说过,只要是差分约束问题都可以转换成图 至少目前看来都是这样的 我一开始spfa+queue超时 看别人博客才知道要用spfa+stack,感觉智商又下降了一 ...

  9. Charles 学习笔记

    之前接触过抓包工具Fiddler,一直在Windows下使用,感觉还是挺好用的.今天接触了Charles才有了了解,首先Charles设计的比较美丽,而且页面布局也是简单易学的,但这两款抓包工具本质的 ...

  10. hive on spark 参数设置

    ; ; set spark.executor.memory=5G;