写点什么

云上数据库类产品的模式与发展趋势

用户头像
韩超
关注
发布于: 2020 年 05 月 21 日
云上数据库类产品的模式与发展趋势

摘要:

数据库类的产品是各个云上面标准的产品,本文通过华为云、金山云、腾讯云、阿里云几种国内的主流云上面的数据库产品,介绍云上数据库类产品的现有模式、未来发展趋势。


云上数据库类产品的目标


云上产品的大目标是帮助客户多、快、好、省地构建自身的系统,云上数据库也是大目标中的一个部分。


云上数据库可以分成几个层次:

  • 基本目标:云上服务必不可少的组成部分,如果没有本云功能就不完备,因此 MySql、Redis 等基础产品都是要有的;

  • 特色功能:为客户提供本云的特色功能,丰富本云的生态,比如:【某种场景中】性能更高、成本更低、使用更灵活;

  • 增值功能:在互联网应用之外,提供增值的服务,比如大数据场景的分析功能;


MySql 关系型数据是个各个云标配中的功能,凡事海豚的标志就是代表 MySql。


Redis 代表了 No-Sql,也代表了缓存类的主流库,基本也是各个云上面标配。



在云上面,基本的产品分成几类,它们都是组成的一个基本互联网应用的所需要的:

  • 第 1 类:跑用户应用的云服务器,按 IaaS 资源计费;

  • 第 2 类:容器平台。一般是 kubernetes 的平台,以当软件附赠服务为主;

  • 第 3 类:网络(LB、私有网络)、存储(文件存储、CDN)等:必要配套设施,也按资源收费,但计量方式很多;

  • 第 4 类:数据库类,用户应用所依赖的,属于必备设施;

云上数据库类产品的种类


云上数据库类产品的种类,大致可以如此划分:

  • 关系型数据库(SQL 类)

  • 非关系型数据库 (NO-SQL 类)

  • 其他

前两类一般属于标配,除此之外,类似队列有的时候也被归为数据库产品,这其实是由于它们的产品模式比较类似。


华为云、金山云、腾讯云、阿里云当中数据类的产品,大致也是大同小异,属于符合某一个分类。


华为云的数据库产品被称之为 DBS, 子产品按照关系型数据库、非关系型数据库、数据库生态分成三类。



金山云的数据库类产品大约是下面样子。


腾讯云的数据库类产品统称为 TencentDB(腾讯云数据库),开源的、自研的均有,还有一体机的方案。


阿里云的数据库方案分成关系型数据库、NoSQL 数据库、数据仓库、数据库工具几个类型,产品的形态比较丰富。


运作模式


云上的数据库产品,并非一个“裸”软件,它是运行于别人云环境中运行一个完整系统,包括了各种配套的设施。正因如此,在云上的数据库,是否开源并不重要、也相差不大,因为核心的数据库软件所占比较较小。

云上的数据库产品往往提供比较丰富的文档,甚至包括一些参考案例。从客户的角度,可以从以下的几个角度去把握:

  • 创建流程:一般有特定控制台

  • 部署方案:实例结构、主从结构、集群模式、分片模式等

  • 工具和 API:备份、恢复工具、迁移、配置管理、监控、日志、可视化

  • 计费模式:提前租用、按需付费

  • SLA 定义:可用性保证、服务赔偿条款等

如果是与开源有对标的数据库,还需要看一些版本的兼容性,由于数据库产品的性能与成本密切相关,因此在云上面往往是同一个产品可以提供多种模式。


API 则是云上数据库产品的第一个抓手,可以了解这个数据库产品有哪些功能。


下面是华为云的 Redis 产品的 API。


下面是腾讯云的 Redis 产品的 API。



作为 Redis 产品 API,其实本身与 Redis 关系不大,却是与管理等配套的功能。


选型模式是云上数据库产品的第二个基本抓手,可以了解这个产品在云上面的形态是什么。


比如下面是阿里云的 MySql 选型指南,这里面包括了 4 种模式,这本身是性能、功能和付费的平衡。


基本场景


云上数据库类产品的基本场景就是互联网应用,它的模式一般是这样的:

  • 云数据库一般在本家云使用

  • 服务于运行于云服务器(无论用不用容器)上面的各种应用;

  • MySql 类的产品做主存储;Redis 类的东西做缓存;

  • 往往需要配上负载均衡等配套产品;


下面是华为云的互联网应用场景。



下面是金山云的通用业务场景架构。

下面是腾讯云的互联网-移动 App 应用场景。


下面是阿里云网站高性价比场景(MySql)。


以上几家云对于基本数据库产品的使用,可谓是大同小异,MySQL、PostgreSQL、Redis、Memcache 等产品的使用模式也比较类似。

拓展场景


正如前面所说,云上数据库产品的基本场景是“服务互联网应用”,它本身是客户自己写的应用的一个依赖环节。

除此之外,云上数据产品还有一些拓展场景,这些场景或者是对客户提供直接的功能,或者是让某部分的性能变好。


直接对外提供服务:如物联网

数据库类产品在传统的模式中,只对本云里面的应用提供访问服务,但是在某些时候,也有对外直接提供服务的场景。

下面是华为云的 Kafka 的物联网应用场景。


下面是腾讯云的 CTSDB 的物联网监控服务提供的场景。


由于物联网的设备对于本云来说属于外部,因此以上两个物联网的场景,都是通过云上面数据库类的产品直接对外提供服务。


提供分析服务:如大数据

在大数据场景中,数据库类的产品其实可以直接对外提供分析服务。这种服务本身是有价值的,可能与传统的库结合在一起使用,也可能是独立使用。

例如阿里云的云原生数据仓库 AnalyticDB MySQL 版、针对 OLAP、BI 等场景提供服务。


内部产品的公有云版

在公有云上面,还存在着一种情况,有一些非开源、非标品的产品存在,它们从功能上可能与标品也有重叠,甚至看起来并没有什么存在的必要。

这些产品非常有可能是内部产品的公开版,比如腾讯、阿里这些公司,它们本身也是互联网应用的提供者,它们内部的一些数据库产品,可能通过了改造,上到了它们公有云上面,给用户多一种选择。


用户头像

韩超

关注

还未添加个人签名 2017.10.20 加入

还未添加个人简介

评论

发布
暂无评论
云上数据库类产品的模式与发展趋势