有意思了!数据库也搞Serverless!
1
云数据库
云计算时代,相信很多人都用过云计算的产品,例如云数据库。
我们购买云数据库,需要指定固定规格,如2核4G ,然后按规格付费。
这有两个问题,一是规格不好确定,因为系统负载不好确定,到底使用大规格还是小规格呢?
二是如果确定了规格,在运行中发现规格太低/太高,就需要再人工发起扩容缩容请求,很麻烦。
我经常想:如果数据库能按负载状况,自动实现扩容缩容,那该多好!
最近参与了腾讯技术开放日Techoday的线上活动,有个专场讲的是云原生数据库TDSQL-C,听了个开头我就意识到:TDSQL-C已经把这个想法给实现了!
简单来说,TDSQL-C 能帮我们实现自动的数据库扩容缩容,并且完全按使用量付费,如果你放在那里不用它,完全不收费!
其实这就是云计算中的Serverless的思想:弹性、按使用计费,不需要运维。
使用Serverless产品就像使用水和电一样,打开开关即可使用。
TDSQL-C这个数据库产品也具备了Serverless的能力,它到底是怎么实现的?我又去深入研究了一下它的原理。
2
实现原理
首先,TDSQL-C把计算和存储做了分离,分离以后才可以对计算层做灵活的资源分配(扩容缩容),这是它实现Serverless的基础。
传统的数据库是这样的(以多个数据库做读写分离为例):
TDSQL-C把计算和存储分开后,变成了这样:
其次,在数据库架构上,要对计算层进行监控:
系统不断对计算层进行监控,如果没有请求,就把它暂停,实现了不用不收费。等到请求来了就恢复它,然后根据流量大小动态触发扩容/缩容,程序员完全不用操心细节。
在这种架构下,TDSQL-C就具备了三个非常好的特性:
自动扩缩容、按使用量付费和不用不付费。
3
自动扩缩容
这个特性对于公司来说特别友好,因为流量和负载总是不固定的,比如白天负载稳定,对CPU和内存的使用也相对稳定,到了晚上,需要运行一些慢查询,或者生成报表,对计算力的要求一下子就上来了。
如果我们购买大规格数据库,白天会产生浪费,购买小规格数据库,晚上又不够用,需要很小心地在成本和性能之间平衡,非常烦人。
TDSQL-C很贴心地让我们指定一个CPU和内存概况范围,例如最小规格1核2G,最大规格4核8G,剩下的事情我们就不用管了,它会根据你的算力要求动态扩容缩容。
扩容缩容速度很快,秒级完成,我们几乎感知不到。
但是,我们很容易想到一个问题,数据规格不确定,那怎么收费呢?
4
按使用量收费
答案自然是按使用量收费,具体的做法是每隔5秒采集一次CPU和内存的消耗,然后按照CCU(TDSQL-C Compute Unit)来收费,每小时出一次账单。
这个CCU的计算也很有意思,公式是:
CCU = max(CPU, 内存/2, 最小规格)
举个例子就明白了,例如你购买时指定的规格范围是[1核2G, 4核8G] ,公式中的最小规格为1。
相比大部分云数据库按一小时内最大的规格进行按量计费的方案,可以说是实现了非常精细化的计费方式,真是替我们这些用户省钱了。
还有更贴心的一点,系统实现了以任意单位的资源计费,用户用了 0.4 核那就按 0.4 来收费,而不是强制的“不足一核按一核收费”。
5
不使用不收费
如果我们的数据库在一段时间内没有任何连接,这时候还要收费吗?
对于常规的云数据库来说,购买以后,不管用不用,都是要收费的。
但是TDSQL-C实现了计算和存储的分离,对计算层可以实现自动启停,启动的速度可以达到秒级,那可以做的事情就多了。
如果我们的数据库实例10分钟内没有连接,就把实例暂停,回收计算节点,这时候就不再收费了。
当用户请求来了以后,可以迅速唤醒实例,提供服务。
这个特性对于一些低频访问的网站特别友好,例如个人博客,大部分时间是没人访问的,为啥还要给云数据库付费呢?没人访问就暂停数据库实例,不付费省点儿钱。有人访问了,马上把实例启动,用多少付多少,这实在太爽了。
还有一些公司的测试环境,中午吃饭的时候,晚上睡觉的时候,还有周末是没人用的,为啥还要掏钱呢?自动暂停,省点儿费用多好。
6
总结
TDSQL-C给数据库也赋予了Serverless的能力,可以像函数计算那样,自动扩缩容,多用多收费,少用少收费,不用不收费,具备了极高的弹性和精准的计费能力,代表了云数据库的发展方向。
我强烈建议大家有机会去尝试一下TDSQL-C,感受下这种低成本、非常灵活的云数据库服务。
7
写在最后
我参加的这次腾讯Techo Day,活动非常多,除了“像自来水一样使用”的云原生数据库,活动还分享了腾讯的Lighthouse、Serverless、微搭之类的明星技术原理、适用场景跟使用方式。
从灵活易用的TDSQL-C,开箱即用的Lighthouse,低门槛的AI开发...... 我能感受到腾讯云的理念:给开发者提供“化繁为简,轻而易用”的工具和产品,降低开发门槛,提高研发效率,让云服务普惠更多的人。
最后也整理成《腾讯云轻量级工具指南》的课件材料,有需要的同学可以点击“阅读原文” 或长按下方二维码下载,我觉得了解下各个厂商的技术路线,还是对工作很有帮助的,毕竟大的开发平台就这么几个~
有意思了!数据库也搞Serverless!相关推荐
- 阿里云数据库RDS MySQL Serverless测评
文章目录 1. 背景 2. 概念 3. 操作步骤 3.1 购买产品 3.2 配置RDS账号 3.3 设置网络访问权限 3.4 连接实例 4. 与自建数据库相比的优势 4.1 弹性设置 4.2 监控比较 ...
- 一道有意思的数据库题
create table stu (id char(20) PRIMARY key,score int,cno char(20) not null ); 问:选项中哪几个结果一样? A select ...
- 我ABAP开发生涯中搜集的一些有意思的数据库表
Magic tables CUS_IMGACH – IMG Activities RFCATTRIB – Administration table for RFC destinations SEOSU ...
- window下安装好postgreSQL 9.3用cmd命令进入数据库(搞的我这个菜鸟只剩半条命)...
linux下基本没什么问题,但在window操作系统下比较麻烦. 需要添加环境变量path路径:C:\Program Files (x86)\PostgreSQL\9.3\bin 添加postgres ...
- 麻烦你先搞懂这几个问题,简历再写熟悉数据库!!!
原创声明 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 本文思维导图 数据库和关系型数据库 作为一个程序员,不了解数据库怎么能行,那么数据库到底是个啥呢,作为一个Java工程师,平时和数据库 ...
- postgis数据库优化_国内首个 Serverless 数据库来了,技术架构全揭秘!
头图 | CSDN 下载自东方 IC本文为企业投稿 省却成本,缩短产品上市时间,减少运维与开发团队之间的摩擦是 Serverless 最核心的所在,从 AWS 发布「Lambda」让「Serverle ...
- 国内首个 Serverless 数据库来了,技术架构全揭秘!
头图 | CSDN 下载自东方 IC 本文为企业投稿 省却成本,缩短产品上市时间,减少运维与开发团队之间的摩擦是 Serverless 最核心的所在,从 AWS 发布「Lambda」让「Serverl ...
- 云原生技术新版图——无服务器(Serverless)数据库
前言 数据库的发展已走过近四十年,作为基础软件之一,数据库称得上是一个"古老"的领域.而随着新技术的涌现,这个传统的领域也正不断焕发出新的生机.如果说云时代的到来推动了数据库的变革 ...
- 开源数据库的国际化思考与实践
整理 | 小雨青年 出品 | CSDN(ID:CSDNnews) 在全球开源技术掌门人高峰论坛上,PingCAP 联合创始人兼CTO 黄东旭分享了<开源数据库的国际化思考与实践>. 开源已 ...
最新文章
- GDCM:获取dicom文件Sequence的长度的测试程序
- 开发人员如何成为架构师
- java简单计算器课程设计_简单计算器JAVA课程设计
- 通用crt更新不适用计算机,Office2016安装提示需要通用补丁CRT(KB2999226)
- 使用JavaScript删除HTML元素
- Ubuntu 20.04(Linux Mint XFCE 20)安装LBP2900打印机
- Matlab 常用快捷键
- aardio - f()函数通过变量名将变量值整合到一串文本中
- ES性能优化原理揭秘!初看一脸懵逼,看懂直接跪下。。。
- MySQL函数计算24小时平均浓度对应的IAQI和AQI
- Kubeadm init报错解决
- SpringBoot单元测试指定运行环境
- Java微信公众平台开发之获取地理位置
- JSP页面查询显示常用模式 (附源代码)
- 微机原理—可编程计数器/定时器8253概念详解
- Python 机器学习实战 —— 监督学习(上)
- ASP.NET 数据绑定详解 代码+步骤
- android联系人索引
- 百度商业系统大规模微服务分布式监控实践
- 德温特专利耦合与直接引用分析视频教程完整版