关系型数据库并不新鲜。这个诞生于上世纪70年代的“老古董”,在业内不断涌现出多种不一样类型的数据库的状况下,仍然站在舞台的中央,它的地位也依旧不可替代。当前主流的关系型数据库包括Oracle、DB二、SQL-Server、MySQL、PostgreSQL等。数据库
在云计算的普遍应用下,多种主流的关系型数据库也纷纷被移植到了云上。但伴随着大数据的发展,数据量的爆发式增加,企业对数据库性能与存储规模的要求已愈来愈高。而在云计算从1.0时代向2.0时代不断迈进的背景下,如何在资源型服务的基础上提供更好的应用服务则成为云服务提供商的主要目标之一。单纯地将现有数据库产品移植到云上已没法彻底知足企业用户的需求,不管是云服务提供商仍是用户,都须要一个彻底为云打造的优秀的云原生数据库。编程
阿里云数据库业务总经理曹伟(鸣嵩)将POLARDB称做是“承载着阿里云数据库从过去1.0时代走向2.0时代的一个标志性的产品”。做为阿里云自研的新一代云原生关系型数据库,POLARDB除了具有关系型数据库的核心特征外,同时也更关注如何知足用户对云服务的特殊业务需求,包括成本、业务连续性及可扩展性等各个方面。工具
▲阿里云数据库业务总经理曹伟(鸣嵩)在英特尔傲腾技术媒体分享会上发表演讲性能
三大核心特性测试
开发云原生数据库并不意味着创建一个新的“门派”,不能由于业务要迁移到云就必须去适应一套新的编程接口,这是不可取的。所以兼容性是阿里云数据库团队研发POLARDB时的第一理念。包括目前最主流的、开发者最喜欢用的MySQL和PostgreSQL这两种数据库生态,POLARDB均可以作到100%兼容。用户一行代码都不用改,就能够把业务从原来的开源数据库迁移到POLARDB平台。大数据
谈到兼容性的问题时,曹伟的态度甚至有些“强硬”,他表示:“从第一天起咱们就不接受99%的兼容,只有100%的兼容。在作技术方案选型的时候,即使有一个方案可能不兼容某些东西,但实现起来更简单,咱们也不会妥协,必定是100%兼容。”优化
若是说100%的兼容性是不可妥协的原则,那性能和容量则更像是一种追求了。性能的重要性天然无需赘述,特别是在现在数据量大幅暴涨的状况下,用户对性能的需求早已不一样往日。阿里云数据库团队通过不断地攻坚、优化,使得POLARDB拥有了行业领先的超高性能。通过Sysbench性能测试工具的测试,POLARDB的每秒事务处理量(TPS)可达到22万,而开源数据库只有3.5万次。与开源数据库相比,POLARDB实现了约六倍的性能提高。同时价格不变,为用户节省了大量的成本。阿里云
容量扩展也一直是用户的一大难题。以往用户的容量不足时,多数经过两种办法解决:一是扩容,经过切分业务,将数据库进行拆分,再以此实现水平扩展;第二是按期作数据搬移,将访问频次较低的数据迁移到一个冷数据库中,以得到可用的存储空间。但不管是扩容到多个数据库,仍是进行数据搬移,对用户来讲开发成本都是很是大的,同时还涉及到管理与保证业务连续性的问题。做为云原生数据库,POLARDB能够支持用户弹性扩容,最高可达100TB,而这个容量对99%的用户来讲是彻底足够的。云计算
除此以外,POLARDB还有一个核心优点就是“一写多读共享同一份数据”。对于一些如淘宝这种读的访问比写的访问多的业务,过去的作法是用“一主多从”的技术来实现。简单来讲就是一个主库写,将数据同步给多个从库,再使用这些从库完成读的访问。但这种模式有很大的缺点,第一是形成空间浪费,须要不少副本;第二是扩容时间长,由于添加节点时每每须要拷贝数据。POLARDB的作法是让“一主多从”共享同一个数据副本,无需额外创建多个从库。并且在几分钟内就能够增长一个只读节点并启动服务。blog