揭秘传统数据库转型云原生的迅猛趋势

Posted Xd聊架构

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了揭秘传统数据库转型云原生的迅猛趋势相关的知识,希望对你有一定的参考价值。

文章目录


前言

对于企业来讲,保护敏感信息和数据资产尤为重要。企业使用数据库保存金融数据、交易记录、商业事务和账号数据等敏感信息。现今,上云已经成为一种趋势。而在上云的过程中,数据库则被认为是云上非常重要的一环。因为云最开始提供的是IaaS,而随着各种智能化应用的兴起,数据库就成为了从IaaS到智能化应用连接的重要一环。企业在转型的过程中,面对云数据库带来的安全可靠、节省成本、弹性智能三方面优势,传统数据库上云+各类云上安全防护,变得刻不容缓。

亚马逊云科技提供了100余种产品免费套餐。其中,计算资源Amazon EC2首年12个月免费,750小时/月;存储资源 Amazon S3 首年12个月免费,5GB标准存储容量;数据库资源 Amazon RDS 首年12个月免费,750小时;Amazon Dynamo DB 25GB存储容量 永久免费。


一、传统数据库的三大痛点

  • 难以保障的安全:传统数据库的安全保障与数据备份均需要自行部署与实现,价格高昂是一方面,在备份时,还需要寻找备份存放空间以及定期验证备份是否可以完成恢复。而且数据库运维是一份比较磨人的苦差事,在应对外部攻击和突发事件时,多重压力下,不能保证运维人员永远不犯错误。

  • 居高不下的成本:传统数据库随着业务的巨增,其成本也是节节攀升,软件使用费、服务器费用、运维成本等,让企业苦不堪言。

  • 可扩展性差:当业务进入迅猛发展阶段时,由于传统数据库已经历了几十年的发展,导致更新迭代速度慢,可扩展性差,无法跟上企业业务的发展需要。

由此可见,传统数据库的改革是趋势,那么应势而来的技术又是什么呢?


二、云原生数据库是什么

简单来说,云原生数据库,是一种通过云平台进行构建、部署和分发的服务。这种云原生属性是它相比于其他类型数据库最大的特点。作为一种云平台,云原生数据库以PaaS(平台即服务, Platform-as-a-Service)的形式进行分发,也经常被称作DBaaS(数据库即服务, DataBase-as-a-Service)。用户可以将该平台用于多种目的,例如存储,管理和提取数据。

云原生数据库通常通过在云基础设施之上安装数据库软件来实现,这种方式使得云原生数据库具备了传统数据库所不具备的直接访问性和运行时可伸缩性。随着云原生数据和海量计算的重要性不断提高,人们空前重视通过部署这种服务为企业提供增强的可靠性和可伸缩性。


三、云原生数据库的优点

  • 易处置性,简单来讲,易处置性是指数据库在无需事先通知的情况下,即时处理崩溃或启动进程的能力。即便现在有先进的技术,但是像磁盘故障、网络隔离故障,以及虚拟机异常等,仍然不可避免。

  • 对于传统数据库,这些故障尤其有害,因为用单个机器运行整个数据库,即便一个很小的问题都可能影响所有功能。而云原生数据库的设计具有显著的易处置性,即允许虚拟机在即时通知下立即重启或重新调度。实际上,易处置性已从单个虚拟机扩展到了整个数据中心。随着我们的环境持续朝着更加稳定的方向发展,云原生数据库将发展到对此类故障无感知的状态。

  • 增强的安全性 DBaaS运行在受高度监控和安全的环境里,受到反恶意软件、反病毒软件和防火墙的保护。除了全天候的监控和定期的软件升级以外,云环境还提供了额外的安全性。相反,传统数据库容易遭受数据丢失和被不受限制的访问。基于服务提供商通过即时快照副本提供的数据能力,用户可以达成“RPO=0,RTO<60秒”的目标。

  • 可扩展性能够在运行时进行按需扩展的能力是任何企业成长的先决条件。因为这种能力让企业可以专注于追求商业目标,而不用担心存储空间大小的限制。

  • 传统数据库将所有文件和资源都存储在同一主机中,而云原生数据库则不同,它不仅允许你以不同的方式存储,而且不受存储问题的影响。

  • 更好的可访问性传统数据库最重要的限制之一,是它只能通过连接数据库系统本身进行访问。而云原生数据库提供对数据库全天候的访问,以便你随时进行任何修改,而你只需要一个可以访问internet的计算机。这样一来,就消除了可能发生的潜在的延迟,同时也为多个开发人员之间的协作开辟了途径。

  • 显著的成本节约建立一个数据中心是一项独立而完备的工程,需要大量的硬件投资,还需要能可靠管理和维护数据中心的训练有素的运维人员。此外,持续的运维会给你的财务带来相当大的压力。而使用云原生的DBaaS平台,你可以以较低的前期成本,获得一个可扩展的数据库,这可以让你腾出双手,实现更优化的资源分配。


四、云原生数据库技术特性

1.无处不在的存算分离

云原生一直在努力实现无状态化,而实现的手段就是把数据层剥离出去!只不过在应用层,数据可以剥离给缓存、数据库、文件存储和消息队列,而数据库要云原生时就只能自己做存算分离了。像Apache Pulsar 给自己的定义是这样的:“Apache 软件基金会顶级项目,下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等流数据存储特性。”

而对于Pulsar的云原生特性则是这么描述的:“Pulsar使用计算与存储分离的云原生架构,数据从Broker搬离,存在共享存储内部。上层是无状态Broker,复制消息分发和服务;下层是持久化的存储层Bookie集群。Pulsar存储是分片的,这种架构可以避免扩容时受限制,实现数据的独立扩展和快速恢复”。

存算分离中计算的变化比较小,也更容易理解,不管是一开始的虚拟机,还是现在最常用的容器,计算部分都是为数据库提供算力,其最基本的资源是CPU和内存。一些“计算”还会用服务器本地盘作为缓存,但并不包括持久化数据。这也使“计算”不断接近云原生中对不可变基础设施的要求。

相对计算,存储的能力,形态则变化较大。但不管是对象存储,HDFS存储,KV存储,文件存储,还是像AWS那样提供了部分数据库存储引擎功能的“计算存储”,不管是自研的还是购买第三方存储,是云服务还是线下存储,存算分离中的存储始终承担着数据持久化的工作。这一点是理解存算分离的关键,也是存算分离的主要价值之一。

分离容易理解,但怎么切是有讲究的,它反映了需求,能力,甚至商业考量。 如果想让存储多做点事,可以切得狠一点,像AWS Aurora把日志引擎都切给存储了,如果想通用一些,也可以像阿里PolarDB那样正常地切,以至于底层换个存储也能用。如果想封闭圈子自己玩,就切给自己家存储,并且切完了还会连着一点点(封闭接口),公有云基本就是这种做法,如果不想自己研发存储,就切给通用存储,如果想卖存储,就按通用接口来切,华为,浪潮的大数据存储,腾讯的HDFS存储都是这个套路,这些都来自商业的考量。

2.提升效能的分布式

随着企业业务全面向数字化、在线化、智能化演进,企业面临着呈指数级递增的海量存储需求和挑战,业务有更多的热点和突发流量带来的挑战,企业需要降本增效,进行更智能的数据决策,传统的商业数据库已经难以满足和响应快速增长的业务诉求。
在架构创新上,我们将云原生与分布式结合起来,全新的云原生分布式架构的数据库具备了高扩展性、易用性、迭代快速、成本降低等特点,可以很好的帮助企业解决上述问题。未来数据库也将全面进入云原生加分布式的时代。具体来讲:

1. 高扩展性
云原生分布式数据库与底层的云计算基础设施分离,所以能够灵活及时调动资源进行扩容缩容,以从容应对流量激增带来的压力,以及流量低谷期因资源过剩造成的浪费。生态兼容的特点,也让云原生数据库具备很强的可迁移性。
2. 易用性
云原生分布式数据库非常易于使用,它的计算节点在云端部署,可以随时随地从多前端访问。因其集群部署在云上,通过自动化的容灾与高可用能力,单点失败对服务的影响非常小。当需要升级或更换服务时,还可以对节点进行不中断服务的轮转升级。
3 快速迭代
云原生分布式数据库中的各项服务之间相互独立,个别服务的更新不会对其他部分产生影响。此外,云原生的研发测试和运维工具高度自动化,也就可以实现更加敏捷的更新与迭代。
4 节约成本
建立数据中心是一项独立而完备的工程,需要大量的硬件投资以及管理和维护数据中心的专业运维人员。此外,持续运维会造成很大的财务压力。云原生分布式数据库以较低的前期成本,获得一个可扩展的数据库,实现更优化的资源分配。


五、Amazon Aurora云原生数据库

Amazon Aurora 是一种关系数据库服务,既有高端商用数据库的高速度和可用性,也有开源数据库的简单性和成本效益。Aurora 与 mysql 和 PostgreSQL 完全兼容,使现有应用程序和工具无需修改即可运行。
数据库免费试用链接及上手教程
云原生数据库在线大会

1.首个云原生数据库存算分离技术实践

亚马逊Aurora数据库是与 MySQL 和 PostgreSQL 兼容的关系数据库,专门为云原生而打造。在2014年,在AWS大会上,AWS就宣布推出Aurora。这是一个面向亚马逊关系数据库服务的兼容MySQL的数据库引擎,Aurora完美契合了企业级数据库系统对高可用性、性能和扩展性、云服务托管的需求。

2.工作原理

Amazon Aurora 提供内置的安全性、几乎连续的备份、无服务器计算、最高 15 个只读副本、自动多区域复制以及与其他 AWS 服务的集成。

3.庞大的技术生态

亚马逊数据库提供了覆盖面极广的服务,包括内容管理、企业资源管理、设备维护等,如下图所示:

无论客户有什么需求,总能在亚马逊云上找到成熟的应用,非常方便!
AWS在市场占有率上遥遥领先,是很多客户的选择,例如纳斯达克将分阶段把全部业务迁移到AWS上,并将美国的一个期权交易市场上云。纳斯达克跟AWS的合作,还将为纳斯达克分布在全球的130多个企业客户带来长远影响,这些客户包括交易所、银行、清算所等,并将在更大范围推动相关企业的上云。

4.使用案例

实现企业应用程序的现代化
运营具有高可用性、高性能的企业应用程序,如客户关系管理 (CRM)、企业资源规划(ERP)、供应链和计费应用程序等。

构建 SaaS 应用程序
通过灵活的实例和存储扩缩支持可靠、高性能且多租户的软件即服务 (SaaS) 应用程序。

部署全球分布的应用程序
开发互联网规模的应用程序,如移动游戏、社交媒体应用程序和在线服务,这些都需要多区域的可扩展性和弹性。

走无服务器之路
移交容量管理,只支付使用瞬时和精细扩缩所消耗的容量,从而节省高达 90% 的成本。


六、总结

可以看得出来,无论从功能的全面性和性能的卓越新,云原生数据库都处于碾压的态势,且Amazon Aurora在实现上更具有一定的亮点:

  • 高性能和高可扩展性
  • 高可用性和持久性
  • 高度安全
  • 完全托管
  • 迁移支持
  • 成本效益
  • 开发人员生产力
    一起加入进来使用吧~

七、文末福利

【粉丝福利】
亚马逊云科技专为开发者们打造了多种学习平台:

【专属福利】

以上是关于揭秘传统数据库转型云原生的迅猛趋势的主要内容,如果未能解决你的问题,请参考以下文章

云原生的数据云,下一个十年的数字化转型趋势

深度剖析——传统架构的云原生改造之路 | Techo大会精彩回顾第三期

第五期(2022-2023)传统行业云原生技术落地调研报告——金融篇

云原生安全趋势

云原生演进趋势下传统数据库升级实践

云原生演进趋势下传统数据库升级实践