Aurora:Amazon出品、高性能企业级关系数据库、兼容MySQL

近日,在美国召开的 AWS re:Invent云计算大会 上,Amazon高级副总裁安迪·杰西发布了企业级关系数据库 Aurora 。Aurora是一个面向 Amazon RDS (关系数据库服务)、兼容MySQL的数据库引擎,它结合了高端商用数据库的高速度和高可用性特性以及开源数据库的简洁和低成本。Aurora的性能可达 MySQL数据库的五倍,且拥有可扩展性和安全性,但成本只是高端商用数据库的十分之一。Aurora具有自动拓展存储容量、自动复制数据、自动检测故障 和恢复正常等功能。Aurora的架构如下图所示:

Aurora主要特性如下:

  • 兼容 MySQL

    Aurora完全兼容使用InnoDB存储引擎的MySQL 5.6,使得使用MySQL编写的大部分代码、应用、驱动等无需改变或者很少改变即可实现迁移到Aurora,反之依然。

  • 快速

    Amazon通过紧密集成数据库引擎和基于SSD的虚拟化存储层(专为数据库工作负载而开发),其性能和可用性 相较于MySQL有大幅提升,从而降低了存储系统的写入次数、尽量避免了锁定并消除了数据库处理线程带来的延迟。在相同硬件条件下,Aurora提供了相 对于标准MySQL高达五倍的吞吐量,每分钟能完成600万的插入操作和3000万的查询操作。
  • 高可用性和高耐久性

    Aurora能够在多个可用区上自动复制数据,并持续地把数据备份 Amazon S3 上,在不影响性能的情况下实现99.999999999%的耐久性。 Aurora提供了高于99.99%的可用性,可在60秒内自动检测大多数数据库故障并恢复正常,而不会出现崩溃恢复或需要重建数据库缓存的情况。 Aurora还能够持续监测实例健康状况,如果出现故障,它会自动切换至只读副本而不会丢失数据。
  • 高扩展性

    使用 Amazon RDS 服务扩展了Aurora的容量,还能够增加15个Aurora 副本,以及自动扩展存储容量而无需任何中断,从而避免停机或性能降低的情况。
  • 高安全性

    Aurora运行在 Amazon VPC 里,它能够将Aurora限制在自己的虚拟网络里;在数据传输过程中自动加密数据。Amazon RDS为Aurora集成了 AWS身份识别和访问管理(IAM) 服务,该服务能够非常安全地控制用户对Amazon AWS服务和资源的访问权限。
  • 非常廉价

    Aurora提供了同高端商用数据库同样的功能,但只有高端商用数据库产品成本的十分之一。用户无需前期投入,只需为自己所使用的每个Aurora数据库实例支付每小时的使用费,也没有最低承诺费用或预付费用。

财务软件公司 Intuit 公有云部门总监Troy Otillio表示:“Intuit在建立和运营高端商用数据库中,进行了大量的投资来为我们的业务提供支持。实际上,为了获得足够的可靠性和性能来满足 客户需求,一直以来我们别无选择。Aurora将会改变这个局面,它提供的性能和可用性能够与昂贵的自有数据库和SAN相媲美,并且价格要实惠得多。 Aurora的RDS管理功能将让我们可以集中资源和精力处理最重要的事——提供更好的应用,让客户满意。”

在Reddit上 关于Aurora的讨论 中,用户 Kayjaywt 评论道 :

Aurora给人以非常深刻的印象,它在磁盘上的处理hotspots的方式、自动拓展存储容量、自动复制数据、服务宕掉或者重启时对缓存持久化的处理方式是极好的。

AWS推出8年以来,一直保持了非常快的增长速度。高速增长的背后,还有价格的持续下调和功能的完善,客户一直希望更轻松地以开源引擎的价格获得商用数据 库的性能,于是就促使Amazon开发了Aurora。另外,在本次的云计算大会上,Amazon还发布了面向开发者的代码服务(CodeDeploy、 CodePipeline和CodeCommit)以及新企业安全和管理服务(AWS Key Management Service、AWS Config、AWS Service Catalog)。更多Aurora的相关信息,请查看Aurora的官方 详细介绍 以及有关Aurora的 FAQ 。

感谢崔康对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至[email protected]。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

时间: 2024-11-08 07:28:21

Aurora:Amazon出品、高性能企业级关系数据库、兼容MySQL的相关文章

PhxSQL兼容MySQL的关系型数据库集群

PhxSQL是一个兼容MySQL.服务高可用.数据强一致的关系型数据库集群.PhxSQL以单Master多Slave方式部署,在集群内超过一半机器存活的情况下,可自身实现自动Master切换,且保证数据一致性. PhxSQL 架构: PhxSQL基于Percona 5.6开发.Percona是MySQL的一个分支,功能和实现与MySQL基本一致(基础教程qkxue.net).因此本文后续直接把MySQL作为讨论对象. 总览: PhxSQL具有服务高可用.数据强一致.高性能.运维简单.和MySQL

PhxSQL 教程:兼容MySQL的数据库集群

PhxSQL是一个兼容mysql.服务高可用.数据强一致的关系型数据库集群.PhxSQL以单Master多Slave方式部署,在集群内超过一半机器存活的情况下,可自身实现自动Master切换,且保证数据一致性. PhxSQL基于Percona 5.6开发.Percona是MySQL的一个分支,功能和实现与MySQL基本一致(腾云科技TY300.COM).因此本文后续直接把MySQL作为讨论对象. MySQL半同步复制存在缺陷,在Master进行切换的场景下,数据难以保证一致. 当旧Master复

基于Spring4+SpringMVC4+Mybatis3+Hibernate4+Junit4框架构建高性能企业级的部标GPS监控平台

开发企业级的部标GPS监控平台,投入的开发力量很大,开发周期也很长,选择主流的开发语言以及成熟的开源技术框架来构建基础平台,是最恰当不过的事情,在设计之初就避免掉了技术选型的风险,避免以后在开发过程中,不断的填坑走弯路,以至于整个团队被坑埋掉.做GPS平台这么多年,以前就了解到一些开发团队过于关注某一种语言的优势,比如过于选用GO,Erlang,python,php等技术,最后团队熟悉这些技术的关键人员离职了,都没人接手,不能不说是个悲剧.所以说平台的技术架构选型要注重的是稳健,均衡而不是偏激,

高性能MySQL_第一章-MySQL架构和历史

事务:一组原子性的SQL查询.如果数据库能够成功的对数据库应用该组查询的全部语句,那么就执行改组查询:否则所有的语句都不会执行. ACID:原子性(atomocity),一致性(consistency),隔离性(isolation),持久性(durability). 原子性:一个事务必须被视为不可分割的最小执行单元.整个事物的操作要么全部提交成功,要么全部失败回滚,不可能存在只执行了一部分的操作. 一致性:数据库总是从一个一致性的状态转移到另一个一致性的状态.即使中间出现问题,因为事务没有提交,

构建高性能web之路------mysql读写分离实战

一个完整的mysql读写分离环境包括以下几个部分: 应用程序client database proxy database集群 在本次实战中,应用程序client基于c3p0连接后端的database proxy.database proxy负责管理client实际访问database的路由策略,采用开源框架amoeba.database集群采用mysql的master-slave的replication方案.整个环境的结构图如下所示: 实战步骤与详解 一.搭建mysql的master-slave

oracle数据库兼容mysql的差异写法

1.sysdate改为sysdate(),或者now(); 2.nvl(expr1,expr2) 改为IFNULL(expr1,expr2) nvl2(expr1,expr2,expr3)改为 IF(expr1,expr2,expr3); 3.to_date('19000101000000','yyyymmddhh24miss')改为select str_to_date('1900-01-01 00:00:00','%Y-%m-%d %H:%i:%s'),写法略有差异: date_format(

异构关系数据库(MySql与Oracle)之间的数据类型转换参考

一.MySQL到Oracle的数据类型的转变: 编号 MySQL ToOracle Oracle 1 GEOMETRY BLOB BLOB 2 GEOMETRYCOLLECTION BLOB BLOB 3 MULTILINESTRING BLOB BLOB 4 LINESTRING BLOB BLOB 5 MULTIPOINT BLOB BLOB 6 MULTIPOLYGON BLOB BLOB 7 POINT BLOB BLOB 8 POLYGON BLOB BLOB 9 DECIMAL IN

关系数据库(MySQL)的规范化、以及设计原则

1.了解范式(NF) 为了使得关系数据库能够符合规范理论,所有的数据库表都要满足:范式. 关系数据库的范式有五类:第一范式,第二范式,....第五范式.下面我们来了解一下前三个范式: 第一范式:简单来说就是表中不能嵌套表(使用一个列不能有多个值,列是原子级别的不能在分割) 第二范式:(在介绍第二范式之前,首先要知道什么是主键,如果这一列是主键那么,每一行的的这一列都是不能为空且不能重复的) 简单来说第二范式就是说,你的属性必须完全依赖你的主键,如果你的表里面有一个属性是不依赖你的主键的,或者是依

高性能MySQL-第一章MySQL架构与历史

并发控制 锁粒度 MySQL 中提供了两种锁粒度:表级锁.行级锁. 表锁:写锁的优先级高于读锁:写锁的请求可以插入到读锁的前面,但读锁的请求却不能插入到写锁的前面: 行级锁:行级锁只在存储引擎层实现,在服务器层没有实现: 尽量只锁定需要修改的那部分数据,而不是所有的资源.锁定的数据量越少,发生锁争用的可能就越小,系统的并发程度就越高. 但是加锁需要消耗资源,锁的各种操作(包括获取锁.释放锁.以及检查锁状态)都会增加系统开销.因此锁粒度越小,系统开销就越大. 锁类型 1.读写锁 互斥锁(Exclu