什么是云原生数据库(Cloud Native Database)?
突然间,云原生数据库就火了。
根据IDC《2021年下半年中国关系型数据库软件市场跟踪报告》显示,2021下半年中国关系型数据库软件市场规模为15.8亿美元,同比增长34.9%,其中,公有云关系型数据库规模8.7亿美元,同比增长48.7%。Gartner 数据显示,2020 年全球企业数据库市场规模达 648 亿美元,其中90%的企业数据库市场规模增量来自云原生数据库,2020 年云原生数据库市场规模增长率超 50%。
什么是“云原生”?
作为一个正在蓬勃发展的新兴技术,随着云原生的不断发展,关于它的定义可谓是百花齐放。
在2015年,谷歌与Linux基金会联合创办了非盈利组织:云原生计算基金会(Cloud Native Computing Foundation, CNCF),成立初衷为推广孵化和标准化云原生相关的技术。根据云原生计算基金会的描述,Cloud Native的定义如下:
云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。
通过上面的定义,我们可以看到云原生概念提出的大背景其实是针对应用层的,即我们常说的“云原生”是“云原生应用”,而非“云原生数据库”。于是很多非数据库领域的技术人事会将“云原生数据库”拆解为“云原生”+“数据库”,甚至提出基于容器部署的数据库才是“云原生数据库”,这是一个常见的错误认识。
那么什么是“云原生”的数据库,它是不是“云上的数据库”呢?
云原生数据库≠云上数据库
随着概念的热炒,很多数据库把软件搬迁到云上便声称为“云原生数据库”。我们还是要区分一下,云原生数据库≠云上数据库。
要想了解什么是云原生数据库,我们要知道云原生数据库产生的背景。
近年来的数字化转型使数据的处理和存储发生了巨大变化。这既是商业逻辑的变化,也是以用户体验为中心的转变。全球各地的企业处理着比以往更多的数据,迫切需要灵活、实用并且可靠安全的数据库解决方案。大量的技术正在有效地利用云,并在这个过程中改变我们所有人的业务方式和生活方式,比如,突如其来的疫情使得在线会议会成为商业世界各个组织沟通的“新常态”。
因此,云原生数据库是一种通过云平台构建、部署和交付的数据库服务,可提供可扩展的、可靠的数据库解决方案。云数据库是一个作为服务的云平台,这种模式允许组织、最终用户及其各自的应用程序在云上存储、管理和检索数据。
与应用层面相似但却不同,应用层云原生将数据剥离给缓存、数据库、文件存储和消息队列,而数据库的云原生只能将数据库本身进行存储和计算分离,存算分离架构是满足数据库弹性扩展的重要和必要条件。只有具备弹性扩展能力才能充分利用云技术的优势,因此弹性可扩展是云原生数据库的本质。云上的无限资源为数据库扩展至成千上万个节点成为可能,而只有计算存储分离架构才能将这种可能变成现实。
“原生”表示数据库的架构从设计之初就考虑到云的环境,原生为云而设计,在云上以最佳态势运行,充分利用和发挥云平台的弹性+分布式优势。所以说,云原生架构的本质是存算分离技术。如果只是把传统数据库搬到云上,而不从架构上进行优化,就不是真正的“云原生”的数据库。
云原生数据库的价值
说了这么多,那么,基于云原生架构的数据云平台会为企业带来哪些价值呢?
我们可以概括为四个方面:降低技术门槛、减少维护成本、提升用户体验、节省资源费用。
降低技术门槛:无论是自建机房还是使用公有云,都离不开底层大数据技术,大数据技术俨然成为了企业的标配技能,然而并不是每个企业都能组建专业的人才团队,尤其是一些传统行业和中小企业。像集群性能调优等较为硬核的能力,更是很多已经搭建数据平台的企业所缺失的。云原生技术使得 dbPaaS 为企业提供更好的数据平台服务,正如 Snowflake 所倡导的:用户不需要调优,只要按需设置性能参数。 减少维护成本:即便勉强跨过技术门槛,全方位的运维也是需要企业投入大量精力和资源的。技术运维主要包括但不限于: 集群搭建 集群扩缩容 日常运维 监控告警等
而这些其实都可以作为服务从云上的供应商获得。
提升用户体验:假如一个分析查询使用 10 个节点需要跑 1 个小时得到查询结果;如果将计算节点扩大 10 倍至 100 个节点的话,同样一个查询则只需要跑 6 分钟。这两种配置在公有云按量计费模式下的成本是相同的,但是用户的体验和效率却可以提升 10 倍。 节省资源费用:首先我们先要清楚资源是怎么浪费的,这主要来自两个方面: 数据不断增长让技术负责人不得不为今后的数据管理留出资源冗余,在数据规模接近资源边界之前,企业的资源都一直处于未完全利用的状态,这就造成了早期投资的浪费,而当企业数据规模或者应用场景增多,往往是计算资源提前耗尽而无法有效支持业务场景; 另一方面,即便在一段时间内数据规模和应用场景变化不大,不同时段的资源利用水平和需求也不一样,比如白天和夜晚、工作日和休息日,平台资源都处于不同程度的闲置状态。
因此,节省资源费用必然要从弹性扩容缩容出发,云原生技术在弹性方面具备天然优势,这也是为什么国外各大云厂商和独立数据库厂商都提供了云原生数据库。
云技术和数据库的融合,正在突破过去基于物理服务器部署的传统数据库存在的高成本、低效率、稳定性差等诸多问题,为用户提供高弹性、分布式、低成本的使用体验。
云原生数据库中的模范生 - OushuDB
新一代极速云数据库OushuDB 由偶数科技自主开发,偶数科技的核心研发团队曾主导国际顶级的数据库开源项目。依托与OushuDB的云原生特性、计算存储分离架构、强事务特性、完整SQL标准支持、高性能并行执行能力等一系列底层技术的变革,可以实现高弹性、高性能、强扩展性、强兼容性等上层技术的变革,最终帮助企业有效应对大规模、强敏态、高时效、智能化的趋势,轻松构建核心数仓、数据集市、实时数仓以及湖仓一体数据平台。
相对于其他传统数据库厂商,OushuDB 有非常多的优势,其中Top3为:
弹性。OushuDB 包含计算层和存储层,存储和计算分离,可以独立扩容。一个 OushuDB 的计算层有多个 OushuDB 主节点,内部包含了资源管理服务等。 高性能。基于领先的性能优化技术打造的世界上最快的分析型数据库。具有极速执行器,提供PB级数据交互式查询能力,比传统数仓/MPP快5-10倍,比Hadoop SQL引擎要快5-30倍。 云中立。支持 AWS、Azure、阿里云、腾讯云、金山云等大厂的统一数据管理方案,也可结合私有云进行混合管理。不同于Snowflake只提供公有云领域的云原生服务,偶数科技的云原生架构既能够满足公有云、也能够支持私有云服务,尤其对于国内市场如今依旧占比较高的私有云领域,偶数科技也可以提供优秀的支持。
OushuDB 还有很多其他的特性,大部分都是为了提高资源利用率,进而为客户降本增效。偶数科技认为,一个优秀的云原生数据库应该具备良好的弹性扩展能力,而“是否做到存储和计算的完全分离”以及“产品执行引擎是否完全弹性”是判断一个云原生数据库的基本标准。只有具备这两点,一款数据库产品才能称得上真正发挥了上云的优势,才可以将数据和云更好地融合在一起,就可以说自己做好了云原生”。