云原生数据库如荼如火,未来可期

亚马逊云科技提供了100余种产品免费套餐。其中,计算资源Amazon EC2首年12个月免费,750小时/月;存储资源 Amazon S3 首年12个月免费,5GB标准存储容量;数据库资源 Amazon RDS 首年12个月免费,750小时;Amazon Dynamo DB 25GB存储容量 永久免费。
【打点链接】
https://aws.amazon.com/cn/free/?nc2=h_ql_pr_ft&all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc&awsf.Free%20Tier%20Types=*all&awsf.Free%20Tier%20Categories=*all&trk=e0213267-9c8c-4534-bf9b-ecb1c06e4ac6&sc_channel=el

一、云原生数据库解读

1.1 什么是云原生

一种基于容器构建的微服务应用,通过持续交付的方式部署在弹性的云基础设施之上的理念 。
云计算领域及安全领域的专家学者普遍认同,云原生是更加安全、普惠的新兴模式。
实际上,云原生是一条最佳路径或者最佳实践。更详细的说,云原生为用户指定了一条低心智负担的、敏捷的、能够以可扩展、可复制的方式最大化地利用云的能力、发挥云的价值的最佳路径。
在这里插入图片描述
云原生是为云而生的一套架构,在之前的虚拟机时代,并没有把云的价值发挥到最大,而云原生做到了。
一是从技术特征来看,云原生拥有极致的弹性能力、服务自治、故障自愈能力和大规模可复制能力;
二是从应用价值方面来看,云原生异构资源标准化,加速了数字基础设施解放生产力,提升业务应用的迭代速度,赋能业务创新方面有重要价值;
三是从产业效用来看,云原生极大的释放了云的红利,成为驱动业务的重要引擎。

1.2 什么是云数据库

云原生数据库,是一种通过云平台进行构建、部署和分发的服务。这种云原生属性是他相比于其他类型数据库最大的特点。作为一种云平台,云原生数据库以PaaS(平台即服务, Platform-as-a-Service)的形式进行分发,经常被称作DBaaS(数据库即服务, DataBase-as-a-Service)。用户可以将该平台用于多种目的,例如存储,管理和提取数据。
随着云计算的蓬勃发展,IT 应用转向云端,云服务出现如下若干特点:

  1. 提供按需服务。
  2. 用户只愿支付运营费用而不愿支付资产费用。
  3. 云服务提供商集群规模越来越大,甚至遍布全球,集群达到云级规模(Cloud-Scale)。
    根据以上特点,要求云产品需要提供一定 “弹性”(Elastic),而且达到云级规模;节点故障如同 “噪声” 一样不可避免,这又要求云服务有一定的 “自愈”(Resilience)能力。
    起初,通过借助 IaaS,直接将传统的数据库 “搬迁” 到云上,于是出现了关系型数据库服务(RDS)。这样虽然能部分实现 “弹性” 与 “自愈”,但是这种方案存在资源利用率低,维护成本高,可用性低等问题。于是,设计适应云特点的云原生数据库就至关重要。
    为了解决以上问题,需要针对云上服务的特点,改造或者开发新一代云数据库,这便是云原生数据库。

在这里插入图片描述

1.3 云数据库VS传统数据库

云原生数据库通常通过在云基础设施之上安装数据库软件来实现,这种方式使得云原生数据库具备了传统数据库所不具备的直接访问性和运行时可伸缩性。
云原生数据库相比传统数据优势如下:
(1) 易处置性简单来讲,易处置性是指数据库在无需事先通知的情况下,即时处理崩溃或启动进程的能力。尽管现在有先进的技术,但是像磁盘故障、网络隔离故障,以及虚拟机异常等,仍然不可避免。
(2) 对于传统数据库,这些故障尤其有害,因为用单个机器运行整个数据库,即便一个很小的问题都可能影响所有功能。而云原生数据库的设计具有显著的易处置性,即允许虚拟机在即时通知下立即重启或重新调度。实际上,易处置性已从单个虚拟机扩展到了整个数据中心。随着我们的环境持续朝着更加稳定的方向发展,云原生数据库将发展到对此类故障无感知的状态。
(3) 增强的安全性DBaaS运行在受高度监控和安全的环境里,受到反恶意软件、反病毒软件和防火墙的保护。除了全天候的监控和定期的软件升级以外,云环境还提供了额外的安全性。相反,传统数据库容易遭受数据丢失和被不受限制的访问。基于服务提供商通过即时快照副本提供的数据能力,用户可以达成“RPO=0,RTO<60秒”的目标。
(4) 可扩展性能够在运行时进行按需扩展的能力是任何企业成长的先决条件。因为这种能力让企业可以专注于追求商业目标,而不用担心存储空间大小的限制。
(5) 传统数据库将所有文件和资源都存储在同一主机中,而云原生数据库则不同,他不仅允许你以不同的方式存储,而且不受存储问题的影响。
(6) 更好的可访问性传统数据库最重要的限制之一,是他只能通过连接数据库系统本身进行访问。而云原生数据库提供对数据库全天候的访问,以便你随时进行任何修改,而你只需要一个可以访问internet的计算机。这样一来,就消除了可能发生的潜在的延迟,同时也为多个开发人员之间的协作开辟了途径。
(7) 显著的成本节约建立一个数据中心是一项独立而完备的工程,需要大量的硬件投资,还需要能可靠管理和维护数据中心的训练有素的运维人员。此外,持续的运维会给你的财务带来相当大的压力。而使用云原生的DBaaS平台,你可以以较低的前期成本,获得一个可扩展的数据库,这可以让你腾出双手,实现更优化的资源分配。
云最开始受益的就是应用端,传统架构下曾经以“天”为单位的扩容,云端能实现“秒级”扩容,降低软硬件成本的同时,提高了系统的快速扩容能力,以应对像“双十一”这种可预见且短时间的请求量高峰。但是有些云端应用还是访问传统的数据库架构,数据库层没得到云端的实惠。现在这种云原生数据库,就解决了这问题,计算和存储分离,让数据库资源能从云端得到灵活扩容、故障快速恢复、更高的可靠性、数据快速迁移等,更快满足业务的各种需求。

二、云数据库技术

市面常见的云数据库产品如下,接下来我介绍下云数据库的一些核心技术
在这里插入图片描述

2.1 容器化技术

容器有着一个非常重要的作用就是保证代码运行环境的一致性。容器通过为应用程序打包和部署提供轻量级、不可变的基础结构来解决应用程序移动到其他环境就无法正常运行的问题,将应用程序或服务、其依赖项及其配置打包为容器映像。容器技术为开发人员和 IT 专业人员只需做出少量修改,甚至不需要进行任何修改,即可跨环境部署应用程序,使用非常方便。

在这里插入图片描述
容器平台的最终目标其实是屏蔽分布式系统的资源管理细节,提供分布式应用的标准运行环境,同时定义一种分布式应用的 package,对开发者来说降低分布式系统的开发成本,对用户来说降低分布式应用的维护成本,对厂商来说降低分布式应用的分发成本,也就是 DataCenter OS 或 Distributed OS,可简称 DCOS。
也就是说,仅仅把数据库弄成容器镜像,这仅仅是第一步,是为了后面的目的服务的。有了这一步,才有可能依托容器编排调度系统封装更高级的通用服务。
有了这种能力后,运维的经验就可以沉淀成代码,积累成具体的工具和服务。软件的价值在于复用,可复用的频次越高范围越广,产生的价值越大,越值得投入。比如 RDS 这种服务,研发本身的复杂度本来不高,关键在对各种异常情况的处理方案的经验积累。一个公司遇到的异常状况肯定有限,只有放在社区中逐渐积累改进才会逐渐完备。IaaS 云的 RDS 的优势其实也是这一点,积累了云上的各种用户的各种使用场景和异常处理经验,无论是业务增长还是错误使用带来的异常。前两天 Instapaper 由于MySQL数据文件过大、达到 ext3 的 2TB 文件大小限制,而导致其数据库故障,业务中断31个小时,用的就是 AWS 上的 RDS 。虽然使用 RDS 并不能避免故障,但经过这次故障之后,AWS 肯定会改进 RDS, 将这种故障的应对经验沉淀到产品中去,其他用户就可以避免再次踩坑了。
当然,只是有了标准化的运行环境,并不一定能带来丰富的应用,还得依赖商业模式。这种基础设施服务原来的商业模式基本只能是 on-premise 私有部署模式,销售和实施成本非常高。企业应用领域是否可能出现一个类似于 Apple 的 AppStore 的市场来降低销售和实施成本? 这方面很多厂商都在尝试,各容器平台都在尝试推出自己的应用规范,IaaS 厂商也在考虑提供声明式的编排 API,让渡出基础设施服务,由第三方实现(比如 QingCloud 即将发布的 AppCenter)。如果这个商业模式成熟,不仅独立的基础设施服务以及中间件公司会涌现出来,同时各公司的基础研发部门可能会从原来的支撑部门,变为 2B 业务的营收部门。

2.2 存算分离

在这里插入图片描述

2.2.1 关于存算分离的划分

其实上存储和计算的边界其实是不清晰的,计算过程中计算和存储实际上是分离不开的,不过网络带宽和性能提升的当下,提供了一定程度分离的讨论基础。计算”就是计算过程需要的CPU和内存等,“存储”是需要持久化的东西

2.2.2.为什么要计算和存储分离

  • 无论是计算先达到瓶颈,还是存储先达到瓶颈,两种状况虽然不同,时间点也不一致。但通常不管那种情况都是加机器,因此就会存在不少浪费。
  • 扩展不容易:计算和存储耦合模式下,存储扩展通常迁移大量数据,不方便。

2.2.3 存算分离的好处

通过分离存储资源、计算资源,可以独立规划存储、计算的资源规格和容量。这样计算资源的扩容、缩容、释放,均可以比较快完成,并且不会带来额外的数据搬迁的代价。存储、计算也可以更好的结合各自的特征,选择更适合自己的资源规格和设计。

三、云数据库趋势

3.1 未来的云原生分布式数据库

随着企业业务更加数字化、智能化,企业面临的数据存储量将会更加巨大,面临着更多突发状况带来的挑战。据IDC预测,2025年,三分之二的企业将会每天都发布软件版本,通过敏捷的开发能力来实现创新与交付,以形成差异化的市场竞争力。
在这样的商业趋势下,数据库就需要全面进入云原生+分布式的时代,实现智能升级,充分释放云计算红利。
所谓的分布式,是面向业务扩展而出现的一个概念,而分布式数据库,就是为了解决存储可扩展性的一类数据库。
它是由多个相互连接的数据库组成,这些数据库分布在各个数据中心,通过中央服务器进行通信,然后组合在一起形成一个面向用户的单个数据库。基于Shared Nothing的架构,分布式数据库能够实现数据的水平分片、水平扩展。而云原生数据库是基于Shared Everything + Shared Storage 的存储计算分离架构,能够实现资源池化高效管理。因此,云原生数据库的优势+分布式数据库的效率,可以将两者的特性完美结合,代表了一种未来的解决方案。事实上,云原生和分布式如今已经融为一体。如果底层基础设施全部云化,人们思考技术问题的角度自然变成“云原生”角度。
未来将云原生与分布式结合起来,全新的云原生分布式架构的数据库将具备高扩展性、易用性、迭代快速、成本降低等特点,具体而言:

3.1.1 高扩展性

云原生分布式数据库与底层的云计算基础设施分离,所以能够灵活及时调动资源进行扩容缩容,以从容应对流量激增带来的压力,以及流量低谷期因资源过剩造成的浪费。生态兼容的特点,也让云原生数据库具备很强的可迁移性。

3.1.2 易用性

云原生分布式数据库非常易于使用,它的计算节点在云端部署,可以随时随地从多前端访问。因其集群部署在云上,通过自动化的容灾与高可用能力,单点失败对服务的影响非常小。当需要升级或更换服务时,还可以对节点进行不中断服务的轮转升级。

3.1.3 快速迭代

云原生分布式数据库中的各项服务之间相互独立,个别服务的更新不会对其他部分产生影响。此外,云原生的研发测试和运维工具高度自动化,也就可以实现更加敏捷的更新与迭代。

3.1.4 节约成本

建立数据中心是一项独立而完备的工程,需要大量的硬件投资以及管理和维护数据中心的专业运维人员。此外,持续运维会造成很大的财务压力。云原生分布式数据库以较低的前期成本,获得一个可扩展的数据库,实现更优化的资源分配。

3.2 数字化转型趋势

数据量越庞大,数字化转型的意义也就越大,但转型这件事与企业内部多个技术部门紧密相关,它不是某一个单独的团队能够独立完成的任务,而是需要企业的业务部门、数据资产管理、开发应用等更多部门协同合作,因此,越是大型企业数字化转型的难度就越复杂。企业需要打破传统烟囱式架构设计,用全新的数据云模式来实现数字化转型。
企业未来 5-10 年的数字化转型之路,唯有以数据为核心,实现数据的互联互通,才能不断重构和升级数字化基础设施的建设新模式,以此作为创新与变革的支撑,实现企业数字化转型的升级和迭代,数据从记录到价值的全生命周期流程如下:
在这里插入图片描述

3.2.1 与大数据融合

对于大数据技术,已经从数据的统一归集到了大数据 3.0 模式,从数据资产到价值再到数据服务化。而现在对基础设施的要求就是能通过一套云原生的基础设施去承载企业的不同应用,收集企业的所有数据,进行企业数据化转型的大数据底座的建设。
数据是企业非常重要的生产要素,数据和数据价值的演进也经过了四个阶段:通过数据仓库和数据库对数据进行统一收集整理的数据统一化阶段、通过数据治理形成高质量数据的数据业务化阶段、通过数据智能与分析实现数据资产化的阶段以及通过数据共享交易实现数据的生态化阶段。

3.2.2 数据云

随着技术的进步和业务需求演进,企业的应用、数据、基础设施都在不停地迭代,这种迭代也促使数据云从概念走向落地。星环基于云原生的数据云 TDC 实现了数据 PaaS、应用PaaS、分析 PaaS 三云融合,未来企业的开发人员,就可以在这个标准化的 PaaS 服务之上完成 SaaS 应用的开发,而这也是将来 5-10年企业数字化基础设施建设的新模式。

四、Amazon云数据库

Amazon云数据库包括以下:

  • Amazon RDS:云中的关系数据库
  • Amazon SimpleDB:云中的键值数据库
  • Amazon DynamoDB:云中的NoSQL数据库
  • Amazon Redshift:云中的数据仓库
  • Amazon ElastiCache:云中的分布式内存缓存
    在这里我介绍下Amazon DynamoDB,具备快速、灵活的 NoSQL 数据库服务,可在任何规模下实现个位数毫秒级的性能。

4.1 工作原理

Amazon DynamoDB 是一种完全托管式、无服务器的 NoSQL 键值数据库,旨在运行任何规模的高性能应用程序。DynamoDB 提供内置安全性、连续备份、自动多区域复制、内存缓存和数据导出工具。

在这里插入图片描述

4.2 使用案例

1)开发软件应用程序
构建支持用户内容元数据和缓存的互联网级应用程序,这些应用程序需要满足数百万用户的高并发性和连接,以及每秒数百万个请求。
2)创建媒体元数据存储
为媒体和娱乐工作负载(例如实时视频流和交互式内容)扩展吞吐量和并发性,并通过跨 AWS 区域的多区域复制提供更低的延迟。
3)提供无缝的零售体验
使用设计模式来部署购物车、工作流引擎、库存跟踪和客户档案。DynamoDB 支持高流量、极端规模的事件,每秒可以处理数百万次查询。
4)扩展游戏平台
无需运营开销,专注于推动创新。使用玩家数据、会话历史记录和数百万并发用户的排行榜构建您的游戏平台。

五、总结

大数据时代,数据量不断爆炸式增长,数据存储结构也越来越灵活多样,日益变革的新兴业务需求催生数据库及应用系统的存在形式愈发丰富,这些变化均对数据库的各类能力不断提出挑战,推动数据库技术不断向着模型拓展、架构解耦的方向演进,与云计算、人工智能、区块链、隐私计算、新型硬件等技术呈现取长补短、不断融合的发展态势。云数据库的产生解决了这些问题,未来的云原生分布式数据库,数字化转型趋势,容器化技术将进一步开启企业数字化基础设施建设的新模式,云原生数据库如火如荼,未来可期。

粉丝福利

亚马逊云科技专为开发者们打造了多种学习平台:

  1. 入门资源中心:从0到1 轻松上手云服务,内容涵盖:成本管理,上手训练,开发资源。https://aws.amazon.com/cn/getting-started/?nc1=h_ls&trk=32540c74-46f0-46dc-940d-621a1efeedd0&sc_channel=el
  2. 架构中心:亚马逊云科技架构中心提供了云平台参考架构图表、经过审查的架构解决方案、Well-Architected 最佳实践、模式、图标等。
    https://aws.amazon.com/cn/architecture/?intClick=dev-center-2021_main&trk=3fa608de-d954-4355-a20a-324daa58bbeb&sc_channel=el
  3. 构建者库:了解亚马逊云科技如何构建和运营软件。
    https://aws.amazon.com/cn/builders-library/?cards-body.sort-by=item.additionalFields.sortDate&cards-body.sort-order=desc&awsf.filter-content-category=*all&awsf.filter-content-type=*all&awsf.filter-content-level=*all&trk=835e6894-d909-4691-aee1-3831428c04bd&sc_channel=el
  4. 用于在亚马逊云科技平台上开发和管理应用程序的工具包:
    https://aws.amazon.com/cn/tools/?intClick=dev-center-2021_main&trk=972c69e1-55ec-43af-a503-d458708bb645&sc_channel=el

【专属福利】
福利一:100余种产品免费套餐。其中,计算资源Amazon EC2首年12个月免费,750小时/月;存储资源 Amazon S3 首年12个月免费,5GB标准存储容量。
https://aws.amazon.com/cn/free/?nc2=h_ql_pr_ft&all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc&awsf.Free%20Tier%20Types=*all&awsf.Free%20Tier%20Categories=*all&trk=e0213267-9c8c-4534-bf9b-ecb1c06e4ac6&sc_channel=el
福利二:最新优惠大礼包,200 数 据 与 分 析 抵 扣 券 , 200 数据与分析抵扣券,200 200机器学习抵扣券,200$微服务与应用开发抵扣券。https://www.amazonaws.cn/campaign/?sc_channel=el&sc_campaign=credit-acts-ldr&sc_country=cn&sc_geo=chna&sc_category=mult&sc_outcome=field&trkCampaign=request-credit-glb-ldr&trk=f45email&trk=02faebcb-3f61-4bcb-b68e-c63f3ae33c99&sc_channel=el
福利三:解决方案CloudFormation一键部署模版库
https://aws.amazon.com/cn/quickstart/

猜你喜欢

转载自blog.csdn.net/weixin_41645135/article/details/125417507