一、出现的背景及PolarDB简介

阿里云,中国第一家拥有完整云计算能力的企业。

2015年,在计算界的奥运会Sort Benchmark中,阿里云计算100TB数据排序只用了不到7分钟,把ApacheSpark之前创造的23分钟世界纪录一下子缩短了一多半。这说明,中国人研发的云计算系统不仅成功了, 而且不比世界上任何现存的云计算系统差。

成功登顶的“云梯2”,后来更名为ODPS,“加冕”成为了阿里巴巴各项业务通用的大数据计算平台。ODPS验证成功之后,阿里立刻启动“登月计划”,把所有数据和计算都迁移到飞天为基础的系统上,全盘替代IOE和云梯1。2013年5月,阿里巴巴最后一台小型机下线。7月,淘宝最后一个Oracle数据库下线。阿里巴巴这台战车,用了五年时间,在超高速行驶中,没有踩一脚刹车,成功更换了发动机。因为突破了技术瓶颈,在5K之后,ODPS只用了几个月就冲上了单机群10K,进而实现了无限制扩展。到2018年,已经更名为MaxCompute的ODPS达到了数万台的规模。

在芯片领域,我们面对美国垄断只得眼睁睁地静默。

在操作系统领域,我们面对美国的背影只能艰难追赶。

但是在云计算这片土地上,从王坚带着一群理想主义者横空出世,到胡晓明把商业战场拉至和亚马逊的AWS同一级别。中国人用了十年时间造出的全球第三、亚洲第一的阿里云,不说和美国战位和棋,至少在世界的版图上夺下了堪为广袤的一片疆土。

2018年,当年为阿里云对接淘宝立下汗马功劳的小邪正式加入阿里云,掌管“飞天八部”,阿里云所有的现役主力和技术,都归至他麾下。此时小邪nian中的弹药充足:2017年发布的神龙云服务器,是对下一代云计算主机的探索。同年发布的PolarDB,剑指商业数据库Oracle和它的继任者MySQL,也称得上是阿里云未来之星。2018年初,飞天的分布式存储系统“盘古”升级到了2.0,成为了阿里巴巴统一存储平台。2018年秋天的云栖大会上,唐洪、小邪、何导等阿里云大咖系数登场,发布了飞天2.0。敢称2.0,是因为他们把野心放到了“万互联”的下一个20年。如此尝试和未来对话的技术还有很多。

其中,PolarDB是阿里云自研的下一代关系型云数据库,100%兼容MySQL,存储容量最高可达100TB,性能最高提升至MySQL的6倍,单库最多可扩展到16个节点,使用与企业多样化的数据库应用场景。PolarDB采用存储和计算分离的架构,所有计算节点共享一份数据,提供分钟级的配置升降级、秒级的故障恢复、全局数据一致性和免费的数据备份容灾服务。PolarDB既融合了商业数据库稳定可靠、高性能、可扩展的特性,又具有开源云数据库简单开放、自我迭代的优势,而成本只有商用数据库的1/10。

二、PolarDB优势分析

1.简单易用:100%兼容MySQL。在已有的使用MySQL数据库的应用程序代码、驱动无需更改,即可运行于PolarDB。

2.极致性能,降低成本:(1)针对数据库内核进行深度优化,同时采用物理复制、RDMA高速网络和分布式共享存储,读性能最高能达到MySQL的6倍;(2)集群包含一个主节点和最多15个只读节点,满足高并发场景对性能的要去,尤其适用于读多写少的场景。

3.超大容量,支持上百TB级别数据:采用分布式块存储设计和文件系统,使得存储容量不限制于单节点的规格,能够轻松扩展,应对上百TB级别的数据规模。

4.快速弹性,应对不确定的业务增长:(1)Serverless存储,存储空间无需手动配置,根据数据量自动伸缩,用户只需为实际使用的数据库容量付费;(2)配置降级,3分钟生效,采用容器虚拟化技术和共享的分布式块存储技术,使得数据库服务器的CPU、内存能够快速扩容;(3)增减节点,3分钟生效,通过动态增减节点提升性能或节省成本。通过使用集群连接地址,可屏蔽底层的变化,应用对于增减节点无感知。

5.下一代数据库引擎内核:(1)基于共享存储的一写多读集群,数据只需要一次修改,所有节点立即生效。例如,大表加索引可能需要30分钟,那么在MySQL中,主备库共需要1个小时,且备库会延迟至少30分钟。而在POLARDB中,主库加索引后,备库立即生效,总耗时30分钟,延迟不超过1分钟;(2)采用物理日志代替逻辑日志,通过共享存储和物理日志,使得主备库延迟控制在毫秒级以内,且可根据实际情况修改为主备库强同步(会牺牲一定的写入性能);(3)无锁备份,利用底层分布式存储的快照技术,只需分钟级别即可完成对上1TB的数据库进行备份,且整个备份过程不需要对MySQL加锁,效率更高,影响更小;(4)并行查询引擎(SQL加速),通过并行计算提升复杂大SQL的查询性能,尤其适用于大表关联查询、对无索引列的点查询、多字段分组查询等场景,根据实际情况性能可提升8~30倍。

6.高可用和高可靠保障:(1)共享分布式存储的设计,彻底解决了MySQL Master-Slave异步复制所带来的备库数据非强一致的缺陷,使得整个数据库集群在应对任何单点故障时,可以保证数据0丢失;(2)采用Active-Active的高可用集群架构,可读写的主节点和只读节点之间进行Failover切换,与传统的Active-Standby相比,用同样成本带来了更好的系统访问性能。

7.数据安全可靠:采用白名单、VPC网络、SSL加密、数据多副本存储等全方位的手段,对数据库数据访问、存储、管理等各个环节提供安全保障。

三、PolarDB架构特点

1.一写多读

2.计算与存储分离

3.读写分离

4.高速链路互联

5.共享分布式存储

6.数据多副本、Parallel-Raft协议

云数据库PolarDB基于Cloud Native设计理念,其架构示意图及特点如下:

四、PolarDB的应用场景

1.高并发读写OLTP

2.高可用、弹性扩展

3.迁移上云

云数据库PolarDB(一)的更多相关文章

  1. 云数据库POLARDB产品解读之二:如何做到高性价比

    现在做任何事情都要看投入产出比,对应到数据库上其实就是性价比.POLARDB作为一款阿里自研数据库,经常被问的问题是:性能怎么样?能不能支撑我的业务?价格贵不贵?很显然,在早期调研阶段,对稳定性.可靠 ...

  2. 深入解读阿里云数据库POLARDB核心功能会话读一致性

    POLARDB架构 我们知道,POLARDB是一个由多个节点构成的数据库集群,一个主节点,多个读节点.对外默认提供两个地址,一个是集群地址,一个是主地址,推荐使用集群地址,因为它具备读写分离功能可以把 ...

  3. 阿里云云服务器 ECS和云数据库 PolarDB的简单使用

    阿里云云服务器 ECS和云数据库 PolarDB的简单使用 仅作为记录自己的操作使用,主要是怕自己太久不用都忘了 登录阿里云以后点击控制台 然后找到云服务器ECS,点击进入 在左侧找到实例,点击进入 ...

  4. 深入解读阿里云数据库POLARDB核心功能物理复制技术

    日志是数据库的重要组成部份,按顺序以增量的方式记录了数据库上所有的操作,日志模块的设计对于数据库的可靠性.稳定性和性能都非常重要. 可靠性方面,在有一个数据文件的基础全量备份后,对运行中的数据库来说, ...

  5. 云数据库POLARDB优势解读之①——10分钟了解

    什么是POLARDB POLARDB 是阿里云自研的下一代关系型分布式数据库,100%兼容MySQL,之前使用MySQL的应用程序不需要修改一行代码,即可使用POLARDB. POLARDB在运行形态 ...

  6. 什么是云数据库POLARDB

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

  7. 你有什么理由还不选择阿里云服务器呢--从阿里云发布自研商用关系型数据库POLARDB想到的

    最近几天,阿里云发布自研商用关系型数据库POLARDB的消息可谓是重磅炸弹啊.借用官方宣传的话就是:6倍性能于MySQL并100%兼容/100TB存储容量/2分钟创建只读副本/3分钟创建容灾实例,第三 ...

  8. 比MySQL快6倍 深度解析国内首个云原生数据库POLARDB的“王者荣耀”

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

  9. 重新定义数据库的时刻,阿里云数据库专家带你了解POLARDB

    摘要:POLARDB是阿里云ApsaraDB数据库团队研发的基于云计算架构的下一代关系型数据库,其最大的特色是计算节点与存储节点分离,借助优秀的RDMA网络以及最新的块存储技术.POLARDB不但满足 ...

随机推荐

  1. Redis基本使用及百亿数据量中的使用技巧分享(附视频地址及观看指南)

    作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9941208.html 主讲人:大石头 时间:2018-11-10 晚上20:00 地点:钉钉群(组织代码 ...

  2. Nginx学习系列一搭建环境

    1.Win10下安装vmware14虚拟机软件 官方下载地址 全程next,输入key,激活即可. 2.在虚拟机中安装Linux服务器环境,操作系统为Centos7 继续下一步,安装完成! 3.下载C ...

  3. 将dylib库嵌入macOS应用的方法

    写作是一种习惯,稍微松懈,也许失去的就很多.过了一个年,居然很多天都没有更新,幸福的代价吧:) 标题的问题其实以前碰到过,不过当时在iOS,所以随手处理了没有重视. 而这次是在macOS,所使用的库, ...

  4. 动态代理的两种方式,以及区别(静态代理、JDK与CGLIB动态代理、AOP+IoC)

    Spring学习总结(二)——静态代理.JDK与CGLIB动态代理.AOP+IoC   目录 一.为什么需要代理模式 二.静态代理 三.动态代理,使用JDK内置的Proxy实现 四.动态代理,使用cg ...

  5. SQLServer特殊字符/生僻字与varchar

    对于中文版的SQL SERVER,默认安装后使用的默认排序规则为Chinese_PRC_CI_AS,在此排序规则下,使用varchar类型来可以“正常存取”存放中文字符以及一些东南亚国家的字符,同时v ...

  6. 【Java入门提高篇】Day25 史上最详细的HashMap红黑树解析

    当当当当当当当,好久不见,最近又是换工作,又是换房子,忙的不可开交,断更了一小段时间,最重要的一篇迟迟出不来,每次都犹抱琵琶半遮面,想要把它用通俗易懂的方式进行说明,确实有一定的难度,可愁煞我也,但自 ...

  7. Python系列文章

    前面带有[]符号的是待补充文章,有些可能在随后会跟着补上,有些可能有缘再补

  8. 【响应式编程的思维艺术】 (3)flatMap背后的代数理论Monad

    目录 一. 划重点 二. flatMap功能解析 三. flatMap的推演 3.1 函数式编程基础知识回顾 3.2 从一个容器的例子开始 3.3 Monad登场 3.4 对比总结 3.5 一点疑问 ...

  9. 第12章 添加对外部认证的支持 - Identity Server 4 中文文档(v1.0.0)

    注意 对于任何先决条件(例如模板),首先要查看概述. 接下来,我们将添加对外部认证的支持.这非常简单,因为您真正需要的是ASP.NET Core兼容的身份验证处理程序. ASP.NET Core本身支 ...

  10. c#调用com组件,程序 发生意外<hr=0x80020009>

    引用dll,确认dll没有问题,版本正确,可是一直报发生意外,没有任何其他提示. 解决方案: 看dll引用选项配置 复制到本地:设为true,我的就是false; 嵌入互操作类型:false,如果是t ...